Substitution and transposition ciphers are two categories of ciphers used in classical cryptography. Substitution and transposition differ in how chunks of the message are handled by the encryption process. Substitution ciphers encrypt plaintext by changing the plaintext one piece at a time. Transposition ciphers encrypt plaintext by moving small pieces of the message around. A transposition cipher doesn't change the characters in the plaintext when it generates the cipher text, it just re-arranges them. It applies some kind of permutation function to the text to produce a re-arrangement, which can be reversed by knowing the secret to the permutation. In this report, I have chosen columnar transposition cipher. In a columnar transposition cipher, the message is written out row by row into the matrix. The matrix is based on the length of the keyword. If there is any blank space in the matrix, replace it with nulls. This method is for a regular columnar transposition cipher. For an irregular columnar transposition cipher, the spaces are left blank. Then read out the message column by column, and the columns are chosen in some scrambled order based on the keyword. For example, the word CODEC is of length 5, so the rows are of length 5, and the permutation is defined by the alphabetical order of the letters in the keyword. In this case, the order would be "1 5 3 4 2". In the case of repeated alphabet, numbering is based on left to right. In the case of CODEC, the first C is considered as 1 and the second C as 2.