The Vigenère Cipher

The Vigenère Cipher

Introduction to Cryptography CS 355 Lecture 4 The Vigenère Cipher CS 355 Fall 2005 / Lecture 4 1 Lecture Outline • Vigenère cipher. • Attacks on Vigenere: – Kasisky Test – Index of Coincidence – Frequency analysis CS 355 Fall 2005 / Lecture 4 2 Towards the Polyalphabetic Substitution Ciphers • Main weaknesses of monoalphabetic substitution ciphers – each letter in the ciphertext corresponds to only one letter in the plaintext letter • Idea for a stronger cipher (1460’s by Alberti) – use more than one cipher alphabet, and switch between them when encrypting different letters • Developed into a practical cipher by Vigenère (published in 1586) CS 355 Fall 2005 / Lecture 4 3 The Vigenère Cipher Definition: n Given m, a positive integer, P = C = (Z26) , and K = (k1, k2, … , km) a key, we define: Encryption: ek(p1, p2… pm) = (p1+k1, p2+k2…pm+km) (mod 26) Decryption: dk(c1, c2… cm) = (c1-k1, c2-k2 … cm- km) (mod 26) Example: Plaintext: C R Y P T O G R A P H Y Key: L U C K L U C K L U C K Ciphertext: N L A Z E I I B L J J I CS 355 Fall 2005 / Lecture 4 4 Security of Vigenere Cipher • Vigenere masks the frequency with which a character appears in a language: one letter in the ciphertext corresponds to multiple letters in the plaintext. Makes the use of frequency analysis more difficult. • Any message encrypted by a Vigenere cipher is a collection of as many shift ciphers as there are letters in the key. CS 355 Fall 2005 / Lecture 4 5 Vigenere Cipher: Cryptanalysis • Find the length of the key. • Divide the message into that many shift cipher encryptions. • Use frequency analysis to solve the resulting shift ciphers. – how? CS 355 Fall 2005 / Lecture 4 6 How to Find the Key Length? • For Vigenere, as the length of the keyword increases, the letter frequency shows less English-like characteristics and becomes more random. • Two methods to find the key length: – Kasisky test – Index of coincidence (Friedman) CS 355 Fall 2005 / Lecture 4 7 Kasisky Test • Note: two identical segments of plaintext, will be encrypted to the same ciphertext, if the they occur in the text at the distance D, (Dº0 (mod m), m is the key length). • Algorithm: – Search for pairs of identical segments of length at least 3 – Record distances between the two segments: D1, D2, … – m divides gcd(D1, D2, …) CS 355 Fall 2005 / Lecture 4 8 Example of the Kasisky Test Key K I N G K I N G K I N G K I N G K I N G K I N G PT t h e s u n a n d t h e m a n i n t h e m o o n CT D P R Y E V N T N B U K W I A O X B U K W W B T CS 355 Fall 2005 / Lecture 4 9 Index of Coincidence (Friedman) Informally: Measures the probability that two random elements of the n-letters string x are identical. Definition: Suppose x = x1x2…xn is a string of n alphabetic characters. Then Ic(x), the index of coincidence is: Ic (x) = P(xi = x j ) CS 355 Fall 2005 / Lecture 4 10 Index of Coincidence (cont.) • Reminder: binomial coefficient ænö n! ç ÷ = èk ø k!(n - k)! • Consider the plaintext x, and f0, f1, … f25 are the frequencies with which A, B, … Z appear in x and p0, p1, … p25 are the probabilities with which A, B, … Z appear in x. • We want to compute Ic(x). CS 355 Fall 2005 / Lecture 4 11 Index of Coincidence (cont.) • We can choose two elements out of the æ n ö string of size n in ç ÷ ways è 2 ø æ f ö • For each i, there are i ways of choosing ç ÷ the elements to be i è2 ø S æ f ö S S ç i ÷ f ( f -1) f 2 åç ÷ å i i å i S i=0 è 2 ø i=0 i=0 2 I (x) = = » = p C 2 å i æ nö n(n -1) n i-0 ç ÷ è 2ø CS 355 Fall 2005 / Lecture 4 12 Index of Coincidence of English • For English, S = 25 and pi can be estimated Letter pi Letter pi Letter pi Letter pi A .082 H .061 O .075 V .010 B .015 I .070 P .019 W .023 C .028 J .002 Q .001 X .001 D .043 K .008 R .060 Y .020 E .127 L .040 S .063 Z .001 F .022 M .024 T .091 G .020 N .067 U .028 i=25 2 Ic (x) = å pi = 0.065 i=0 CS 355 Fall 2005 / Lecture 4 13 Finding the Key Length y = y1y2…yn, , m is the key length y é y1 ym+1 ... y n-m+1 ù 1 ê ú y y ... y y ê 2 m+2 n-m+2 ú 2 ê ... ... ... ... ú … ê ú y y ... y ë m 2m n û ym CS 355 Fall 2005 / Lecture 4 14 Guessing the Key Length • If m is the key length, then the text ``looks like’’ English text i=25 2 Ic (yi ) » å pi = 0.065 "1 £ i £ m i=0 • If m is not the key length, the text ``looks like’’ random text and: i= 25 1 2 1 1 Ic » å( ) = 26 ´ 2 = = 0.038 i= 0 26 26 26 CS 355 Fall 2005 / Lecture 4 15 Summary • Vigenère cipher is vulnerable: once the key length is found, a cryptanalyst can apply frequency analysis. CS 355 Fall 2005 / Lecture 4 16 Recommended Reading for This Lecture • Trappe & Washington – Section 2.3 • The Code Book – Chapter 2 CS 355 Fall 2005 / Lecture 4 17 Coming Attractions … • Enigma Machine • Recommended Reading – Trappe & Washington: 2.12 – The Code Book: Chapters 3 & 4 CS 355 Fall 2005 / Lecture 4 18.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    18 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us