50 algorithms, modes, protocols and concepts across 8 categories: how each one works, whether it is still safe to use, the attacks against it and what the exam expects you to know. 9 of them are legacy or broken - recognising those is half of every cryptography question.
Status (Recommended, Acceptable, Legacy - avoid, Broken) summarises current NIST, IETF and OWASP guidance in plain English; each entry links to the source. Practise with the crypto lab or look up terms in the glossary.
| Name | Status |
|---|---|
| AESSymmetric block cipher | Recommended |
| ChaCha20Symmetric stream cipher (AEAD with Poly1305) | Recommended |
| 3DESSymmetric block cipher (legacy) | Legacy - avoid |
| DESSymmetric block cipher (obsolete) | Broken |
| Blowfish/TwofishSymmetric block ciphers | Legacy - avoid |
| RC4Symmetric stream cipher (obsolete) | Broken |
| ECBBlock cipher mode (no IV) | Legacy - avoid |
| CBCBlock cipher mode (confidentiality only) | Acceptable |
| CTRBlock cipher mode that behaves as a stream cipher | Acceptable |
| GCMAuthenticated encryption (AEAD) mode | Recommended |
| XTSDisk and storage encryption mode | Recommended |
| RSAPublic-key encryption and digital signatures | Acceptable |
| DH / DHEKey agreement | Acceptable |
| ECDH / ECDHEKey agreement over elliptic curves | Recommended |
| ECDSADigital signatures | Recommended |
| Ed25519Digital signatures | Recommended |
| ElGamalPublic-key encryption (also a signature scheme) | Legacy - avoid |
| MD5Cryptographic hash function (obsolete) | Broken |
| SHA-1Cryptographic hash function (deprecated) | Broken |
| SHA-2Cryptographic hash functions | Recommended |
| SHA-3Cryptographic hash functions and extendable-output functions | Recommended |
| BLAKE2/3Cryptographic hash functions | Acceptable |
| HMACMessage authentication (integrity + origin with a shared key) | Recommended |
| PBKDF2Password-based key derivation and password hashing | Acceptable |
| bcryptPassword hashing | Acceptable |
| scryptMemory-hard password hashing and key derivation | Acceptable |
| Argon2idMemory-hard password hashing | Recommended |
| HKDFKey derivation from high-entropy secrets | Recommended |
| TLS 1.2Secure transport protocol | Acceptable |
| TLS 1.3Secure transport protocol | Recommended |
| SSL / early TLSObsolete secure transport protocols | Legacy - avoid |
| X.509Binding public keys to identities | Recommended |
| PinningRestricting which certificates or keys an application accepts | Acceptable |
| OCSP / CRLChecking whether a certificate has been revoked | Acceptable |
| IPsecNetwork-layer encryption and authentication (VPNs) | Recommended |
| SSHEncrypted remote administration and file transfer | Recommended |
| KerberosTicket-based network authentication (symmetric keys) | Acceptable |
| PGP / S/MIMEEnd-to-end email and file encryption and signing | Acceptable |
| ML-KEMPost-quantum key encapsulation | Recommended |
| ML-DSAPost-quantum digital signatures | Recommended |
| SLH-DSAPost-quantum stateless hash-based signatures | Recommended |
| Quantum threatWhy cryptography is migrating to post-quantum algorithms | Concept |
| PFSProtecting past sessions if a long-term key is stolen | Concept |
| Key stretchingMaking weak passwords costly to guess | Concept |
| SaltMaking every password hash unique | Concept |
| Nonce / IVMaking each encryption unique | Concept |
| Key managementProtecting keys across their lifecycle | Concept |
| Sign vs encryptChoosing the right key for confidentiality or authenticity | Concept |
| SteganographyHiding the existence of a message | Concept |
| HomomorphicComputing on data while it stays encrypted | Concept |