# CS 8803TFC - Theoretical Foundations of Cryptography, Spring 2011

## Contents |

## 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.

## Assignments

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.

- Homework 1 (posted Jan 18): due Jan 27 (template, header file).
- Homework 2 (posted Jan 27): due Feb 10 (template, header file).
- Homework 3 (posted Feb 10): due Feb 24 (template, header file).
- Homework 4 (posted Feb 24): due Mar 10 (template, header file).
- Homework 5 (posted Apr 5): due Apr 14 (template, header file).

## Handouts and Lecture Notes

**Intro and Perfect Secrecy**

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

**Computational Hardness**

- Limits of Perfect Secrecy, Computational Hardness
- Supplementary reading: Sections 2.1-2.2 of Pass-shelat

- Candidate OWFs, Hardness Amplification
- Supplementary reading: Sections 2.3-2.5 of Pass-shelat

- Number Theory, OWF Variants
- Supplementary reading: Section 2.6-2.7 of Pass-shelat

**Indistinguishability and Pseudorandomness**

- Indistinguishability, Pseudorandom Generators
- Supplementary reading: Sections 3-3.3 of Pass-shelat

- Blum-Micali PRG
- Supplementary reading: Section 3.4 of Pass-shelat

- Goldreich-Levin Theorem
- Supplementary reading: David Wagner's notes and Mihir Bellare's notes on GL

- Pseudorandom Functions
- Supplementary reading: Section 3.8 of Pass-shelat

- Symmetric Encryption
- Supplementary reading: Sections 3.5-3.7, 3.9 of Pass-shelat

- Asymmetric Encryption
- Supplementary reading: Sections 3.10-3.11 of Pass-shelat

**Authentication**

- Message Authentication
- Supplementary reading: Sections 5-5.2 of Pass-shelat

- CCA Security, Digital Signatures
- Supplementary reading: Sections 5.3-5.4 of Pass-shelat

- Digital Signatures
- Supplementary reading: Sections 5.5-5.7 of Pass-shelat

- Random Oracle Signatures
- Supplementary reading: Sections 5.8 of Pass-shelat

**Zero Knowledge**

- Zero Knowledge, Interactive Proofs
- Supplementary reading: Sections 4-4.5 of Pass-shelat

- ZK Proofs
- Supplementary reading: Sections 4.5-4.6 of Pass-shelat

- ZK for NP
- Supplementary reading: Section 4.7 of Pass-shelat

**Special Topics**

## Useful Links

- The Georgia Tech cryptography reading group.

- A Course in Cryptography, by Rafael Pass and abhi shelat (freely available notes)

- Boaz Barak's course at Princeton

- Salil Vadhan's course at Harvard

- Yevgeniy Dodis's course at NYU

- A Computational Introduction to Number Theory and Algebra, a book by Victor Shoup (freely available)

- A collection of good advice on reading and writing mathematical proofs.

- A free, very thorough introduction to LaTeX, and good style tips.

## Archive

Previous iterations of this course: