Topics in Cryptography

Course Schedule

Date Topic and Readings
Foundations of Cryptography
Tuesday, April 7
(Florian)
Topics (Lecture Notes)
  • Logistics and administration
  • Basic cryptogrpahic primitives and the relation between them: OWFs, PRGs
Readings
Thursday, April 9
(Dima)
Topics (Lecture Notes)
  • The Blum-Micali PRG and hybrid arguments
  • Constructing PRGs from one-way permutations (the Goldreich-Levin Theorem)
Readings
Tuesday, April 14
(Saba)
Topics (Lecture Notes)
  • Commitment schemes
  • The random oracle model
Readings
Cryptanalysis
Thursday, April 16
(Florian)
Topics (Lecture Notes)
  • Real-world cryptanalysis:
    • Infineon attack
    • GCD attack on RSA keys
Readings
Monday, April 20 Problem Set 1 Due at 11:59pm via Gradescope.
Tuesday, April 21
(Dima)
Topics (Lecture Notes)
  • Discrete-log algorithms: Baby-Step Giant-Step, Pollard Rho
  • Index calculus
Readings
Elliptic-curve cryptography
Thursday, April 23
(Saba)
Topics (Lecture Notes)
  • Introduction to elliptic curves
Readings
Tuesday, April 28
(Florian)
Topics (Lecture Notes)
  • Pairings-based cryptography: 3-party key-exchange, short signatures, identity-based encryption
Readings
Zero knowledge
Thursday, April 30
(Saba)
Topics (Lecture Notes)
  • Interactive proofs
  • Zero knowledge
Readings
Monday, May 4 Problem Set 2 Due at 11:59pm via Gradescope
Tuesday, May 5
(Dima)
Topics (Lecture Notes)
  • Sigma protocols
Readings
Thursday, May 7
(Saba)
Topics (Lecture Notes)
  • Non-interactive zero-knowledge
  • Fiat-Shamir heuristic
Readings
Tuesday, May 12
(Florian)
Topics (Lecture Notes)
  • Succinct Non-interactive Arguments (SNARGs)
  • PCPs, Linear PCPs
Readings
Multi-party computation
Thursday, May 14
(Saba)
Topics (Lecture Notes)
  • Oblivious transfer
  • Two-party computation: Yao's garbled circuits
Readings
Monday, May 18 Problem Set 3 Due at 11:59pm via Gradescope
Tuesday, May 19
(Dima)
Topics (Lecture Notes)
  • Secret sharing
Readings
Thursday, May 21
(Florian)
Topics (Lecture Notes)
  • Multi-party computation
Readings
Tuesday, May 26
(Florian)
Topics (Lecture Notes)
  • Differential privacy
Readings
Thursday, May 28
(Dima)
Topics (Lecture Notes)
  • Private Information Retrieval
Readings
Monday, June 1 Problem Set 4 Due at 11:59pm via Gradescope
Lattice-based cryptography
Tuesday, June 2
(Florian)
Topics (Lecture Notes)
  • Lattice signatures
  • The learning with errors (LWE) problem
  • Regev encryption
Readings
Thursday, June 4
(Dima)
Topics (Lecture Notes)
  • Fully homomorphic encryption (FHE), part 1
Readings
Topics
Tuesday, June 9
(Saba)
Topics
  • Fully homomorphic encryption (FHE), part 2
  • Course wrap-up
Readings
Wednesday, June 10 Problem Set 5 Due at 11:59pm via Gradescope