Instructor: | Mark Zhandry () |

Office Hours: Fridays 11am (Zoom) | |

TA: | Ben Kuykendall |

Office Hours: Mondays 3pm (Zoom) | |

TA: | Jiaxin Guan |

Office Hours: Wednesdays 1pm (Zoom) | |

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

Grading: | 40% for roughly weekly homeworks, 30% Projects, 30% take-home final |

Piazza: | https://piazza.com/class/k62c87yjhgl51n |

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, 2/4 | Course introduction, Pre-modern Crypto Part I | 1.3 | [1] |

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

3 - Tu, 2/11 | Definitions in Cryptography, Randomized Encryption | [3] | |

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

5 - Tu, 2/18 | Constructing PRGs | 6.1 | [5] |

6 - Th, 2/20 | CPA security and PRFs | 3.4-3.5 | [6] |

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

8 - Th, 2/27 | Constructing Block Ciphers | 6.2 | [8] |

9 - Tu, 3/3 | Attacks on Block Ciphers | 6.2 | [9] |

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

11 - Tu, 3/10 | Message Integrity, MACs, continued | 4.1-4.4, 4.6 | [11] |

12 - Th, 3/12 | Class Cancelled | ||

M, 3/20 | No Class - Spring Break | ||

W, 3/22 | |||

13 - Tu, 3/24 | Authenticated Encryption, CCA Security | 4.5 | [12] |

14 - Th, 3/26 | Collision Resistant Hashing | 5.1-5.4, 6.3 | [13] |

15 - Tu, 3/31 | Commitment Schemes | [14] | |

16 - Th, 4/2 | Number-theoretic constructions of symmetric primitives | 8.3-8.4 | [15] |

17 - Tu, 4/7 | Number-theoretic constructions of symmetric primitives | 8.3-8.4 | [16] |

18 - Th, 4/9 | Public Key Encryption | 11.1-11.4 | [17] |

19 - Tu, 4/14 | RSA, Trapdoor Permutations | 11.5, 13.1 | [18] |

20 - Th, 4/16 | Digital Signatures | 12.1-12.4 | [19] |

21 - Tu, 4/21 | Digital Signatures, Identification Protocols | 12.5 | [20] |

22 - Th, 4/23 | Identification Protocols | 12.5 | [21] |

23 - Tu, 4/28 | Zero Knowledge | [22] | |

24 - Th, 4/30 | Wrap up | [23] |

https://www.when2meet.com/?8678874-HzQIA

HW1.tex

template.tex

Old exams: Spring 2017 Spring 2018

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.