Lectures: MW 9:30-10:50am
Location: CoDa B90
Instructor: Mark Zhandry ()
Office Hours: catch me after lecture; by appointment.
TAs:
Sam Jett. Office hours: Tuesdays 4:30-6pm, CoDa B46
Kenneth Kohn. Office hours: Mondays 5-7pm, CoDa B46
Course Webpage: https://mzhandry.github.io/courses/2025-Fall-CS258/
Discussion: Here
Course description: This course will give an overview of how the development of quantum computers will fundamentally change the landscape of modern cryptography. This course will cover both the threats and opportunities of quantum computers for cryptography, and will include the following topics:
A study of quantum algorithms for attacking classical cryptography.
Cryptographic tools that resist such attacks.
Quantum protocols such as quantum money that achieve never-before-possible capabilities.
Prerequisites: Knowledge of linear algebra and algorithms. We will not be assuming any knowledge of quantum computing, physics, or cryptography. CS255 and CS259Q are explicitly not required, though they may be beneficial.
Textbook: The course will be self-contained, with no required textbooks.
Lecture | Topic | Assignments | Notes |
1 - M, 9/22 | Course Intro, Basics of Cryptography | HW1 Assigned | [1] |
2 - W, 9/24 | Overview of Quantum Mechanics | [2] | |
3 - M, 9/29 | Quantum Key Distribution | [3] | |
4 - W, 10/1 | Quantum Money | HW1 Due | [4] |
5 - M, 10/6 | Quantum Computing & Grover’s Algorithm | HW2 Assigned | [5] |
6 - W, 10/8 | Shor’s algorithm | [6] | |
7 - M, 10/13 | Cryptographic Group Actions | [7] | |
8 - W, 10/15 | Kuperberg’s Algorithm | HW2 Due | |
9 - M, 10/20 | Lattice Cryptography | ||
10 - W, 10/22 | Lattice Cryptography, Continued | ||
M, 10/27 | No class, Take-home Midterm | Take-home Midterm | |
11 - W, 10/29 | Regev’s Reduction | HW3 Assigned | |
12 - M, 11/3 | LWE vs Dihedral Hidden Subgroups | ||
13 - W, 11/5 | Security proofs in post-quantum cryptography | HW3 Due | |
14 - M, 11/10 | Security proofs in post-quantum cryptography, Continued | HW4 Assigned | |
15 - W, 11/12 | The need for computational security | ||
16 - M, 11/17 | Cryptography in a world where P = NP. | HW5 Assigned | |
17 - W, 11/19 | Public key quantum money | HW4 Due | |
11/24 - 11/28 | No class, Thanksgiving break | ||
18 - M, 12/1 | Advanced topics | ||
19 - W, 12/3 | Advanced topics | HW5 Due | |
12/8-12/12 | Take-home Final | Take-home Final | |
Homework 1. Assignment LaTeX file. Due 10/1.
Homework 2. Assignment LaTeX file. Due 10/15.
There will be 5 homework assignments totaling 500 points (50% of the overall grade). Each assignment is 100 points (10% of the overall grade).
Policies. Homeworks will generally be due at 11:59pm (pacific time) on Wednesdays, and will be assigned 7-9 days prior to the due date.
Collaboration. Students are encouraged to work in groups, but must write up solutions independently and in their own words. Please indicate any collaborators on the submission. Discussing assignments with other enrolled students is encouraged. Please do not discuss problems with students not enrolled in CS 258 (in particular, do not post questions online). There is no upper-limit on group sized, but please try to keep the size of groups modest (say, up to ≈ 5 students).
Internet policy. Students may explore online resources for help in solving problems. However, it is not permitted to post homework questions online or to use chatbots such as ChatGPT, Gemini, Copilot, etc.
Typed Solutions. Solutions must be typed, though diagrams may be hand-written. LaTeX is strongly encouraged (see resources in Section 6 below).
Late days. Each assignment may be turned in up to 2 days late. However, to encourage timely submission of homeworks, any assignment turned in on time will receive 2 bonus points, and any assignment turned in 1 day late will receive 1 bonus point. No other late days or extensions will be given. See Section 5 below for an explanation of how bonus points work.
Bonus questions. Assignments may include bonus questions. These are entirely optional, and completing them can only improve your grade. See Section 5 below for an explanation of how bonus points work.
Please remember Stanford’s honor code.
There will be a take-home midterm and take-home final. The midterm and final will be 200 points and 300 points, respectively, or equivalently 20% and 30% of the overall grade. Both exams will be completed individually. For both exams, the exam will be timed, but students will be given a window of a few days in which to take the exam. The midterm will occur around October 27. Class will be canceled on that day, so in principle the midterm could be completed during the lecture time, but that will not be necessary. The final will occur during finals week. There are no late days for midterms or finals. Due to the time constraints, exams may be hand-written. Further details TBA.
The raw final point total will be out of 1000 points, comprising:
500 points for homeworks (50%)
200 points for midterm (20%)
300 points for final (30%)
The raw final point total will exclude bonus points. The adjusted final point total will be the raw point total plus any bonus points.
How letter grades are assigned. There is no fixed relationship between final point total and the letter grade assigned. There is also no fixed percentage of the class receiving any particular letter grade, though expect the distribution of letter grades to be roughly consistent with other 200-level courses in the department.
Letter grades will be assigned approximately by the following algorithm:
Determine letter grade cutoffs based on the distribution of raw point totals, ignoring bonus points.
Assign students a letter grade based on their adjusted point totals, using the cutoffs determined in Step 1.
As such, bonus points are truly optional, and can only improve your final letter grade.
It is strongly encouraged to use LaTeX for typesetting solutions to homework assignments. Learning LaTeX will save time in the long-run, as it is much more efficient for typesetting math than other methods such as MS Word. It also helps the course staff by making the solutions easier to read.
The easiest way to get started is probably an online environment such as Overleaf. Stanford students are given a free Pro account. Here is a LaTeX guide.
Please post broadly applicable questions (both administrative or conceptual) on the Ed Discussion. For individual concerns, please email the course staff. The course staff will also hold office hours as outlined in Section 1.