The Vigenere Cipher
A polyalphabetic substitution cipher
Written by McCodEMaN




Introduction

The Vigenere is a polyalphabetic substitution cipher. It was proposed by Blaise de Vigenère in the
sixteenth century. For some reason he's remembered by this weak cipher and not the more complex
autokey cipher.
A polyalphabetic substitution cipher involves the use of more then one cipher alphabet, and are
therefor more more secure then many other substitution ciphers. When using more then one alphabet
we get a "one to many" relationship between each letter and its substitutes, therefor higher security
is gained. In spite of all this, all you need to break it is a pencil and a piece of paper.

When enciphering a message we use the vigenere tableau together with a key.
If you look at the tableau you'll see its similarity to the Caesar cipher, but in this case a multiple shift
is used. When enciphering, we use a shift between 0 and 25.






Vigenere Tableau
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 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 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 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






Enciphering

Let's encipher the plaintext "REVERSE CODE ENGINEERING", but before we proceed we have
to come up with a key, I'll use "VISUALIZE" for this example. Then we write the key repeatedly
above the plaintext as illustrated below:


              Key:  VISUALI ZEVI SUALIZEVISU
 Plaintext:  REVERSE CODE ENGINEERING
Ciphertext:


When we have done this, we locate the first plaintext letter "R" along the left side of the table, then
locate the corresponding key letter "V" along the table top.
If you read along the leftside and from the top and down, you'll find a meeting place. That meeting
place will hold the first ciphertext letter, which in this case is "M" .






This procedure is then repeated for each letter in the plaintext, until the entire message is enciphered.


              Key:  VISUALI ZEVI SUALIZEVISU
 Plaintext:  REVERSE CODE ENGINEERING
Ciphertext:  MMNYRDM BSYM WHGTVDIMQFA
 
 





Deciphering

Decipherment of an encrypted message is just as easy, if you have the valid key. This time we write
the key repeatedly above the ciphertext:


              Key:  VISUALI ZEVI SUALIZEVISU
Ciphertext:  MMNYRDM BSYM WHGTVDIMQFA


Then we loacate the first letter of the key "V" along the left side of the table, and read along the row
until we find the ciphertext letter "M" . When we have found "M" we move up to the top, and finds
the valid plaintext letter "R" .






If you look closely at the plaintext you'll find the letter "E" seven times, and that it yields five different
ciphertext letters, namely:

M, Y, W, D and I.

This is the strength of the Vigenere cipher. Each letter of a key picks out 1 of the 26 possible substitution
alphabets in our tableau.








And as always, I would like to thank...

attiTude, The Keyboard Caper, Razzia, MrX, members of TRES2000 and my beloved Jen!