Introduction to Cryptography
Winter 2022
Cryptography is an indispensable tool for protecting information in computer systems. This course explains the inner workings of cryptographic primitives and how to use them correctly.
Administrative
Course
syllabus (and readings)
Course
overview (grading, textbooks, coursework, exams)
Lectures: | Monday, Wednesday, 1:30-3:00pm, Gates B01 (online for first two weeks) |
Sections: | Friday, 4:30-5:20pm, online |
Questions for CAs: | cs255ta@cs.stanford.edu or use Ed Discussion |
Videos: | cs255 online (for video lectures and slides covering the material in class) |
Final Exam
The final exam this year will be a take home exam. You will have three hours in a 24 hour window to complete the exam. Please use gradescope to submit your answers.
The exam will take place on Thursday, March 17, 2022, beginning at 9am PT.
Previous final exams:
2022.pdf ,
2019.pdf ,
2018.pdf ,
2017.pdf ,
2016.pdf ,
2015.pdf ,
2014.pdf ,
2013.pdf ,
2012.pdf ,
2011.pdf.
Practice work sheet
Homework
All homework submission is to be done via Gradescope. Please use course code 4PEBZ3 to sign up. Note that Gradescope requires that the solution to every problem start on a new page.
Homework #0: [html]
Due: Jan. 11
|
|
Homework #1:
[pdf]
Due: Jan. 24
|
|
Homework #2:
[pdf]
Due: Feb. 16
|
|
Homework #3:
[pdf]
Due: Mar. 9
|
Projects
Project #1 (password manager):
pdf
starter code
Due: Wed., Feb. 2, 11:59pm
|
|
Project #2 (chat client):
pdf
starter code
Due: Tue., March 1, 11:59pm
|