ου γαρ εστιν κρυπτον ο ου φανερον γενησεται ουδε αποκρυφον ο ου γνωσθησεται και εις φανερον ελθη
Wersja PL ENG Version

Polyalphabetic substitution ciphers

  • Description
  • Algorithm
  • Implementation
Polyalphabetic substitution ciphers were invented by the artist, philosopher and scientist Leon Battista Alberti. In 1467 he presented a device called the cipher disk. It provides polyalphabetic substitutions with mixed alphabets.
Polyalphabetic substitution ciphers
Each plaintext character is replaced by another letter. A way of substitution is changed cyclically and it depends on a current position of the modified letter.

In polyalphabetic substitution ciphers one should define a few possible combinations of substitutions of all alphabet letters by other letters. Then, one should use the substitutions cyclically, one after the other, changing the replacement after each new letter.

To use this cipher, one should choose, remember and deliver to all parties some substitutions of all alphabet letters. Then, the substitutions should be used in a specific order. To decrypt the message, one should use corresponding substitutions in the same order but the letters should be changed in the other side.

The strongest version of a polyalphabetic substitution cipher is to define all its transformations randomly. Such a method was preferred by Alberti himself.

On the other hand, due to the large amount of data to remember, some easy to remember and easy to hand over to another person substitutions were invented and widely used. The Vigenère cipher is an example of such an approach.

Security of polyalphabetic substitution ciphers

A properly implemented polyalphabetic substitution cipher is quite difficult to break. Its strength is based on many possible combinations of changing alphabet letters. Some effective methods of attacking such ciphers were discovered in the nineteenth century. They are about to guess a secret key's length in a first step. After that, one can examine the ciphertext using frequency analysis methods.

Site under development.