Substitution and transposition ciphers are two categories of ciphers used in classical cryptography. Substitution and transposition differ in how chunks of the message are handled by the encryption process.
Substitution ciphers encrypt plaintext by changing the plaintext one piece at a time.
The Caesar Cipher was an early substitution cipher. In the Caesar Cipher, each character is shifted three places up. Therefore, A becomes D and B becomes E, etc…
This table shows “VOYAGER” being encrypted with the Caesar substitution cipher:
A more complex substitution cipher would be created if, instead of incrementing each character by three, we used a more complex key. This table shows a simple substitution cipher with a key of “123”.
An even more complex substitution cipher can be made by having each character of the alphabet correspond to a different letter of the alphabet, without a set pattern.
Using this substitution cipher to encrypt VOYAGER would give us these results:
The Vernam Cipher, or one time pad, is a simple substitution cipher where the key length equals the message length.
ROT-1 is a simple substitution cipher used to encode messages on Usenet.
Transposition ciphers encrypt plaintext by moving small pieces of the message around. Anagrams are a primitive transposition cipher.
This table shows “VOYAGER” being encrypted with a primitive transposition cipher where every two letters are switched with each other:
Substitution and transposition ciphers in modern times
Modern cryptanalysis makes simple substitution and transposition ciphers obsolete.
However, these techniques remain useful for understanding cryptography and the workings of more complex modern ciphers.