vOlux888POjds2BACh9l6g==spring 2026
My experience was excellent. You'll enjoy the course if you're someone who likes deep, slow, persistent, first-principles-based, precise thinking.
There are no large codebases or large projects. If you find other courses too practical or too light on theory, this course is full of theory and abstract thinking.
If you want empirical system performance experimentation, fine-tuning ML models, data analysis, or building large projects, this course offers none of that.
The lectures are dense, and every phrase from Professor Sasha is filled with information. I have never seen a lecturer who wastes so few words. This is nice because your time is not wasted, but it also requires focus, since a small distraction is sufficient to make you lose track, so rewatching lectures becomes essential.
The first half of the course teaches the definitions and terminology used in formal cryptography, particularly symmetric cryptography. This involves becoming familiar with new concepts and understanding the relationships between security definitions and adversary models. It is mostly logical thinking with little calculation. The second half introduces asymmetric cryptography. The definitions learned in the first half are adapted to the asymmetric setting, and the necessary mathematics (number theory and group theory) is introduced. Here there are calculations, mainly involving modular arithmetic, along with a few short programming projects.
The day-to-day structure of the course is that every week you watch a lecture and take a proctored quiz without access to reference material. The quizzes require special attention to definitions and precise wording.
Homework problems are somewhat difficult, and the solutions need to be well argued, similar to writing mathematical proofs. However, they are very rewarding once you begin to develop an intuition for them. You can submit handwritten or typed solutions (LaTeX if you want, but it is not required).
To help students, practice questions are released one week before each homework assignment. These questions cover the same topics as the upcoming homework but are easier.
Importantly, homework problems can be discussed in groups created by the students themselves at the beginning of the course. This is actually encouraged by the professor.
The TAs are very available and explain the concepts very well. There are office hours almost every day, and Professor Sasha is available once a week.
The material is self-contained, but there are also three high-quality books recommended, all of which are freely available online.
Exams are proctored but open-book: PDFs, videos, and lecture slides are allowed. The questions are similar to those in the homework, but slightly easier. The time provided was sufficient.
There is no exploration of frontier research topics, and there would not be enough time for that. However, they are briefly mentioned in the final unit. The objective of the course is to provide students with the foundations necessary for further study, and in my opinion, it accomplishes this very well.