Prerequisites: The main pre-requisite is a high degree of mathematical maturity. We will also rely on some rudimentary knowledge of probability, algorithms, and theory of computation. No prior knowledge of cryptography or number theory is required (but some familiarity will be helpful).
Although the course is intended for PhD students, interested undergraduate and Masters students are encouraged to contact the instructor.
Class/Date | Topic Covered | Notes |
Class 1, 1/6: | introduction, perfect secrecy, one-time pad, optimality. | scribe notes , slides |
Class 2, 1/9: | authentication, secret sharing | scribe notes. |
Class 3, 1/13: | multiparty computation | scribe notes. |
Class 4, 1/16: | statistical security, computational security, indistinguishability | scribe notes. |
Class 5, 1/23: | pseudorandom generators (PRGs), increasing the output size | scribe notes |
Class 6, 1/27: | pseudorandom functions (PRFs), GGM construction from PRGs, CPA security | class slides, PRF notes, CPA notes |
Class 7, 1/30: | MACs from PRFs, One-way functions | MAC slides, OWF Slides, notes |
Class 8, 2/3: | Hardcore Bits, Goldreich-Levin theorem | OWF Slides, scribe notes I, scribe notes II (from 2015) |
Class 9, 2/6: | hash functions, Merkle-Damgaard, Merkle Tree, random oracle | scribe notes |
Class 10, 2/10: | number theory, cyclic groups | scribe notes |
Class 11, 2/13: | discrete logarithms, CDH and DDH assumptions, Diffie-Hellman Key-Agreement | scribe notes |
Class 12, 2/20: | ElGamal Encryption, hash functions from DL, PRGs from DDH, Naor-Reingold PRF | scribe notes |
Class 13, 2/24 | trapdoor-permutations, RSA, Rabin | scribe notes |
Class 14, 2/27 | lattice-based cryptography | slides |
Class 15,16 3/10 and 3/13: | Signatures from CRHFs (and OWFs) | scribe notes, slides |
Class 17,18 3/17,3/20: | zero-knowledge proofs for NP | slides, scribe notes 1, scribe notes 2 scribe notes 3 |
Class 19,20 3/24, 3/27: | multiparty computation | slides |