390 likes | 858 Views
Substitution Ciphers. Substitution Ciphers. Monoalphabetic cipher Caesar cipher Polyalphabetic cipher Vigen è re cipher Multiple letter cipher Playfair cipher. Monoalphabetic cipher.
E N D
Substitution Ciphers • Monoalphabetic cipher • Caesar cipher • Polyalphabetic cipher • Vigenère cipher • Multiple letter cipher • Playfair cipher
Monoalphabetic cipher • Plaintext characters are substituted by a different alphabet stream of characters shifted to the right or left by n positions • E.g., ABCDEFGHIJKLMNOPQRSTUVWXYZ DEFGHIJKLMNOPQRSTUVWXYZABC • Caesar cipher corresponds to n = 3 • Julius Caesar used the Caesar cipher method
Monoalphabetic cipher • The substitution cipher by shifting alphabets gives 26! > 4 x 1026 possibilities • This might appear to be too many choices to try for an exhaustive attack • This is a weak cipher because it would be easy to guess the pattern • Mono-alphabetic ciphers are vulnerable to cryptanalysis attack
Monoalphabetic cipher • The shift pattern above could be replaced by random assignment of characters for each alphabet • E.g., ABCDEFGHIJKLMNOPQRSTUVWXYZ PMJSQOLEYTVUAXIKCGBWDRNHZF • This would also give 26! possibilities
Polyalphabetic Cipher • In monoalphabetic cipher the problem was that each character was substituted by a single character • Cryptanalysts are helped by the fact that they have to see what character would correspond in plaintext for a given ciphertext character • Polyalphabetic cipher’s goal is to make this process difficult
Polyalphabetic Cipher • In polyalphabetic cipher, each plaintext character may be replaced by more than one character • Since there are only 26 alphabets this process will require using a different representation than the alphabets • Alphabets ‘A’ through ‘Z’ are replaced by 00, 01, 02, …, 25 • We need two digits in this representation since we need to know how to reverse the process at the decryption side
Polyalphabetic Cipher • The most common method used is Vigenère cipher • Vigenère cipher starts with a 26 x 26 matrix of alphabets in sequence. First row starts with ‘A’, second row starts with ‘B’, etc. • Like the ADFGVX cipher, this cipher also requires a keyword that the sender and receiver know ahead of time • Each character of the message is combined with the characters of the keyword to find the ciphertext character
VigenèreCipher Table A B C D E F G H I J K L M N O P Q R S T U V W X Y Z A A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B B A B C D E F G H I J K L M N O P Q R S T U V W X Y C C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
VigenèreCipher Table (cont’d) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z N N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
Polyalphabetic Cipher • E.g., Message = SEE ME IN MALL • Take keyword as INFOSEC • Vigenère cipher works as follows: S E E M E I N M A L L I N F O S E C I N F O ------------------------------------- A R J A W M P U N Q Z
Polyalphabetic Cipher • To decrypt, the receiver places the keyword characters below each ciphertext character • Using the table, choose the row corresponding to the keyword character and look for the ciphertext character in that row • Plaintext character is then at the top of that column
Polyalphabetic Cipher • Decryption of ciphertext: A R J A W M P U N Q Z I N F O S E C I N F O ------------------------------------- S E E M E I N M A L L • Best feature is that same plaintext character is substituted by different ciphertext characters (i.e., polyalphabetic)
VigenèreCipher • Easiest way to handle Vigenère cipher is to use arithmetic modulo 26 • This approach dispenses with the need for the table • Keyword is converted to numbers and corresponding numbers in message and keyword are added modulo 26
Hill Cipher • This involves the mathematical concept of matrices which we did not discuss • If you are interested then you can see pages 37-40 of Stallings, 2nd edition book on Cryptography
Polyalphabetic cipher • Vigenère cipher uses the fact that the keyword character helps to get different ciphertext characters from the table • Instead of the Vigenère table, one could develop a new table in which each character is represented as an integer and the ciphertext could use multiple digits for substitution depending on the frequency analysis of the letter • E.g., Q gets only one substitution value where as E gets 12 different substitution values, and so on
Transposition Cipher • Also known as a permutation cipher • Permutation is an arrangement of the original order of letters or numbers • E.g., a = 1 2 3 3 1 2 • “a” is a permutation of 1, 2, 3 such that 1 3 2 1 3 2
Transposition Cipher • a2 = 1 2 3 a3 = 1 2 3 2 3 1 1 2 3 • a3 is really identity as it does not change the order of the elements • “a” is said to have order 3, written |a| = 3 • “a” is an odd permutation as its order is an odd number
Transposition Cipher • In Transposition cipher position of character changes but not its value • This is different from substitution cipher • Assign values 0, 1, 2, …, 25 to the alphabets • Choose an integer n as the size of a block • Split the message into blocks of size n
Transposition Cipher • p = (p(1), p(2), …, p(n)) be a permutation of (1, 2, …, n) • Message is encrypted using the values of p(1), p(2), …, p(n) • E.g. Let n = 4 • Let p = 1 2 3 4 2 4 1 3
Transposition Cipher • message = proceed meeting as agreed • Since n = 4, we split the message as follows: proc eedm eeti ngas agre ed • We pad the last block with two spaces • Encrypt using the permutation order • Last block becomes d _ e _ where _ denotes a blank space • Delete the blank spaces in encrypted text
Transposition Cipher • Ciphertext using the permutation is: rcpoemedeietgsnagearde • To decrypt, the receiver simply takes the inverse of the permutation • In the last block of ciphertext we have de • The two missing characters corresponding to 3-1 and 4-1 are thus blanks in plaintext
Multiple Letter Cipher • Playfair cipher is a multiple letter cipher • Each plaintext letter is replaced by a digram in this cipher • Number of digrams is 26 x 26 = 676 • User chooses a keyword and puts it in the cells of a 5 x 5 matrix. I and J stay in one cell. Duplicate letters appear only once. • Alphabets that are not in the keyword are arranged in the remaining cells from left to right in successive rows in ascending order
Playfair Cipher • Keyword “Infosec”
Playfair Cipher • Rules: • Group plaintext letters two at a time • Separate repeating letters with an x • Take a pair of letters from plaintext • Plaintext letters in the same row are replaced by letters to the right (cyclic manner) • Plaintext letters in the same column are replaced by letters below (cyclic manner) • Plaintext letters in different row and column are replaced by the letter in the row corresponding to the column of the other letter and vice versa
Playfair Cipher • E.g., Plaintext: “CRYPTO IS TOO EASY” • Keyword is “INFOSEC” • Grouped text: CR YP TO IS TO XO EA SY • Ciphertext: AQ VT YB NI YB YF CB OZ • To decrypt, the receiver reconstructs the 5 x 5 matrix using the keyword and then uses the same rules as for encryption
Vernam Cipher • U.S. Army Major Joseph Mauborgne and AT&T’s Gilbert Vernam developed a cipher in 1917 • Uses a one time arrangement of a key string that is as long as the plaintext • Plaintexts are assumed to be short • Also known as One-Time Pad cipher • Key is used only once but characters in key may not be distinct
Vernam Cipher • E.g., Plaintext: HELLO Key: KTBXZ -------------- Ciphertext : RXMIN (using addition mod 26) Key: KTBXZ -------------- Plaintext: HELLO (using subtraction mod 26)