Time and Place: TTh 4:00-5:15pm, Computer Science Building 142.
Office Hours: Before class or by appointment.
TA Office Hours: Wednesdays 2-3pm in LGRT 220 (the tower, not the lowrise)
The class Piazza.
Everyone is responsible for reading the course syllabus.
You can see a previous version of the class here. It may be helpful to also look at the slides there.
The practice midterm is here.
The practice final is here.
Lectures:
The lectures are based mainly on Mihir Bellare's courses available here. Please also see his educational material.- Lecture 1: What's cryptography about, why it matters, some philosophy and a taste of the material Slides. Supplementary reading: Some of my notes. Slides. A cute problem we did not cover described here: The Dating Problem.
- Lecture 2: Substitution ciphers and their cryptanalysis. Slides. Supplementary reading: The MCMC Revolution.
- Lecture 3: Shannon security and one-time pad. Slides. Notes. Communication Theory of Secrecy Systems. Cryptanalysis of Two-Time Pads.
- Lecture 4: Blockciphers and security against key-recovery. Slides. Supplementary reading: Slides. DES article.
- Lecture 6: Symmetric-key encryption and blockcipher modes of operation. Slides. Supplementary reading: Slides.
Homeworks:
Please make sure to follow the rules in the course syllabus and first lecture.- Homework 0: Fill out the course agreement and give it to me if you have not already. This is mandatory. Also please read Technical Writing For Computer Scientists. Please pay attention to it as you work on the homeworks.
- Homework 1: PDF. Due 2/8 11:59PM on Gradescope.
- Homework 2: PDF. Due 3/5 3:59PM. Please hand in a hard copy.
- Homework 3: PDF. Due 3/26 3:59PM. Please hand in a hard copy.
- Homework 4: PDF. Due 4/18 3:59PM. Please hand in a hard copy.