Compare

Cheat sheets, side by side

Quick-reference tables for when you already know the material and just need the numbers — each one links back to the full module for the reasoning behind it.

RSA vs. Diffie-Hellman vs. ECC

The three classical public-key families covered in this catalog, and the hard problem each one rests on.

RSADiffie-HellmanECC / ECDSA
Hard problemInteger factorizationDiscrete logarithm (mod p)Elliptic curve discrete log
Key size for ~128-bit security3072 bits3072 bits256 bits
What it's used forEncryption & signaturesKey exchange onlyKey exchange (ECDH) & signatures (ECDSA)
Speed at equivalent securitySlower — large keysSlower — large keysFast — small keys
Broken by Shor's algorithm?YesYesYes

AES modes of operation

The same block cipher, arranged four different ways — with very different security properties.

ECBCBCCTRGCM
Authenticated (integrity)?NoNo — needs a separate MACNo — needs a separate MACYes, built in
Needs a unique IV/nonce?N/AYesYesYes — reuse breaks security
Parallelizable?YesNo (decrypt only)YesYes
Identical plaintext blocks look identical?Yes — a known flawNoNoNo
Recommended today?NeverLegacy only, with HMACRarely used aloneYes — default choice

Hash functions

Output size alone doesn't tell the whole story — construction and real-world break history matter just as much.

MD5SHA-1SHA-256SHA-3-256
Output size128 bits160 bits256 bits256 bits
ConstructionMerkle-DamgårdMerkle-DamgårdMerkle-DamgårdSponge
Collision resistanceBrokenBroken~128-bit~128-bit
Vulnerable to length extension?YesYesYes (use HMAC)No
StatusDo not useDo not useCurrent standardCurrent standard

Symmetric vs. asymmetric encryption

Why real systems (like TLS) almost always use both, each for what it's good at.

Symmetric (AES)Asymmetric (RSA / ECC)
Keys involvedOne shared secret keyA public/private key pair
SpeedFast — used for bulk dataSlow — key exchange/signatures only
Key distribution problem?Yes — both sides need the secret in advanceNo — the public key can be shared openly
Typical role in TLSEncrypts the actual trafficEstablishes the key, or signs the handshake

Password hashing / KDFs

All four deliberately slow down password checking — they just spend the extra cost differently.

PBKDF2bcryptscryptArgon2id
Introduced2000199920092015
Memory-hard?NoNoYesYes
Tunable costIteration countCost factorCost, block size, parallelismTime, memory, parallelism
GPU/ASIC resistanceLowModerateHighHighest — current pick