The autokey cipher is a variant of the Vigenère cipher that was once considered unbreakable. With today’s means it can be deciphered. Can a reader solve the challenge I’m introducing today?
Most readers of this blog certainly know the Vigenère cipher, a manual encryption method invented in the 16th century. A well-known variant of the Vigenère, which incorporates the plaintext into the key, is referred to as “autokey cipher”. The following explanation is taken from Wikipedia. More details can be found on the website of the American Cryptogram Association (ACA).
The autokey cipher
The autokey cipher is based on a keyword, for example QUEENLY. To encrypt the message ATTACK AT DAWN, the keyword is written below the plaintext in the following way:
Plaintext: ATTACKATDAWN Key: QUEENLY
Next, the first letters of the plaintext are written behind the keyword:
Plaintext: ATTACKATDAWN Key: QUEENLYATTAC
The ciphertext is generated by adding the plaintext to the key (A=1, B=1, C=2, …):
Plaintext: ATTACKATDAWN Key: QUEENLYATTAC ------------------------ Ciphertext: QNXEPVYTWTWP
An autokey implementation is available on CrypTool Online.
The autokey cipher was once called “le chiffre indéchiffrable” (“the unbreakable cipher”), but in the 19th century methods to break it were discovered. Nevertheless, the autokey cipher is considerably more secure than standard Vigenère (the Vigenère cipher once was considered unbreakable, too).
The autokey cipher is mentioned frequently in the literature, but I have never seen it being used in practice. If a reader knows of an example, please let me know.
With today’s means it should be possible to break an autokey cryptogram without too much effort. For example, an autokey solver is available on the website dCode.
To check how difficult it is to decipher an autokey ciphertext I decided to create a challenge. The following cryptogram has been created with the autokey cipher:
The plaintext is in English. The keyword is probably not contained in any dictionary file. The dCode autokey solver didn’t break the cryptogram.