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 fast-paced 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 lattice-based cryptography: we will start from the basics and go all the way to the recent results, including constructions of fully homomorphic encryption and attribute-based 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 32-G696. |
LOCATION AND TIME | Monday 1:00-4:00pm (with a coffee break in between) in 34-301 |
TA |
Rahul Ilango Email: rilango at mit dot edu Office hours: Tuesday 1-2pm. Location: Whiteboard area outside of 32-G696. |
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:
|