Skip to main content

Posts

Showing posts from August, 2017

Columnar Transposition Cipher

Columnar Transposition Cipher Introduction  The columnar transposition cipher is a fairly simple, easy to implement cipher. It is a transposition cipher that follows a simple rule for mixing up the characters in the plaintext to form the ciphertext. Although weak on its own, it can be combined with other ciphers, such as a substitution cipher, the combination of which can be more difficult to break than either cipher on it's own. The  ADFGVX cipher uses a columnar transposition to greatly improve its security. Example  The key for the columnar transposition cipher is a keyword e.g.  GERMAN . The row length that is used is the same as the length of the keyword. To encrypt a piece of text, e.g. defend the east wall of the castle we write it out in a special way in a number of rows (the keyword here is  GERMAN ): G E R M A N d e f e n d t h e e a s t w a l l o f t h e c a s t l e x x In the above example, the plaintext has been padded so that ...

Digital Signal Processing - Circular Convolution

Convolution Convolution is a mathematical way of combining two signals to form a third signal. It is the single most important technique in Digital Signal Processing. Using the strategy of impulse decomposition, systems are described by a signal called the impulse response. Convolution is important because it relates the three signals of interest: the input signal, the output signal, and the impulse response. This chapter presents convolution from two different viewpoints, called the input side algorithm and the output side algorithm. "Circular convolution The  circular convolution , also known as  cyclic convolution , of two aperiodic functions (i.e.  Schwartz functions ) occurs when one of them is  convolved in the normal way  with a  periodic summation  of the other function. That situation arises in the context of the  Circular co nvolution theorem .  The identical operation can also be expres...

How To Clear or Remove Elements From a list in Python

How To Clear or Remove Elements From a list in Python Sometimes When We add Elements in a list it becomes Troublesome to remove elemnts from the list so that we can use them again in our code or console. So to remove Elements from a list there are 3 ways 1)Re initialization of List 2)Using Pop function 3)Using del function 4)Using Remove function 1)Re initialization Reintialing the list clears up the whole list for reuse of the elements or variables so if my list is full of elements eg. A=[1,2,3,4,5,6] and i want A as an empty list we simply re initialize a list A=[] gives us an Empty list which clears up the whole variable 2)Pop function It removes the last element if unspecified or removes the specified indexed element from a list or array so if my list is full of elements eg. A=[1,2,3,4,5,6] A.pop() 6 numbers = arr.array('i', [10, 11, 12, 12, 13]) print(numbers.pop(2)) # Output: 12 print(numbers) # Output: array('i', [10, 11, 13]) T...

Column Wise Multiplication of Two matrix in python

Tutorial for Column Wise Multiplication of Two matrix by lists in python suppose we want to multiply two lists of different lengths in python how to do it? Well there are many ways of Doing it from itertools we can use map but it multiples lists of equal length only using numpy but creating numpy arrays are not so useful it includes complicated stuff here ill show you  can do it simply using logic Suppose i have a 2d array and i want to multiply it column wise [ 1 2 3  ]     [1]     [1, 4, 7] [  4 5 6 ] *  [2] =  [2, 5, 8] [  7 8 9 ]     [3]     [3, 6, 9] So in python we create a list inside a list a=[[1,2,3],[4,5,6],[7,8,9]] b=[1,2,3] for row in range(len(a)): print([a[col][row] for col in range(len(b)) ]) [1, 4, 7] [2, 5, 8] [3, 6, 9] mul=[[1, 2, 3, 4, 0, 0], [0, 1, 2, 3, 4, 0], [0, 0, 1, 2, 3, 4], [4, 0, 0, 1, 2, 3], [3, 4, 0, 0, 1, 2], [2, 3, 4, 0, 0, 1]] hn=[-3, 2, 1, 0, 0, 0] ...