Schedule

This is a tentative schedule of lecture topics.

Click on a lecture for more detail on the topics covered. Notes will be posted after each lecture.

Foundations

Topics:

  • Logistics & Course Overview
  • What is secure computation? Physical demonstrations.
  • Computational indistinguishability
  • PRGs

Readings:

  • Boneh-Shoup (§3.1: PRGs, §3.11: computational and statistical indistinguishability)

Topics:

  • Hybrid arguments
  • Blum-Micali (PRG stretching)
  • Goldreich-Goldwasser-Micali (PRF from PRG)

Readings:

  • Luca Trevisan’s notes.
  • Boneh-Shoup (§3.4: composing PRGs, §4.4: PRFs, §4.6: GGM)

Topics:

  • Coin-flipping problem
  • Commitments
  • Groups, fields, the discrete logarithm problem
  • Pedersen commitments

Readings:

Zero knowledge

Topics:

  • graph (non)isomorphism (GI/GNI)
  • IPs
  • An IP for GNI
  • Counting problems (#P) and the sum-check protocol

Readings:

Sep 4, 6pm: hw1 due

Sep 7: Labor day: No class

Topics:

  • ZK (simulation)
  • non-interactive ZK is impossible
  • Honest-verifier zero knowledge (HVZK)
  • HVZK for GI, ZK for GI

Readings:

Topics:

  • Hamiltonian cycle (NP-complete)
  • HVZK for Hamiltonian cycle
  • ZK for Hamiltonian cycle

Readings:

Topics:

  • identification protocols
  • knowledge soundness/proofs of knowledge (PoK) (extraction)
  • Schnorr’s protocol

Readings:

Sep 18, 6pm: hw2 due

Topics:

  • Sigma protocols
  • Sigma protocol combinators
  • Sigma protocols for circuits

Readings:

  • Boneh-Shoup (§19.4: sigma protocols, §19.5: examples, §19.7: combinators)

Topics:

  • Goal: NIZKs (recall: impossible in the standard model)
  • The random oracle model
  • Commitments from a random oracle
  • The Fiat-Shamir transform

Readings:

Succinctness

Topics:

  • Motivation: delegating computation
  • Succinct proofs
  • Probabilistically checkable proofs (PCPs)
  • Kilian-Micali

Readings:

Topics:

  • Polynomial commitments
  • Pairings (bilinear maps)
  • KZG

Readings:

  • Boneh-Shoup (§15.4: pairing based cryptography)
  • KZG, by Kate, Zaverucha, and Goldberg (Asiacrypt 2010)

Oct 2, 6pm: hw3 due

Oct 5: Fall break: No class

Topics:

  • PIOPs
  • Polynomial commitment + PIOP = SNARK
  • Some PIOPs (zero-check, univariate sum-check, Fibonacci)

Readings:

Topics:

  • Arithmetic circuit satisfiability (AC)
  • Plonk: a PIOP for AC

Readings:

Oct 14: midterm exam

Topics:

  • Multivariate polynomials
  • PST multivariate commitments
  • Multilinear extensions and layered circuits

Readings:

Oct 23, 6pm: hw4 due

Topics:

  • Uninstantiability results in the ROM
  • GK uninstantiability for a ROM signature (contrived)
  • KRS uninstantiability for GKR + Fiat-Shamir (somewhat contrived)

Readings:

Multi-party computation

Topics:

  • Oblivious transfer
  • Diffie-Hellman assumptions
  • Bellare-Micali OT, from Diffie-Hellman

Readings:

Topics:

  • MPC (passive security)
  • Garbled circuits
  • Optimizations (Vlad!)

Readings:

Topics:

  • Secret sharing (additive and Shamir)
  • Beaver’s protocol: arithmetic MPC
  • active security for MPC

Readings:

Nov 6, 6pm: hw5 due

Topics:

  • Differential privacy
  • The Gaussian mechanism
  • Composition
  • Concrete security: Apple’s QuickType, Microsoft’s US Broadband dataset

Readings:

Homomorphic encryption

Topics:

  • PIR
  • Two-server, information-theoretic PIR (Chor-Goldreich-Kushilevitz-Sudan)
  • Additively homomorphic encryption
  • Single-server PIR from AHE (Kushilevitz-Ostrovsky)

Readings:

Topics:

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

Readings:

Topics:

  • Fully homomorphic encryption
  • GSW: FHE from LWE via noisy eigenvalues

Readings:

Nov 20, 6pm: hw6 due

Topics:

  • digital signatures
  • remote attestation
  • deployments
  • attacks (Daniel!)

Readings:

  • Boneh-Shoup (§13: digital signatures)
  • TBD: TEE reading

Projects

Nov 25: Happy Thanksgiving! No class

Dec ??: final exam (if no project)