In cryptography, a classical cipher is a type of cipher that was used historically but now has fallen, for the most part, into disuse. In contrast to modern cryptographic algorithms, most classical ciphers can be practically computed and solved by hand. However, they are also usually very simple to break with modern technology. The term includes the simple systems used since Greek and Roman times, the elaborate Renaissance ciphers, World War II cryptography such as the Enigma machine and beyond.
In contrast, modern strong cryptography relies on new algorithms and computers developed since the 1970s.
Classical ciphers are often divided into transposition ciphers and substitution ciphers.
In a substitution cipher, letters (or groups of letters) are systematically replaced throughout the message for other letters (or groups of letters).
A well-known example of a substitution cipher is the Caesar cipher. To encrypt a message with the Caesar cipher, each letter of message is replaced by the letter three positions later in the alphabet. Hence, A is replaced by D, B by E, C by F, etc. Finally, X, Y and Z are replaced by A, B and C respectively. So, for example, "WIKIPEDIA" encrypts as "ZLNLSHGLD". Caesar rotated the alphabet by three letters, but any number works.
Another method of substitution cipher is based on a keyword. All spaces and repeated letters are removed from a word or phrase, which the encoder then uses as the start of the cipher alphabet. The end of the cipher alphabet is the rest of the alphabet in order without repeating the letters in the keyword. For example, if the keyword is CIPHER, the cipher alphabet would look like this:
The previous examples were all examples of monoalphabetic substitution ciphers, where just one cipher alphabet is used. It is also possible to have a polyalphabetic substitution cipher, where multiple cipher alphabets are used. The encoder would just make up two or more cipher alphabets using whatever techniques he or she chooses, and then encode their message, alternating what cipher alphabet is used with every letter or word. This makes the message much harder to decode because the codebreaker would have to figure out both cipher alphabets.
Another example of a polyalphabetic substitution cipher that is much more difficult to decode is the Vigenère square, an innovative encoding method. With the square, there are 26 different cipher alphabets that are used to encrypt text. Each cipher alphabet is just another rightward Caesar shift of the original alphabet. This is what a Vigenère square looks like:
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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
To use the Vigenère square to encrypt a message, you first choose whatever keyword you want to use and then repeat it until it is the same length as the message you wish to encode. Let's say we use LEMON as the keyword. Each letter of the repeated keyword will tell you what cipher (what row) you'll use for each letter of the message to be coded. The cipher alphabet on the second row uses B for A and C for B etc. That would be cipher alphabet 'B'. Each cipher alphabet is named by the first letter in it. For example, if you have a keyword of LEMON and the message you want to encode is ATTACKATDAWN, this is what you would do:
Some substitution ciphers involve using numbers instead of letters. An example of this is the Great Cipher, where numbers were used to represent syllables. There is also another number substitution cipher that involves having four different number pair options for a letter based on a keyword.
Instead of numbers, symbols can also be used to replace letters or syllables. One example of this is Zodiac alphabet, where signs of the zodiac were used to represent different letters, for example, the symbols for the sun stood for A, Jupiter stood for B, and Saturn stood for C. Dots, lines, or dashes could also be used, one example of this being Morse Code, which isn't really a cipher, but uses dots and dashes as letters nonetheless. The pigpen cipher uses a grid system or lines and dots to establish symbols for letters. There are various other methods that involve substituting letters of the alphabet with symbols or dots and dashes.
In a transposition cipher, the letters themselves are kept unchanged, but their order within the message is scrambled according to some well-defined scheme. Many transposition ciphers are done according to a geometric design. A simple (and once again easy to crack) encryption would be to write every word backwards. For example, "Hello my name is Alice." would now be "olleH ym eman si ecilA." A scytale is a machine that aids in the transposition of methods.
In a columnar cipher, the original message is arranged in a rectangle, from left to right and top to bottom. Next, a key is chosen and used to assign a number to each column in the rectangle to determine the order of rearrangement. The number corresponding to the letters in the key is determined by their place in the alphabet, i.e. A is 1, B is 2, C is 3, etc. For example, if the key word is CAT and the message is THE SKY IS BLUE, this is how you would arrange your message:
C A T
3 1 20
T H E
S K Y
I S B
L U E
Next, you take the letters in numerical order and that is how you would transpose the message. You take the column under A first, then the column under C, then the column under T, as a result your message "The sky is blue" has become: HKSUTSILEYBE
In the Chinese cipher's method of transposing, the letters of the message are written from right to left, down and up columns to scramble the letters. Then, starting in the first row, the letters are taken in order to get the new ciphertext. For example, if the message needed to be enciphered was THE DOG RAN FAR, the Chinese cipher would look like this:
R R G T
A A O H
F N D E
The cipher text then reads: RRGT AAOH FNDE
Many transposition ciphers are similar to these two examples, usually involving rearranging the letters into rows or columns and then taking them in a systematic way to transpose the letters. Other examples include the Vertical Parallel and the Double Transposition Cipher.
More complex algorithms can be formed by mixing substitution and transposition in a product cipher; modern block ciphers such as DES iterate through several stages of substitution and transposition.
Classical ciphers are commonly quite easy to break. Many of the classical ciphers can be broken even if the attacker only knows sufficient ciphertext and hence they are susceptible to a ciphertext-only attack. Some classical ciphers (e.g. the Caesar cipher) have a small key space. These ciphers can be broken with a brute force attack, that is by simply trying out all keys. Substitution ciphers can have a large key space, but are often susceptible to a frequency analysis, because for example frequent letters in the plaintext language correspond to frequent letters in the ciphertexts. Polyalphabetic ciphers such as the Vigenère cipher prevent a simple frequency analysis by using multiple substitutions. However, more advanced techniques such as the Kasiski examination can still be used to break these ciphers.
On the other hand, modern ciphers are designed to withstand much stronger attacks than ciphertext-only attacks. A good modern cipher must be secure against a wide range of potential attacks including known-plaintext attacks and chosen-plaintext attacks as well as chosen-ciphertext attacks. For these ciphers an attacker should not be able to find the key even if he knows any amount of plaintext and corresponding ciphertext and even if he could select plaintext or ciphertext himself. Classical ciphers do not satisfy these much stronger criteria and hence are no longer of interest for serious applications.
Some techniques from classical ciphers can be used to strengthen modern ciphers. For example, the MixColumns step in AES is a Hill cipher.