Cryptography/Basic Design Principles
Good ciphers often attempt to have the following traits.
Kerckhoffs's principle edit
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).
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.