The following is a *tentative* syllabus.
Chapter numbers refer to the table of contents available here.
- Lectures 1-3: Classical vs. modern cryptography; some historical ciphers; principles of modern cryptography.
(Chapter 1.)
- Lectures 4-5: Perfectly-secret encryption. (Chapter 2.)
- Lectures 6-10: Computational security. Symmetric-key encryption. (Chapter 3.)
- Lectures 11-14: Message authentication and hash functions. (Chapter 4.)
- First midterm (in class)
- Lectures 16-18: Block ciphers. (Chapter 5.)
- Lectures 19-20: Theoretical constructions. (Sections 6.1, 6.2.)
- Lectures 21-27: Number theory; cryptographic hardness assumptions and their applications. (Chapter 7.)
- Lectures 28-29: The public-key revolution; Diffie-Hellman key exchange. (Chapter 9.)
- Lectures 30-34: Public-key encryption. (Chapter 10.)
- Second midterm (in class)
- Lectures 36-38: Digital signatures. (Chapter 12.)
- Lectures 39-41: The random oracle model and efficient cryptographic schemes. (Chapter 13.)
- As time permits, we will cover some advanced topics.