CS 355: Topics in Cryptography
The course is a seminar on topics in cryptography. Course topics this
year include pseudorandomness, security notions for both encryption
and signatures, random oracle analysis, and a bit of distributed computations.
The course is intended for graduate students interested in
Topic by lecture - highly tentative
- Introduction. Crash course in probability, pair wise independence, large deviation bounds.
Part I: Pseudorandomness
- A bit of complexity theory. Definition of one-way functions.
Amplification of one-wayness.
- Motivation and definition of PRNGs. Next bit test. Proof of universality.
- Hard core bits. Blum-Micali generator. Example: discrete log.
- Goldreich-Levin theorem. Application: generators based on subset sum.
- Definition of PRFs. Applications and constructions.
- Motivation and Definition of PRPs. Luby-Rackoff a la Naor-Reingold.
- Left-over-hash Lemma. (HILL)
Part II: Security notions
- When is a cipher secure? Semantic security. Non-malleability.
- Constructions: probabilistic encryption, Cramer-Shoup.
- Random oracle analysis
- When are digital signatures unforgable?
- Signatures based on strong-RSA.
- Signatures based on UOWHF.
Part III: Zero knowledge protocols
- Interactive proof systems. Definition of zero knowledge. Examples.
- Zero knowledge proofs of knowledge. Authentication protocols.
- Witness indistinguishability.
- Non interactive zero knowledge.
Part IV: Basic distributed computation.
- Introduction to secure function evaluation. Applications.
- Oblivious transfer. Yao's two party protocol and GMW.
- The BGW multi-party protocol.
Return to course homepage.
Last update: Mar. 20, 2000 by