Lecture notes (or sometimes a PowerPoint presentation) with the most essential information will be made available after each lecture.
A preliminary list of lectures (there might be changes in content).
Lectures
- Lecture 1: Introduction (11.02) - Course organization, modern approach to crypto, encryption, one-time pad, perfect secrecy.
- Lecture 2 Stream Ciphers (18.02) - Stream cipher, pseudorandom generator, intro to security proofs.
- Lecture 3 Block Ciphers (25.02) - Real-world PRG, IND-CPA, pseudorandom permutation, block cipher, modes of operation
- Lecture 4 Block Ciphers/Key Exchange (04.03) - Counter Mode, AES, Idea of key exchange, groups.
- Lecture 5 Key Exchange (11.03) - More group theory, discrete logarithm assumption, Diffie-Hellman key exchange.
- Lecture 6 Public Key Encryption (18.03) - Definition of PKE, IND-CPA security of PKE, Elgamal PKE, hybrid encryption, key encapsulation mechanism.
- Lecture 7 Hash functions (25.03) - Collision resistance, Davies-Meyer construction, Merkle-Damgård construction, birthday attack.
- Lecture 8 MACs and CCA Security (01.04) - Message authentication codes, simple construction, motivation for CCA, CCA definition.
- Lecture 9 Authentication Protocols (08.04) - Private key CCA encryption, authentication protocol motivation, Schnorr's protocol, proof sketch.
- Lecture 10 Digital Signatures (15.04) - EUF-CMA security, Schnorr's signature, random oracle model, public key infrastructure.
- Lecture 11 Zero-knowledge Proofs (22.04) - Idea of zero-knowledge proof, Sigma protocols, Sigma protocol for encryption of 0.
- Lecture 12 Zero-knowledge Proofs II (29.04) - Sigma protocol for encryption of 1, OR-proof.
- Lecture 13 (06.05) -
- Lecture 14 (13.05) -
- Lecture 15 (20.05) - Substitute lecturer
- Lecture 16 (27.05) -