Vigenere Cipher
Vigenere Cipher
A Vigenere Cipher is an extended Caesar Cipher where a message is encrypted using various Caesar shifted alphabets. A key
is used to determine how many shifts each letter receives. It adds an additional layer of complexity that relies on the shared
key instead of a predetermined shift length.
Example
We'll use the following table can be used to encode a message:
Encryption
Plaintext: SUPERSECRET
KEY: CODE
CODE
gets padded to the length ofSUPERSECRET
so the key becomesCODECODECOD
.- For each letter in
SUPERSECRET
we use the table to get the Alphabet to use, in this instance rowC
and columnS
. - The ciphertext's first letter then becomes
U
. - We eventually get
UISITGHGTSW
.
Decryption
- Go to the row of the key, in this case
C
- Find the letter of the cipher text in this row, in this case
U
- The column is the first letter of the decrypted ciphertext, so we get
S
- After repeating this process we get back to
SUPERSECRET
Cryptanalysis
The key part of breaking a Vigenere Cipher is (not a pun) the key itself. Because it repeats, it's vulnerable to brute forcing the rotation by figuring out what the length of the key is. After, frequency analysis or key elimination is used to reverse the secret. We're not going to cover it here, but check out the footnotes for more!2
Online cipher solvers automatically use these steps!
Info
For more information on how to determine the key length, check out this video on the Kasiski Examination.