Instructor: | Mark Zhandry () |

Office Hours: Monday 10am (EST) | |

TA: | Udaya Gai |

Office Hours: Tuesday 7-8pm (EST) | |

TA: | Anunay Kulshrestha |

Office Hours: Wednesday 1:30-2:30pm (EST) | |

Lecture: | TuTh 11:00am - 12:20pm, Zoom |

Grading: | 40% Homeworks, 30% Projects, 30% take-home final |

Textbook: | There is no official text for this course, however Introduction to Modern Cryptography by Katz and Lindell (KL) is a good resource. Each lecture will have pointers to the appropriate sections of KL for those following along with the book. |

Another new feature in modern cryptography is its foundations. Until recently, cryptography was largely an art form based on intuition and ad hoc tweaks to block vulnerabilities. Modern crytpography is instead more of a science, characterized by rigorous mathematical definitions and theorems that guide the design of new systems.

This course is an introduction to modern cryptography, focusing on the theoretical foundations, with some attention to practical considerations. We will cover a variety of topics, including secret key and public key encryption, authentication, commitments, pseudorandom generators, and zero knowledge proofs.

Lecture | Topic | KL Section | Notes | ||

1 - Tu, 9/1 | Course introduction, Pre-modern Crypto Part I | 1.3 | [1] | ||

2 - Th, 9/3 | Pre-modern Crypto Part II | 1.4-2.2 | [2] | ||

3 - Tu, 9/8 | Definitions in Cryptography, Randomized Encryption | [3] | |||

4 - Th, 9/10 | Limitations of Information-Theoretic Security, Stream Ciphers, PRGs, and Computational Assumptions | 2.3-3.3 | [4] | ||

5 - Tu, 9/15 | Constructing PRGs | 6.1 | [5] | ||

6 - Th, 9/17 | CPA security and PRFs | 3.4-3.5 | [6] | ||

7 - Tu, 9/22 | PRPs, Block Ciphers, Modes of Operation | 3.6, 6.2 | [7] | ||

8 - Th, 9/24 | Constructing Block Ciphers | 6.2 | [8] | ||

9 - Tu, 9/29 | Attacks on Block Ciphers | 6.2 | |||

10 - Th, 10/1 | Message Integrity, MACs | 4.1-4.4, 4.6 | [10] | ||

11 - Tu, 10/6 | Authenticated Encryption, CCA Security | 4.5 | [11] | ||

12 - Th, 10/8 | Collision Resistant Hashing | 5.1-5.4, 6.3 | [12] | ||

Tu, 10/13 | No Class - Fall Break | ||||

13 - Th, 10/15 | Commitment Schemes | [13] | |||

14 - Tu, 10/20 | Number-theoretic constructions of symmetric primitives | 8.3-8.4 | [14] | ||

15 - Th, 10/22 | Number-theoretic constructions of symmetric primitives | 8.3-8.4 | [15] | ||

16 - Tu, 10/27 | Relationships between Symmetric Primitives | 7.2 | [16] | ||

17 - Th, 10/29 | Diffie Hellman Key Exchange | 10.3 | [17] | ||

18 - Tu, 11/3 | Public Key Encryption | 11.1-11.4 | [18] | ||

19 - Th, 11/5 | RSA, Trapdoor Permutations | 11.5, 13.1 | [19] | ||

20 - Tu, 11/10 | Digital Signatures | 12.1-12.4 | [20] | ||

21 - Th, 11/12 | Digital Signatures, Identification Protocols | 12.5 | [21] | ||

22 - Tu, 11/17 | Identification Protocols | 12.5 | [22] | ||

Th, 11/19 | Class Cancelled | ||||

24 - Tu, 11/24 | Wrap up | [23] |

Homework 5. Due November 10.

Homework 4. Due October 27.

Homework 3. Due October 20.

Homework 2. Due September 29.

Homework 1. Due September 15.

HW1.tex

template.tex

Old exams: Spring 2017 Spring 2018 Spring 2020

p = total project points (out of 300)

f = final points (out of 300)

Numerical grade = (h+p+f)/10

There is no set curve or grading scale for the course (so for example a 90% may or may not end up being an A). However, expect the grade distribution to be roughly consistent with upper-level COS courses.