References
Where this content comes from
Every module on this site is written from the official standards, RFCs, and original papers that actually define these algorithms — listed below, grouped the same way the Learn catalog is. Worked examples (like the toy RSA and Diffie-Hellman key pairs) are computed directly from those specifications, not copied from a textbook.
The diagrams are original illustrations built for this site, in some cases inspired by the layout of well-known public explanations (including relevant Wikipedia articles) — not reproductions of any single source.
The explanatory text itself was drafted with Claude (Anthropic), synthesizing the sources below rather than quoting them, and reviewed for technical accuracy during writing. If you spot something that doesn't match the underlying spec, treat the spec as authoritative — and consider it a bug in this site worth reporting.
Foundational papers
- Communication Theory of Secrecy Systems ↗
C. E. Shannon, Bell System Technical Journal, 1949
The paper that put cryptography on a mathematical footing, and proved the one-time pad achieves perfect secrecy.
- New Directions in Cryptography ↗
W. Diffie & M. Hellman, IEEE Transactions on Information Theory, 1976
The original public-key key-exchange paper.
- A Method for Obtaining Digital Signatures and Public-Key Cryptosystems ↗
R. Rivest, A. Shamir, L. Adleman, Communications of the ACM, 1978
The original RSA paper.
- Algorithms for Quantum Computation: Discrete Logarithms and Factoring ↗
P. W. Shor, Proceedings of the 35th Annual Symposium on Foundations of Computer Science, 1994
The paper behind the entire post-quantum migration this site is framed around.
Symmetric-key cryptography
Public-key cryptography (RSA, Diffie-Hellman, ECC)
- FIPS 186-5 — Digital Signature Standard (DSS) ↗
NIST
Covers RSA and ECDSA signature parameters.
- RFC 8017 — PKCS #1: RSA Cryptography Specifications Version 2.2 ↗
IETF
OAEP and PKCS#1 v1.5 padding.
- SP 800-56A Rev. 3 — Recommendation for Pair-Wise Key-Establishment Using Discrete Logarithm Cryptography ↗
NIST
Covers Diffie-Hellman and ECDH.
- SP 800-186 — Recommendations for Discrete Logarithm-based Cryptography: Elliptic Curve Domain Parameters ↗
NIST
Hashing, signatures & key derivation
- FIPS 180-4 — Secure Hash Standard (SHS) ↗
NIST
SHA-2 family.
- FIPS 202 — SHA-3 Standard ↗
NIST
- RFC 2104 — HMAC: Keyed-Hashing for Message Authentication ↗
IETF
- RFC 8018 — PKCS #5: Password-Based Cryptography Specification Version 2.1 ↗
IETF
PBKDF2.
- RFC 9106 — Argon2 Memory-Hard Function for Password Hashing and Proof-of-Work Applications ↗
IETF / IRTF CFRG
Protocols (TLS, certificates, JWT, SSH, Signal)
- RFC 8446 — The Transport Layer Security (TLS) Protocol Version 1.3 ↗
IETF
- RFC 5280 — Internet X.509 Public Key Infrastructure Certificate and CRL Profile ↗
IETF
- RFC 6960 — X.509 Internet PKI Online Certificate Status Protocol (OCSP) ↗
IETF
- RFC 6962 — Certificate Transparency ↗
IETF
- RFC 7519 — JSON Web Token (JWT) ↗
IETF
- RFC 7515 — JSON Web Signature (JWS) ↗
IETF
- RFC 4251 — The Secure Shell (SSH) Protocol Architecture ↗
IETF
- The X3DH Key Agreement Protocol ↗
Signal
- The Double Ratchet Algorithm ↗
Signal
Post-quantum cryptography & the quantum threat
- FIPS 203 — Module-Lattice-Based Key-Encapsulation Mechanism Standard (ML-KEM) ↗
NIST
- FIPS 204 — Module-Lattice-Based Digital Signature Standard (ML-DSA) ↗
NIST
- FIPS 205 — Stateless Hash-Based Digital Signature Standard (SLH-DSA) ↗
NIST
- SP 800-57 Part 1 Rev. 5 — Recommendation for Key Management ↗
NIST
Source of the key-size/security-level equivalence table used in this catalog.