Explore

Every topic, in plain words

A one-line answer for each of the 21 topics on this site, grouped by kind, with a first stop for each when you're ready to go deeper.

Foundations

The math and primitives underneath everything else — modular arithmetic, hashing, randomness, key derivation.

The history and purpose of cryptography
Before the math: what cryptography is actually trying to do, and the 2,500-year arms race between codemakers and codebreakers that got us here.
First stop: read the module (20 min) →
The math underneath: modular arithmetic & one-way functions
Every public-key algorithm in this catalog leans on the same idea: a calculation that's easy in one direction and effectively impossible to undo in the other.
First stop: read the module (22 min) →
Hash functions & digital signatures
One-way fingerprints for data, and the mechanism that proves a message is authentic and untampered — without encrypting anything.
First stop: read the module (26 min) →
Password hashing & key derivation: PBKDF2, bcrypt, scrypt, Argon2
A cryptographic hash is too fast for passwords. KDFs deliberately slow things down — and not all of them do it the same way.
First stop: read the module (11 min) →
Key sizes & security levels: what the numbers mean
128-bit AES, 2048-bit RSA, 256-bit ECC — these numbers aren't comparable at face value. Here's how to actually read them.
First stop: read the module (10 min) →
Random number generation: the primitive everything else depends on
Every key, nonce, and IV in this catalog assumes truly unpredictable randomness. When that assumption breaks, everything built on top breaks with it.
First stop: read the module (10 min) →
Why quantum computers break this: Shor's algorithm
The bridge module: why everything above is called "classical" cryptography, and exactly what a future quantum computer would do to it.
First stop: read the module (11 min) →

Symmetric-key

One shared key encrypts and decrypts. Fast, and doing most of the actual work in any connection.

Symmetric-key cryptography & AES
The same key locks and unlocks the data. Fast, simple in concept, and everywhere — from disk encryption to the bulk of every TLS session.
First stop: read the module (26 min) →
Stream ciphers & ChaCha20-Poly1305
Not every symmetric cipher works in fixed blocks. ChaCha20 generates a keystream instead — and paired with Poly1305, it's AES-GCM's fastest rival.
First stop: read the module (10 min) →

Public-key

Two mathematically linked keys solve the problem symmetric crypto can't: sharing a secret with a stranger.

RSA & public-key cryptography
Two mathematically linked keys — one public, one private — solve the problem symmetric crypto can't: how do you share a secret with someone you've never met?
First stop: read the module (30 min) →
RSA padding: OAEP, PKCS#1 v1.5, and why raw RSA fails
Textbook RSA is deterministic and malleable. Padding schemes are what actually make RSA encryption and signing safe to use in the real world.
First stop: read the module (13 min) →
Elliptic Curve Cryptography (ECC / ECDSA)
The same public-key guarantees as RSA, with dramatically smaller keys — because the underlying hard problem is different math entirely.
First stop: read the module (28 min) →

Protocols

How the primitives above get composed into systems you actually use — HTTPS, SSH, certificates, messaging.

Diffie-Hellman key exchange
Two parties agree on a shared secret over a public channel, without ever transmitting the secret itself — the idea that started public-key cryptography.
First stop: read the module (24 min) →
X.509 certificates & the PKI trust hierarchy
A certificate is just a signed statement binding a public key to an identity. Here's what's actually inside one, and how revocation works.
First stop: read the module (24 min) →
JSON Web Tokens & API authentication
JWTs put a signed claim in every request header. They're everywhere in modern APIs — and a few well-known implementation mistakes keep recurring.
First stop: read the module (20 min) →
SSH: key exchange, host keys, and authentication
The protocol behind every remote login and git push combines the same primitives as TLS, arranged slightly differently.
First stop: read the module (10 min) →
TLS in practice: how HTTPS puts it all together
Every padlock icon runs a coordinated handshake combining key exchange, certificates, symmetric encryption, and integrity checks — in under a round trip.
First stop: read the module (16 min) →
End-to-end encrypted messaging: the Signal Protocol
TLS protects data in transit to a server. The Signal Protocol's Double Ratchet goes further — encrypting so not even the server operator can read your messages.
First stop: read the module (13 min) →

Practice

Where cryptography meets the real world — attacks, blockchains, and the risk that's already here.

Side-channel & timing attacks: when the math is fine but the implementation isn't
A cryptographic algorithm can be mathematically unbreakable and still leak its secret key through how long it takes to run.
First stop: read the module (11 min) →
Cryptography inside blockchains: hashing, Merkle trees, and signatures
Bitcoin and Ethereum don't invent new cryptography — they compose the same primitives in this catalog into a specific, tamper-evident structure.
First stop: read the module (12 min) →
Harvest now, decrypt later: the risk that's already here
You don't need a working quantum computer today to be at risk today. Anything encrypted now with RSA or ECC can simply be recorded and decrypted later.
First stop: read the module (9 min) →