Lecture Notes
Please note: I will make an effort to post lecture notes for each class.
However, I make no guarantee that I will do so for every lecture (so do not count on them)
and I make no guarantee that they will cover
everything I cover in class (so do not rely on them as a substitute for lectures).
I also do not guarantee that they are correct; in fact, if you find any errors (typographical or otherwise) I would greatly appreciate it if you would let me know.
(Note: The following represent what was covered in 45-minute lectures, when the course was offered three times per week. The notes below are also available in one file .)
Lecture 1 (unavailable)
Lecture 2 (unavailable)
Lecture 3: The one-time pad and limitations. Toward computational notions of security.
(ps | pdf )
Lecture 4: Complexity-based cryptography; one-way functions.
(ps | pdf )
Lecture 5: One-way functions. Introduction to number theory.
(ps | pdf )
Lecture 6: Guest lecture by Prof. Gasarch on primality testing
(ps )
Lecture 7: Quadratic residues. A one-way permutation based on factoring.
(ps | pdf )
Lecture 8: A one-way permutation based on factoring.
(ps | pdf )
Lecture 9: The RSA and discrete logarithm problems.
(ps | pdf )
Lecture 10: Pseudorandom generators (PRGs) and application to secure encryption.
(ps | pdf )
Lecture 11: Improving the stretch of a PRG.
(ps | pdf )
Lecture 12: Constructing a PRG from a one-way permutation.
(ps | pdf )
Lecture 13: More on definitions of secure private-key encryption.
(ps | pdf )
Lecture 14: Randomized encryption. Pseudorandom functions and permutations.
(ps | pdf )
Lecture 15: From pseudorandom functions to pseudorandom permutations. Block ciphers.
(ps | pdf )
Lecture 16: Private-key encryption using pseudorandom functions.
(ps | pdf )
Lecture 17: Modes of encryption.
(ps | pdf )
Lecture 18: More on modes of encryption. Message authentication.
(ps | pdf )
Lecture 19: Secure message authentication for larger messages.
(ps | pdf )
Lecture 20: Midterm review
Lecture 21: Midterm
Lecture 22: Practical message authentication codes.
(ps | pdf )
Lecture 23: Collision-resistant hash functions. Information-theoretic message authentication.
(ps | pdf )
Lecture 24: Information-theoretic message authentication; finite fields.
(ps | pdf )
Lecture 25: Some algorithmic number theory.
(ps | pdf )
Lecture 26: Generating primes and primality testing
(ps | pdf )
Lecture 27: Introduction to public-key cryptography
(ps | pdf )
Lecture 28: Secure public-key encryption: definitions and (toward) a construction.
(ps | pdf )
Lecture 29: A secure public-key encryption scheme.
(ps | pdf )
Lecture 30: The Diffie-Hellman problems and application to secure encryption.
(ps | pdf )
Lecture 31: El Gamal encryption. Another notion of security for public-key encryption.
(ps | pdf )
Lecture 32: Equivalence of the two definitions. Hybrid encryption.
(ps | pdf )
Lecture 33: Hybrid encryption.
(ps | pdf )
Lecture 34: Public-key encryption from general assumptions. Encryption of longer messages.
(ps | pdf )
Lecture 35: Digital signature schemes, and an insecure suggestion. One-time signature schemes.
(ps | pdf )
Lecture 36: The Lamport one-time signature scheme.
(ps | pdf )
Lecture 37: Signing multiple messages.
(ps | pdf )
Lecture 38: Signature schemes from one-way functions. The random oracle model: pros and cons.
(ps | pdf )
Lecture 39: A signature scheme in the random oracle model.
(ps | pdf )
Lecture 40: Class cancelled
Lecture 41: An improved signature scheme in the random oracle model.
(ps | pdf )
Lecture 42: Public-key encryption in the random oracle model.
(ps | pdf )
Lecture 43: Final review