Cryptography
Understand the primitives that secure everything else.
20+
completed
~16.5h
total time
6
projects
Symmetric Encryption Fundamentals
Encrypt real data with AES-256-GCM and ChaCha20-Poly1305 using Python's cryptography library, and understand why nonce reuse is catastrophic.
Public Key Cryptography
Generate RSA and X25519 key pairs and build a hybrid encryption scheme the way real protocols do it.
Hashing and Digital Signatures
Use cryptographic hash functions correctly, build an HMAC, and sign and verify data with Ed25519.
TLS/SSL Deep Dive
Inspect and build real TLS connections with OpenSSL and write a scanner that audits which protocol versions and ciphers a server offers.
Implement a Password Hashing Scheme
Hash and verify passwords correctly with Argon2id, and build a login flow with a proper rehash-on-login migration path.
Common Cryptographic Attacks
Reproduce four real attack classes end to end — ECB pattern leakage, a CBC padding oracle, GCM nonce reuse, and hash length-extension — then patch each one.
