CS 8803TFC - Theoretical Foundations of Cryptography, Spring 2011

From Theory
Revision as of 01:27, 2 February 2011 by Cpeikert (Talk | contribs)

Jump to: navigation, search
CryptoBook.jpg Goldreich1.jpg Goldreich2.jpg

Course Information

Instructor: Chris Peikert

Time: Tue/Thu 3-4:30pm (First meeting: Jan 11th Jan 18th, due to weather)

Location: College of Computing Building, Room 102

Summary: Cryptography, or "secret writing," is nearly as old as written communication itself. Yet only over the past few decades has it grown from a "black art" into a true science with rigorous mathematical foundations and methodologies. These have taken cryptography far beyond its roots in simple secret codes, to a discipline with far-reaching influence on computing as a whole.

This class is a graduate-level, theory-oriented introduction to the foundations of modern cryptography. The emphasis is on essential concepts, precise models and definitions, and proof techniques. Topics include: one-way functions and related complexity assumptions, pseudorandomness, public-key and identity-based crypto, zero knowledge and commitment, and connections to diverse areas of computer science. As time permits, we may also touch upon specialized topic areas such as secure multiparty computation, private information retrieval, or lattice-based cryptography.

For more information and course policies, see the course information and syllabus handout.


All assignments are due (via the course T-Square site) before the start of class on the stated due date.

To use the supplied LaTeX templates (recommended), you will need the latest version of this header file (you may need to rename it to lower-case after downloading, due to a bug in the wiki software). You may also need this file, if the template does not compile properly on its own.

Handouts and Lecture Notes

Intro and Perfect Secrecy

  • Lecture 1: Overview, Perfect Secrecy
    • Supplementary reading: Section 1.3 of Pass-shelat

Computational Hardness

  • Lecture 2: Limits of Perfect Secrecy, Computational Hardness
    • Supplementary reading: Sections 2.1-2.2 of Pass-shelat
  • Lecture 3: Candidate OWFs, Hardness Amplification
    • Supplementary reading: Sections 2.3-2.5 of Pass-shelat
  • Lecture 4: Number Theory, OWF Variants
    • Supplementary reading: Section 2.6-2.7 of Pass-shelat

Indistinguishability and Pseudorandomness

  • Lecture 5: Indistinguishability, Pseudorandom Generators
    • Supplementary reading: Sections 3-3.3 of Pass-shelat
  • Lecture 6: Blum-Micali PRG
    • Supplementary reading: Section 3.4 of Pass-shelat


Zero Knowledge

Special Topics

Useful Links


Previous iterations of this course: