03 — Foundations

Kerckhoffs's Principle

"The enemy knows the system." Security must live in the key — never in the algorithm's secrecy.

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

— Auguste Kerckhoffs, 1883 (in "La Cryptographie Militaire")

Shannon's restatement

Claude Shannon (1949) reformulated it as "the enemy knows the system" — the foundational design assumption of TLS, AES, RSA, and Signal. Public algorithms get peer review; secret algorithms get broken quietly after deployment.

Implications

Counter-examples (violations)

Open design wins — why?
Public review finds flaws before wide deployment; interoperability needs a shared spec; and key rotation is cheap while algorithm replacement is expensive. Secrecy of design adds zero bits of key strength once the device ships.
Exam one-liner
Security of a cryptosystem must depend only on the secrecy of the key, never on the secrecy of the algorithm.
← Prev
02 · Cryptographic Primitives
Next →
04 · Simple Substitution Cipher