mathschallenge.net logo

Frequently Asked Questions

Can you make the basic substitution method more secure?

Polyalphabetic substitution is an extension of the basic monoalphabetic substitution cipher. Instead of using a single table to translate each character in the plain text to a new character in the cipher text, a different encryption table is used for each character, often depending on the position of the character in the plain text.

A simple example is an extension of the Caesar cipher were, instead of moving each letter in the plain text by a fixed amount, we might add 1 letter to the 1st character, 2 letters to the 2nd character, 3 letters to the 3rd letter, and so on. In this way the word HELLO becomes IGOPT. As the position in the word is important, we notice that L is represented by different characters in the cipher. This means that simple freqeuncy counting methods become redundant. However, if a simple system like this is used we could tackle it by realising that consecutive letters in the alphabet are equivalent to double letters.

A more secure system would utilise a pseudo random approach to the encryption table for each position. However, we are now beginning to realise that we run the risk of encrypting plain text and not being able to decrypt it again if we are not careful. There needs to be some method to guide the cryptographer in the encryption process and which their intended receiver can use to decode the message. This is based on the principle of a key.

A key is usually a string of characters/numbers used, in some way, to guide the encryption (and decryption) process. For example, we could use the key, 132, to tell us to add 1 letter to the 1st character, 3 letters to the 2nd character and 2 letters to the 3rd character. We could then repeat this throughout the plain text message. In this way, CAN YOU READ THIS becomes DDP ZRW SHCE WJJV. Without any knowledge of the key, the code breaker will have to work much harder at breaking this type of code.