In Semester 2, 2014-2015, I will be teaching C0L 872: Cryptography for the Cloud.

Course Description

The course will cover some exciting recent progress in cryptography in the field of computing on encrypted data. The course will be entirely mathematical in nature, as was my version of 759. The focus will be on identifying interesting directions for future research.

Administrative Information

When and Where.

Mondays and Thursdays, 3:30-5:00 pm in Bharti 204. The slot for the class has been changed to X to avoid any conflicts. Please register!


This course requires mathematical maturity, you should be comfortable with the language of proofs. Knowledge of algorithms, theory of computing (i.e. familiarity with reductions), some algebra and probability theory is required. The course will be self contained for the most part but you should be familiar with the tools and techniques used in theoretical computer science. It is really useful if you have done CSL 759 but this is not absolutely essential. In terms of background reading, here are some good notes. Read chapter 3 and as much of 2 as you can. You should understand public key encryption well for now. Knowing about PRFs and Oblivious Transfer may be useful for later classes. The MOOC is very useful, as is Katz Lindell's "Introduction to Modern Cryptography" (available on flipkart, you can borrow my copy for some time if you like).


There will be extra credit problems/questions throughout the course.


The course will have several commonalities with this course at MIT and this course at Columbia.

Project Ideas

Some project ideas are available here. PROJECT REPORTS ARE DUE ON APRIL 30th END OF DAY BY EMAIL.


Below are the scribes for the class. The scribes are only accessible from within the IITD network.

Part 1: Lattice Based Cryptography and Fully Homomorphic encryption

Part 2: Functional Encryption

Part 3: Miscellaneous Topics on Popular Demand.