(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