Syllabus

The following is a tentative list of topics that may be covered. Some adjustments to the topics may occur over the course of the semester. Click on each topic for links to lecture notes and suggested readings.

Aug 25: Overview of Cryptography

Aug 27: The One-Time Pad and Stream Ciphers

Sep 1: Labor Day (No Class)

Sep 3: PRGs and Security Reductions

Sep 8: Stream Ciphers

Sep 10: Pseudorandom Functions

Sep 15: Block Cipher Modes of Operation

Sep 17: Block Cipher Constructions

Sep 22: Message Integrity

Sep 24: Collision-Resistant Hash Functions

Sep 29: Birthday Bound, HMAC, and Key Derivation

Oct 1: Domain Extension for PRFs and Authenticated Encryption

Oct 6: Authenticated Encryption and CCA-Security

Oct 8: Key Agreement and Prime-Order Groups

Oct 13: Diffie-Hellman Key Exchange

Oct 15: Public-Key Encryption

Oct 20: Exam 1 Review

Oct 22: Exam 1 (In Class)

Oct 27: ElGamal Encryption and Digital Signatures

Oct 29: The RSA Problem and Digital Signatures

Nov 3: Public-Key Cryptography from RSA

Nov 5: Authenticated Key Exchange and TLS

Nov 10: Identification Protocols

  • Topics

    • Identification protocols and threat models

    • Password storage and management

    • One-time passwords (SecurID, TOTP, S/Key)

    • Challenge-response authentication and active security

  • References

Nov 12: Zero-Knowledge Proofs

Nov 17: Zero Knowledge for NP

Nov 19: Non-Interactive Proofs and ECDSA

Nov 24: Thanksgiving Break (No Class)

Nov 26: Thanksgiving Break (No Class)

Dec 1: Exam 2 Review

Dec 3: Exam 2 (In Class)