Introduction to Cryptography
Winter 2023
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-2:50pm, Gates B01 |
Sections: | Friday, 4:30-5:20pm, room 160-B40. |
Questions for CAs: | cs255ta@cs.stanford.edu or use Ed Discussion |
Videos: | cs255 online (for video lectures and slides covering the material in class) |
Homework
All homework submission is to be done via Gradescope. Please use course code PX6887 to sign up. Note that Gradescope requires that the solution to every problem start on a new page.
![]() |
Homework #1: [html]
Due: Jan. 17
|
![]() |
Homework #2:
[pdf]
Due: Feb. 7
|
![]() |
Homework #3: not out yet
Due: Feb. 21
|
![]() |
Homework #4: not out yet
Due: Mar. 15
|
Projects
![]() |
Project #1 (password manager):
pdf
starter code
Due: Tue., Feb. 14, 11:59pm
|
![]() |
Project #2 (chat client): not out yet
Due: Tue., March 7, 11:59pm
|