Classical Encryption Techniques
Total Page:16
File Type:pdf, Size:1020Kb
Information System Security Chapter 2: Classical Encryption Techniques Dr. Lo’ai Tawalbeh Faculty of Information system and Technology, The Arab Academy for Banking and Financial Sciences. Jordan Dr. Lo’ai Tawalbeh Summer 2006 Introduction Basic Terminology • plaintext - the original message • ciphertext - the coded message • key - information used in encryption/decryption, and known only to sender/receiver • encipher (encrypt) - converting plaintext to ciphertext using key • decipher (decrypt) - recovering ciphertext from plaintext using key • cryptography - study of encryption principles/methods/designs • cryptanalysis (code breaking) - the study of principles/ methods of deciphering ciphertext Dr. Lo’ai Tawalbeh Summer 2006 1 Cryptographic Systems Cryptographic Systems are categorized according to: 1. The operation used in transferring plaintext to ciphertext: • Substitution: each element in the plaintext is mapped into another element • Transposition: the elements in the plaintext are re-arranged. 2. The number of keys used: • Symmetric (private- key) : both the sender and receiver use the same key • Asymmetric (public-key) : sender and receiver use different key 3. The way the plaintext is processed : • Block cipher : inputs are processed one block at a time, producing a corresponding output block. • Stream cipher: inputs are processed continuously, producing one element at a time (bit, Dr. Lo’ai Tawalbeh Summer 2006 Cryptographic Systems Symmetric Encryption Model Dr. Lo’ai Tawalbeh Summer 2006 2 Cryptographic Systems Requirements • two requirements for secure use of symmetric encryption: 1. a strong encryption algorithm 2. a secret key known only to sender / receiver •Y = Ek(X), where X: the plaintext, Y: the ciphertext •X = Dk(Y) • assume encryption algorithm is known •implies a secure channel to distribute key Dr. Lo’ai Tawalbeh Summer 2006 Cryptographic Systems Attacks: 1. Cryptanalytic Attacks: depends on the nature of the encryption algorithm used. • Uses information such as plaintext/ciphertext pairs to deduce the key 2. Brute-force Attack: try all the possible keys – depends on the key length. Dr. Lo’ai Tawalbeh Summer 2006 3 Cryptographic Systems Security Definitions • unconditional security • no matter how much computer power is available, the cipher cannot be broken since the ciphertext provides insufficient information to uniquely determine the corresponding plaintext • computational security • given limited computing resources (e.g., time needed for calculations is greater than age of universe), the cipher cannot be broken Dr. Lo’ai Tawalbeh Summer 2006 Classical Ciphers-Substitution Ciphers Shift Cipher Shift Cipher: Letters of the alphabet are assigned a number as below A B C D E F G H I J K L M 0 1 2 3 4 5 6 7 8 9 10 11 12 N O P Q R S T U V W X Y Z 13 14 15 16 17 18 19 20 21 22 23 24 25 Algorithm: Let P = C = K= Ζ26 and x ∈ P, y ∈ C, k ∈ K Encryption: Ek(x) = x + k mod 26. Decryption: Dk(x) = x - k mod 26. Dr. Lo’ai Tawalbeh Summer 2006 4 Shift Ciphers- cont. Remark: When k = 3 the shift cipher is given a special name - Caesar Cipher. Example: Let the key k = 17 Plaintext: X = A T T A C K = (0, 19, 19, 0, 2, 10). Ciphertext : Y = (0+17 mod 26, 19+17 mod 26, …) Y = (17, 10, 10, 17, 19, 1) = R K K R T B Attacks on Shift Cipher 1. Exhaustive Search: Try all possible keys. |K|=26. 2. Letter frequency analysis (Same plaintext maps to same ciphertext) Dr. Lo’ai Tawalbeh Summer 2006 Substitution Ciphers Monoalphabetic Cipher • Jumble the letters arbitrarily • each plaintext letter maps to a different random ciphertext letter. • key is 26 letters long • There are 26! = 4x 1026 Possible keys. •Plain: abcdefghijklmnopqrstuvwxyz •Cipher: DKVQFIBJWPESCXHTMYAUOLRGZN •Plaintext: ifwewishtoreplaceletters •Ciphertext: WIRFRWAJUHYFTSDVFSFUUFYA Dr. Lo’ai Tawalbeh Summer 2006 5 Substitution Ciphers Attacks: Frequency Analysis • Letter frequency analysis (Same plaintext maps to same ciphertext): language redundancy : • letters are not equally commonly used • in English e is by far the most common letter, then T,R,N,I,O,A, S • other letters are fairly rare : cf. Z,J,K,Q,X Dr. Lo’ai Tawalbeh Summer 2006 English Letter Frequencies Dr. Lo’ai Tawalbeh Summer 2006 6 Use in Cryptanalysis • key concept - monoalphabetic substitution ciphers do not change relative letter frequencies • calculate letter frequencies for ciphertext • compare counts/plots against known values • for monoalphabetic must identify each letter • tables of common double/triple letters help • See the example in page 33 Dr. Lo’ai Tawalbeh Summer 2006 Example Cryptanalysis • given ciphertext: UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ • count relative letter frequencies (see text) • guess P & Z are e and t • guess ZW is th and hence ZWP is the • proceeding with trial and error finally get: it was disclosed yesterday that several informal but direct contacts have been made with political representatives of the vietcong in moscow Dr. Lo’ai Tawalbeh Summer 2006 7 Playfair Key • not even the large number of keys in a monoalphabetic cipher provides security • one approach to improve security was to encrypt multiple letters • a 5X5 matrix of letters based on a keyword • fill in letters of keyword (sans duplicates) • fill rest of matrix with other letters • eg. using the keyword MONARCHY MONAR CHYBD EFGIK LPQST UVWXZ Dr. Lo’ai Tawalbeh Summer 2006 Encrypting and Decrypting • plaintext encrypted two letters at a time: 1. if a pair is a repeated letter, insert a filler like 'X', eg. "balloon" encrypts as "ba lx lo on" 2. if both letters fall in the same row, replace each with letter to right (wrapping back to start from end), eg. “ar" encrypts as "RM" 3. if both letters fall in the same column, replace each with the letter below it (again wrapping to top from bottom), eg. “mu" encrypts to "CM" 4. otherwise each letter is replaced by the one in its row in the column of the other letter of the pair, eg. “hs" encrypts to "BP", and “ea" to "IM" or "JM" (as desired) Dr. Lo’ai Tawalbeh Summer 2006 8 Security of the Playfair Cipher • security much improved over monoalphabetic • since have 26 x 26 = 676 digrams • would need a 676 entry frequency table to analyse (verses 26 for a monoalphabetic) • and correspondingly more ciphertext • was widely used for many years (eg. US & British military in WW1) •it can be broken, given a few hundred letters • since still has much of plaintext structure Dr. Lo’ai Tawalbeh Summer 2006 Hill Cipher Example: Let n=3 and the key matrix be M, C=PM The key is an n × n matrix whose entries are integers in Ζ26. ⎛ 1 2 3⎞ ⎜ ⎟ M = ⎜ 4 5 6⎟ ⎜ ⎟ ⎝11 9 8⎠ and the plaintext be ABC = (0, 1, 2) then the encryption operation is a vector-matrix multiplication ⎛ 1 2 3⎞ ⎜ ⎟ (0,1,2)×⎜ 4 5 6⎟ ≡ (0,23,22) mod 26 ⇒ AXW (ciphertext) ⎜ ⎟ ⎝11 9 8⎠ In order to decrypt we need the inverse of key matrix M, which is ⎛22 5 1 ⎞ ⎜ ⎟ N = ⎜ 6 17 24⎟ ⎜ ⎟ ⎝15 13 1 ⎠ Dr. Lo’ai Tawalbeh Summer 2006 9 Polyalphabetic Ciphers • another approach to improving security is to use multiple cipher alphabets • called polyalphabetic substitution ciphers • makes cryptanalysis harder with more alphabets to guess and flatter frequency distribution • use a key to select which alphabet is used for each letter of the message • use each alphabet in turn • repeat from start after end of key is reached Dr. Lo’ai Tawalbeh Summer 2006 Vigenère Cipher • simplest polyalphabetic substitution cipher is the Vigenère Cipher • effectively multiple caesar ciphers • key is multiple letters long K = k1 k2 ... kd •ith letter specifies ith alphabet to use • use each alphabet in turn • repeat from start after d letters in message • decryption simply works in reverse Dr. Lo’ai Tawalbeh Summer 2006 10 Example • write the plaintext out • write the keyword repeated above it • use each key letter as a caesar cipher key • encrypt the corresponding plaintext letter • eg using keyword deceptive key: deceptivedeceptivedeceptive -- row plaintext: wearediscoveredsaveyourself -- column ciphertext:ZICVTWQNGRZGVTWAVZHCQYGLMGJ Dr. Lo’ai Tawalbeh Summer 2006 Security of Vigenère Ciphers • have multiple ciphertext letters for each plaintext letter • hence letter frequencies are obscured • but not totally lost • start with letter frequencies • see if look monoalphabetic or not • if not, then need to determine number of alphabets, since then can attach each one seperately. Dr. Lo’ai Tawalbeh Summer 2006 11 Kasiski Method • method developed by Babbage / Kasiski • repetitions in ciphertext give clues to period • so find same plaintext an exact period apart • which results in the same ciphertext • of course, could also be random • eg repeated “VTW” in previous example • suggests size of 3 or 9 • then attack each monoalphabetic cipher individually using same techniques as before Dr. Lo’ai Tawalbeh Summer 2006 One-Time Pad • if a truly random key as long as the message is used, the cipher will be secure • called a One-Time pad • is unbreakable since ciphertext bears no statistical relationship to the plaintext • since for any plaintext & any ciphertext there exists a key mapping one to other • can only use the key once though • have problem of safe distribution of key Dr. Lo’ai Tawalbeh Summer 2006 12 Transposition Ciphers • now consider classical transposition or permutation ciphers • these hide the message by rearranging the letter order • without altering the actual letters used • can recognise these since have the same frequency distribution as the original text Dr. Lo’ai Tawalbeh Summer 2006 Rail Fence cipher • write message letters out diagonally over a number of rows • then read off cipher row by row • eg. write message out as: m e m a t r h t g p r y e t e f e t e o a a t • giving ciphertext MEMATRHTGPRYETEFETEOAAT Dr.