Last modified on 12 July 2014, at 05:08

Cryptography/Basic Design Principles

Good ciphers often attempt to have the following traits.

Kerckhoffs's principleEdit

Kerckhoffs's principle, also called Kerckhoffs's law:

A cryptosystem should be secure even if everything about the system, except the key, is public knowledge.

In the words of Claude Shannon, "The enemy knows the system." (Shannon's maxim).


To do:
Say something about "security through obscurity" here. Perhaps also something about Kerckhoff's other 5 principles.


Having good diffusion means that making a small change in the plain text should ideally cause as much as possible of cipher text to have a fifty percent possibility of change.

For example a Caesar cipher has almost no diffusion while a block cypher may contain lots of it.


For good confusion the relationship between the cypher text and the plain text should be as complex as possible.

Further readingEdit