Course Syllabus
Winter 2022
Optional readings can be found in the textbooks denoted by KL and AC in the syllabus below. The optional AC book, by Boneh and Shoup, is more advanced (and free) and is intended for students wishing to go deeper. The online version of the course is another resource for the material covered in class.
- Boneh-Shoup (AC): (free) A Graduate Course in Applied Cryptography (V 0.5) by D. Boneh and V. Shoup
- KL: Introduction to Modern Cryptography (2nd edition) by J. Katz and Y. Lindell.
Syllabus
Lecture 1:
Mon 1/3/22
|
Overview of cryptography. What is a cipher?
|
Basic symmetric-key encryption | |
Lecture 2:
Wed 1/5/22
|
One time pad and stream ciphers
perfect secrecy and the one time pad;
Reading:
AC ch.3; KL 3.2.1-3.4.2.
semantic security and stream ciphers. |
Lecture 3:
Mon 1/10/22
|
Block ciphers
Iterated Even-Mansour ciphers and the AES block cipher.
Reading:
AC ch. 4.1, 4.2; KL ch 6.1-6.2.
|
Lecture 4:
Wed 1/12/22
|
How to use a block cipher
[pdf]
Pseudo Random Permutations (PRP); Pseudo Random Functions (PRF);
Reading:
AC. ch. 4.4, 5; KL ch 3.5
security against chosen plaintext attacks (CPA); basic modes of operation: counter mode and CBC. |
Holiday: Mon 1/17/22 |
MLK: no classes |
Message integrity | |
Lecture 5:
Wed 1/19/22
|
Message integrity: definition and applications
CBC-MAC and PMAC.
Reading:
AC ch. 6; KL ch 4.1-4.3
|
Lecture 6:
Mon 1/24/22
|
Collision resistant hashing
Merkle-Damgard and Davies-Meyer; MACs from collision resistance;
Reading:
AC ch. 8.1-8.9; KL ch 5.1-5.3
case studies: SHA and HMAC. |
Lecture 7:
Wed 1/26/22
|
Authenticated encryption: security against active attacks
Properties and secure constructions
Reading:
AC ch. 9; KL ch 4.5
|
Public key cryptography | |
Lecture 8:
Mon 1/31/22
|
Arithmetic modulo primes and finite cyclic groups
Summary of relevant facts: pdf. |
Lecture 9:
Wed 2/2/22
|
Cryptography using finite cyclic groups
anonymous key exchange (Diffie-Hellman);
the CDH and discrete-log assumptions
Reading:
AC ch. 10; KL ch 9, 11.4.1
|
Lecture 10:
Mon 2/7/22
|
ElGamal public key encryption
semantically secure ElGamal encryption;
CCA security
Reading:
AC ch. 11; KL ch 9, 11.4.1
|
Lecture 11:
Wed 2/9/22
|
Public key encryption using a trapdoor function
[pdf]
The RSA trapdoor permutation and its applications
Reading:
AC ch. 10.2, 10.3; KL ch 11.5 Summary of relevant facts: pdf. |
Digital signatures | |
Lecture 12:
Mon 2/14/22
|
Digital signatures: definitions and applications
How to sign using RSA.
Reading:
AC ch. 13; KL ch 12.1-12.4
|
Lecture 13:
Wed 2/16/22
|
More signature schemes and applications
[pdf]
hash based signatures;
Reading:
AC ch. 13.8, ch. 14; KL ch 12.5-12.8
certificates, certificate transparency, certificate revocation. |
Holiday: Mon 2/21/22 |
President's day: no classes. |
Protocols | |
Lecture 14:
Wed 2/23/22
|
Identification protocols
[pdf]
password protocols, salts; one time passwords (S/Key and SecurID);
Reading:
AC ch. 18;
challenge response authentication. |
Lecture 15:
Mon 2/28/22
|
Authenticated key exchange and SSL/TLS session setup
[pdf]
|
Lecture 16:
Wed 3/2/22
|
Zero knowledge protocols
|
Lecture 17:
Mon 3/7/22
|
Cryptography in the age of quantum computers
Grover's algorithm and symmetric crypto;
Shor's algorithm and public key crypto; post-quantum crypto: signatures and key exchange |
Final lecture | |
Lecture 18:
Wed 3/9/22
|
The crypto wars: should we have end-to-end encryption?
Guest lecture by Jennifer Granick of the ACLU
|