week 1
Background and overview.
One-time encryption using stream ciphers.
Semantic security.
week 2
Block ciphers and pseudorandom functions.
Chosen plaintext security and modes of operation.
The DES and AES block ciphers.
week 3
Message integrity. CBC-MAC, HMAC, PMAC, and CW-MAC.
Collision resistant hashing.
week 4
Authenticated encryption. CCM, GCM, TLS, and IPsec.
Key derivation functions.
Odds and ends: deterministic encryption, non-expanding encryption, and format preserving encryption.
week 5
Basic key exchange: Diffie-Hellman, RSA, and Merkle puzzles.
A crash course in computational number theory.
Number theoretic hardness assumptions.
week 6
Public key encryption.
Trapdoor permutations and RSA.
The ElGamal system and variants.
Part 2:
(offered at a later date)
week 7
Digital signatures and certificates.
week 8
Identification protocols and authenticated key exchange.
TLS key exchange.
week 9
Privacy mechanisms: group signatures and credential systems.
Zero knowledge protocols.
week 10
Advanced topics (chosen by popular demand).