Course Calendar

See the course overview for details on the course content and prerequisites.

Textbook: This course will not use a textbook. Ron Rivest has compiled a comprehensive list of readings on cryptography and computer security. If you are interested in going deeper into any topic, or if you need ideas for your final project, these references are a great place to start. An optional supplementary read is "A Graduate Course in Applied Cryptography" by Boneh and Shoup.

Course policies: Please read them carefully. You are responsible for knowing and following all of the policies—especially the collaboration policy and the policy on AI assistants (GPT and friends). Please do not make us sad, and yourself even more sad, by violating the collaboration policy.

Warning: We may change any content on this website, including the calendar, at any time.

MondayTuesday WednesdayThursday Friday
feb 2🎬
Lecture 1, sd
Overview of crypto; Overview of class, Cryptographic Hashing
First day of classes
feb 3
Published: Pset 1
feb 4🎬
Lecture 2, sd
Symmetric Encryption: Construction from PRF
feb 5 feb 6🎬
Recitation 1, all
Number Theory Review


DUE: Review course policies.

DUE: Read about final project
feb 9🎬
Lecture 3, sd
Symmetric-key primitives I
feb 10 feb 11🎬
Lecture 4, sd
Symmetric-key primitives II
feb 12 feb 13🎬
Recitation 2, all
Choosing a project topic


DUE: Pset 1

DUE: Post final project idea on Piazza
feb 16
Presidents' day
feb 17🎬
Lecture 5, sd
Diffie-Hellman Key Exchange and Public-key Encryption
Published: Pset 2

Optional reading:
New Directions in Cryptography (1976)

Monday classes held
feb 18🎬
Lecture 6, sd
Rabin, RSA, Why post-quantum crypto?
feb 19 feb 20

DUE: Project proposal
feb 23
Snow day
feb 24 feb 25🎬
Lecture 7, sd
Public-key Encryption: Constructions from LWE (Regev)
feb 26 feb 27🎬
Recitation 3, all
Review - LWE


DUE: Pset 2
mar 2🎬
Lecture 8, sd
Private Information Retrieval
Discuss your project with TAs
mar 3
Published: Pset 3
Discuss your project with TAs
mar 4🎬
Lecture 9, sd
Fully Homomorphic Encryption (FHE) 1
Discuss your project with TAs
mar 5
Discuss your project with TAs
mar 6
Recitation 4, all
Project meetings


DUE: By this date, meet with a TA to discuss your project
Discuss your project with TAs
mar 9🎬
Lecture 10, sd
FHE 2
mar 10 mar 11🎬
Lecture 11, sd
Interactive Proofs and Zero Knowledge
mar 12 mar 13
mar 16🎬
Lecture 12, sd
Secret sharing
mar 17 mar 18🎬
Lecture 13, sd
Secure Multiparty Computation

DUE: Pset 3
mar 19 mar 20🎬
Recitation 5, all
MPC Review
mar 23
Spring break
mar 24
Spring break
mar 25
Spring break
mar 26
Spring break
mar 27
Spring break
mar 30🎬
Lecture 14, sd
MPC: Applications
Discuss your project with TAs
mar 31
Published: Pset 4
Discuss your project with TAs
apr 1🎬
Lecture 15, sd
Sumcheck
Discuss your project with TAs
apr 2
Discuss your project with TAs
apr 3
Recitation 6, all
Project meetings


DUE: By this date, meet with a TA to discuss your project
Discuss your project with TAs
apr 6🎬
Lecture 16, guest
Guest lecture by Jim Bidzos
apr 7 apr 8🎬
Lecture 17, guest
Guest lecture by Ron Rivest
apr 9 apr 10🎬
Recitation 7, all
Midterm Review


DUE: Pset 4
apr 13🎬
Lecture 18, sd
GKR Protocol
apr 14 apr 15
Midterm quiz
apr 16 apr 17

DUE: Project check in
apr 20
Patriots' day
apr 21
DROP DATE
apr 22🎬
Lecture 19, sd
zk-SNARKs
apr 23 apr 24
apr 27🎬
Lecture 20, sd
Oblivious RAM
apr 28 apr 29🎬
Lecture 21, sd
Open questions
apr 30 may 1
may 4🎬
Project presentations
may 5 may 6🎬
Project presentations
may 7 may 8
may 11🎬
Project presentations
may 12

DUE: Final project report
Last day of classes
may 13 may 14 may 15
Final exam period
may 18
Final exam period
may 19
Final exam period
may 20
Final exam period
may 21 may 22


Course website design courtesy of PDOS and Katrina LaCurts.