Topics in Cryptography

Course Schedule

Specific topics and suggested readings are subject to change as the quarter progresses.

Date Topic and Readings
Foundations of cryptography
Tuesday, April 4
(Alex)
[notes]

Topics:

  • Logistics & Course Overview
  • Relationship between symmetric primitives: from OWFs to PRGs, using Hardcore bits.

Readings:

Thursday, April 6
(Wilson)
[notes]

Topics:

  • Blum-Micali (PRG extension)
  • Goldreich-Goldwasser-Micali (PRF from PRG)
  • Luby-Rackoff (PRP from PRF)

Readings:

Tuesday, April 11
(Lior)
[notes]

Topics:

  • Commitment schemes

Readings:

Cryptanalysis
Thursday, April 13
(Alex)
[notes]

Topics:

  • GCD attack on RSA keys
  • Infineon attack
    • Coppersmith’s Theorem

Readings:

Monday, April 17 Problem Set 1 due at 10pm via Gradescope
Tuesday, April 18
(Lior)
[notes]

Topics:

  • Generic d-log algorithms: Baby-Step Giant-Step, Pollard Rho, Shoup’s lower bound
  • A non-generic algorithm: Index calculus

Readings:

Elliptic-curve cryptography
Thursday, April 20
(Wilson)
[notes]

Topics:

  • Introduction to elliptic curves

Readings:

Tuesday, April 25
(Lior)
[notes]

Topics:

  • Pairings-based cryptography: 3-party key-exchange, short signatures, hashing to elliptic curves

Readings:

Zero knowledge proofs
Thursday, April 27
(Alex)
[notes]

Topics:

  • Interactive proofs
  • Zero knowledge

Readings:

Monday, May 1 Problem Set 2 due at 10pm via Gradescope
Tuesday, May 2
(Wilson)
[notes]

Topics:

  • Sigma protocols

Readings:

Thursday, May 4
(Alex)
[notes]

Topics:

  • Non-interactive zero-knowledge
  • Fiat-Shamir heuristic

Readings:

Tuesday, May 9
(Lior)
[notes]

Topics:

  • Succinct Non-interactive Arguments (SNARGs) from PCPs
  • Polynomial commitments

Readings:

Thursday, May 11
(Wilson)
[notes]

Topics:

  • Polynomial Commitment + PolyIOP = SNARG
    • Polynomial IOPs
    • Plonkish Arithmetization
    • Plonk-Light: SNARG for Arithmetic Circuit-SAT

Readings:

Monday, May 15 Problem Set 3 due at 10pm via Gradescope
Multi-party computation
Tuesday, May 16
(Alex)
[notes]

Topics:

  • Oblivious transfer
  • Two-party computation: Yao’s garbled circuits

Readings:

Thursday, May 18
(Wilson)
[notes]

Topics:

  • Secret-sharing
  • Multi-Party Computation

Readings:

Tuesday, May 23
(Alex)
[notes]

Topics:

  • Differential privacy

Readings: Two great surveys:

Thursday, May 25
(Lior)
[notes]

Topics:

  • Private Information Retrieval

Readings

Monday, May 29 Problem Set 4 due at 10pm via Gradescope
Lattice cryptography
Tuesday, May 30
(Wilson)
[notes]

Topics:

  • The learning with errors (LWE) problem
  • Regev encryption

Readings:

Thursday, June 1
(Alex)
[notes]

Topics:

  • Fully homomorphic encryption (FHE)

Readings:

Tuesday, June 6
(Lior)

Topics:

  • To be decided
  • Course wrap-up

Readings:

Monday, June 12 Problem Set 5 due at 10pm via Gradescope