6.857: Computer and Network Security

Lectures and Handouts

Lecture 1 (Wednesday, February 5): Introduction

Lecture 2 (Monday, February 9): Cancelled due to snowstorm

Problem Set 1

Lecture 3 (Wednesday, February 11): Security principles, growth of cryptography

Recitation 1 (Friday, February 13): One-time pad

Lecture 4 (Tuesday, February 17): One-time pad

Lecture 5 (Wednesday, February 18): Hash Functions

Recitation 2 (Friday, February 20): Floyd's Two Finger Algorithm

Problem Set 2

Lecture 6 (Monday, February 23): Hash Functions II

Lecture 7 (Wednesday, February 25): Cryptocurrency

Recitation 3 (Friday, February 27): Hash functions

Lecture 8 (Monday, March 2): Shamir Secret Sharing and block ciphers

Lecture 9 (Wednesday, March 4): Block cipher modes of operation

Recitation 4: IND-CPA, Padding oracles

Lecture 10 (Monday, March 9): Stream Ciphers

Problem Set 3

Lecture 11 (Wednesday, March 11): Message Authentication Codes

Lecture 12 (Monday, March 16): "Crypto math"

Lecture 13 (Wednesday, March 18): Group Theory

Lecture 14 (Monday, March 30): El Gamal

Problem Set 4

Lecture 15 (Wednesday, April 1): RSA

Lecture 16 (Monday, April 6): Digital Signatures

Lecture 17 (Wednesday, April 8): Gap Groups

Lecture 18 (Monday, April 13): Zero Knowledge Proofs

Lecture 21 (Monday, April 27): Voting