Term: Fall 2021
Lectures: TT 10:30-12, 204 ANB
Instructor: Thomas Vidick
Office Hours: Tuesday 5:30-6:30pm, 207 ANB
TAs: Hanna X. Chen and Junxuan (Helen) Shen. OH: Wednesdays 8-9pm 106 ANB (Hannah) and Thursday 4-5pm 104 ANB (Helen).
Cryptography is the art, or science, of secret communication. But what is secret communication? How can it be achieved? What mathematical assumptions underlie security? This course will cover the foundations of modern cryptography, including one-way functions, pseudo-random generators, cryptographic hash functions, and their application to the construction of cryptographic primitives such as public and private-key encryption schemes, digital signature schemes, message authentication codes, and more.
Prerequisites: Ma 1b. CS 21, CS 38 or equivalent recommended.
This is a 12-unit course. In addition to attending 3 hours of lecture weekly, students are expected to:
See the detailed syllabus.
Note that only the readings from Katz-Lindell are mandatory. Other readings are indicative and may present a different perspective or additional material related to the material covered in lecture.
10/8 Homework #1 due
10/13 Reading #1 due
10/15 Cryptopals #1 due
10/22 Homework #2 due
10/27 Reading #2 due
10/29 Cryptopals #2 due
11/05 Homework #3 due
11/10 Reading #3 due
11/12 Cryptopals #3 due
11/19 Homework #4 due
11/23 Muliparty computation
11/25 No lecture (Thanksgiving)
The course textbook is Introduction to modern cryptography (second edition), by Katz and Lindell.
The readings indicated above are indicative of the topics to be covered, but are not required reading (required reading will be announced in class). They refer to the following online resources:
Additional background on number theory:
Links to similar classes: