I have been reading the book "Serious Cryptography" by Aumasson to begin learning about Cryptography. There was a part where the author suggested how encryption using permutation should have these properties to be secured

  1. It should be a permutation, which is a rearrangement of the letters A to Z, such that each letter has a unique inverse. For example, a substitution that transforms the letters A, B, C, and D, respectively to C, A, D, and B is a permutation, because each letter maps onto another single letter. But a substitution that transforms A, B, C, D to D, A, A, C is not a permutation, because both B and C map onto A. With a permutation, each letter has exactly one inverse.
  2. The permutation should be determined by the key
  3. Different keys should result in different permutations.
  4. The permutation should look random

For the first property, I wonder if Vigenere Cipher can be considered to be secured (focusly based on the these permutation rules above) since certain keys can result in collisions.

For e.g, Message = "ABBA" // Key = "BA"
=> Ciphertext = "BBCA", with "A" and "B" having collided result.


2 Answers 2


Your stated rules apply for substitution cipher with one alphabet, e.g. when each letter is encrypted by the same key.

Vigenere Cipher uses multiple alphabets (one for every letter of key), so stated rules apply for every alphabet separately.

In your example, you use key of lenght 2. That mean, that: 1st, 3rd, 5th, 7th... letter is encrypted using same permutation (key "A") 2nd, 4th, 6th, 8th... letter is encrypted using same but different permutation (key "B")

Colisions between "key A permutation" and "key B permutation" doesn't count, because you are using two different keys.

Basically, you can understand using Vigenere Cipher as using n Substitution ciphers for one plaintext, altering them letter by letter.

  • $\begingroup$ Thanks for your help! I initially thought that the rules would apply to the whole key string of Vigenere. $\endgroup$
    – John Pham
    Commented Aug 14, 2022 at 2:29

What you call collision is actually a fixed point, where the encryption map does not "move" or "change" a symbol.

If the vigenere key is uniformly distributed, this will happen sometimes. This is not a problem. In fact a ciphers without fixed points is weak since it doesn't look random enough.

Even modern block ciphers, such as AES, are designed to look like a random permutation. So they will sometimes result in a fixed point.

Specifically Enigma was attacked in WWII since the plugboard design avoided a fixed point, so that no letter would map to itself under Enigma. See this question about the possibility of changing the design of Enigma to avoid this weakness.

In general, whether a modern cipher avoiding fixed points can be attacked in practice is a much more complicated question, due to various factors such as the mode of operation of the cipher etc. The question are fixed point free permutations inherentl flawed? has a good discussion with some very detailed answers.

  • $\begingroup$ Many thanks for your information. I wonder that if my example is <message = "AB", key = "BA", cipher = "CC">, is this result considered a fixed point? $\endgroup$
    – John Pham
    Commented Aug 14, 2022 at 2:35
  • $\begingroup$ For it to be a fixed point, assuming the plaintext length=ciphertext length =2, it would have to map to the same string, which is AB. So, no a fixed point is when a plaintext maps into itself. $\endgroup$
    – kodlu
    Commented Aug 14, 2022 at 9:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.