Cryptanalysis of the Vigenere's Cipher
Primary Faculty Mentor’s Name
Dr. Yesem Peker
Proposal Track
Student
Session Format
Paper Presentation
Abstract
My presentation is a cryptanalysis of the Vigenère’s cipher using a java computer program. I will also give a history of the Vigenère’s cipher in my presentation
The Vigenère’s cipher is a polyalphabetic cipher (a substitution cipher where the same plain letter may be substituted with a different cipher letter) that encrypts a plaintext using a keyword. It was invented by Blaise de Vigenère and presented to King Henry III of France in 1586. The cipher remained unbroken until 1863 when Friedrich Kasiski broke the cipher. To break a cipher is to be able to decrypt it without knowing the keyword. Kasiski looked at a string of three characters that were repeated. He then counted how far apart the strings of repeated characters were and using the greatest common divisor of those numbers split the cipher up into that many columns and applied frequency analysis to find the keyword. William Friedman came up with an alternate method to break the Vigenère’s cipher in 1920. He used a mathematical formula to calculate the Index of Coincidence, which is a statistical measure of how English-like a ciphertext is, and then used that number to calculate the probable keyword length. Then, he put the cipher into that many columns and used the chi-squared statistic to compare the frequency distributions of the columns with the expected English frequency distribution. The key corresponds to the lowest chi-squared distribution.
I have written a computer program in java that will take in a file that has been encrypted with the Vigenère’s cipher. The program will then use Friedman’s method to calculate the keyword length using the Index of Coincidence. Then, the program will break the ciphertext into that many columns and recalculate the Index of Coincidence to check that the frequency distribution is close to an Engish distribution. The program will then calculate the chi-squared statistic of each column to find the keyword. Once the keyword is found, the program will decrypt the file and print out the plaintext message. I have also written a second program that will use frequency analysis (how often a letter appears) to find the keyword and then decrypt the message. I did this to show that one cannot rely on frequency analysis alone to find the keyword.
Keywords
Vigenere's, Cryptography, Cryptanalysis, Chi-squared statistic, Java
Award Consideration
1
Location
Room 1909
Presentation Year
2014
Start Date
11-15-2014 1:45 PM
End Date
11-15-2014 2:45 PM
Publication Type and Release Option
Presentation (Open Access)
Recommended Citation
Corning, Cherie, "Cryptanalysis of the Vigenere's Cipher" (2014). Georgia Undergraduate Research Conference (2014-2015). 78.
https://digitalcommons.georgiasouthern.edu/gurc/2014/2014/78
Cryptanalysis of the Vigenere's Cipher
Room 1909
My presentation is a cryptanalysis of the Vigenère’s cipher using a java computer program. I will also give a history of the Vigenère’s cipher in my presentation
The Vigenère’s cipher is a polyalphabetic cipher (a substitution cipher where the same plain letter may be substituted with a different cipher letter) that encrypts a plaintext using a keyword. It was invented by Blaise de Vigenère and presented to King Henry III of France in 1586. The cipher remained unbroken until 1863 when Friedrich Kasiski broke the cipher. To break a cipher is to be able to decrypt it without knowing the keyword. Kasiski looked at a string of three characters that were repeated. He then counted how far apart the strings of repeated characters were and using the greatest common divisor of those numbers split the cipher up into that many columns and applied frequency analysis to find the keyword. William Friedman came up with an alternate method to break the Vigenère’s cipher in 1920. He used a mathematical formula to calculate the Index of Coincidence, which is a statistical measure of how English-like a ciphertext is, and then used that number to calculate the probable keyword length. Then, he put the cipher into that many columns and used the chi-squared statistic to compare the frequency distributions of the columns with the expected English frequency distribution. The key corresponds to the lowest chi-squared distribution.
I have written a computer program in java that will take in a file that has been encrypted with the Vigenère’s cipher. The program will then use Friedman’s method to calculate the keyword length using the Index of Coincidence. Then, the program will break the ciphertext into that many columns and recalculate the Index of Coincidence to check that the frequency distribution is close to an Engish distribution. The program will then calculate the chi-squared statistic of each column to find the keyword. Once the keyword is found, the program will decrypt the file and print out the plaintext message. I have also written a second program that will use frequency analysis (how often a letter appears) to find the keyword and then decrypt the message. I did this to show that one cannot rely on frequency analysis alone to find the keyword.