MIT 6.5630/6.876 (Fall 2024)
Advanced Topics in Cryptography: From Lattices to Program Obfuscation
Advanced Topics in Cryptography: From Lattices to Program Obfuscation
Course Description
This is a fastpaced advanced graduate course in cryptography, covering two areas that revolutionized the field of cryptography in the last two decades. The first part of the course will develop the modern toolkit of latticebased cryptography: we will start from the basics and go all the way to the recent results, including constructions of fully homomorphic encryption and attributebased encryption. The second part of the course will explore definitions, constructions and applications of program obfuscation, culminating in the construction of an indistinguishability obfuscation scheme.Prerequisites: We will assume fluency in basic cryptography (equivalent to 6.5620). Abundant athematical maturity and an ease with writing mathematical proofs will also be assumed starting from the very first lecture.
Course Information
INSTRUCTOR 
Vinod Vaikuntanathan Email: vinodv at csail dot mit dot edu Office hours: By appointment in 32G696. 
LOCATION AND TIME  Monday 1:004:00pm (with a coffee break in between) in 34301 
TA 
Rahul Ilango Email: rilango at mit dot edu Office hours: Tuesday 12pm. Location: Whiteboard area outside of 32G696. 
RESOURCES 
The main references will be the course materials, mainly lecture notes.
We will also post relevant papers before every lecture.
Here are a few supplementary references for the entire course material.
Books and Surveys

ASSIGNMENTS AND GRADING 
Grading will be based on the problem sets and class participation.
There will be 3 problem sets.
Submitting psets:

COLLABORATION POLICY  Collaboration is permitted and encouraged in small groups of at most two students. You are free to collaborate in discussing answers, but you must write up solutions on your own, and must specify in your submission the names of any collaborators. Do not copy any text from your collaborators; the writeup must be entirely your work. Do not write down solutions on a board and copy it verbatim into Latex; again, the writeup must be entirely your own words and your own work and should demonstrate clear understanding of the solution. Additionally, you may make use of published material, provided that you acknowledge all sources used. Of course, scavenging for solutions from prior years is forbidden. 
Schedule (tentative and subject to change)
Lecture  Topic 
Part 1: Lattices in Cryptography  
Lecture 1 (Mon Sep 9) Lecturer: Vinod 
Topics covered:

Lecture 2 (Mon Sep 16) Lecturer: Vinod 
Topics covered:

Lecture 3 (Mon Sep 23) Lecturer: Vinod 
Topics covered:

Lecture 4 (Mon Sep 30) Lecturer: Vinod 
Topics covered:

Lecture 5 (Mon Oct 7) Lecturer: Vinod 
Topics covered:

Part 2: Program Obfuscation  
Lecture 6 (Mon Oct 21) Lecturer: Rahul 
Topics covered:

Lecture 7 (Mon Oct 28) Lecturer: Vinod 
Topics covered:

Lecture 8 (Mon Nov 4) Lecturer: Vinod 
Topics covered:

Lecture 9 (Mon Nov 18) Lecturer: Vinod 
Topics covered:

Lecture 10 (Mon Nov 25) Lecturer: Vinod 
Topics covered:

Lecture 11 (Mon Dec 2) Lecturer: Vinod 
Topics covered:

Lecture 12 (Mon Dec 9) Lecturer: Rahul 
Topics covered:
