Description
Cryptography is the science of securely carrying out tasks (e.g., secret communication) in an adversarial setting. In this course, we intend to broadly study certain foundational tasks in cryptography, with an emphasis on precise modelling of the adversary's capabilities and goal -- the security model -- and formally proving security in this model -- the security proof. The tasks we will cover will range from basic ones likes secure communication to more advanced ones like program obfuscation (see below for detailed syllabus). For each task, we will discuss the real-world motivation, go through the process of modelling security, and discuss constructions with security proofs. At the end of the course, you will have learnt how to model security for a certain task (e.g., secret communication), design a scheme for this task and then formally prove security of this scheme in the security model.
Grading and Attendance (tentative)
Weightage | Towards |
---|---|
35% | Final |
30% | Mid-term |
30% | Two quizzes (towards the end of Modules I and III) |
5% | Class participation, pop-quiz |
Attendance is not mandatory (but encouraged)
There will be six ungraded assignments to help you with quizzes and exams.
Prerequisites
Discrete structures and probability theory are soft prerequisites. This course will have a theoretical flavour, and thus we will expect some mathematical maturity.
Who can credit?
The course is open to (all PGs) and (UGs in third and fourth years). Since there is a considerable overlap with CS406, anyone who took that course is not eligible to credit.
# | Date | Slides | Details | |
---|---|---|---|---|
L1 | 30/Jul | [↓] |
Topics covered
|
|
Module I: Secure Communication in the Shared-Key Setting | ||||
L2 | 02/Aug | [↓] |
Topics covered
|
|
L3 | 06/Aug | [↓] |
Topics covered
|
|
A1 | 07/Aug | [↓] | Assignment 1 | |
L4 | 09/Aug | [↓] |
Topics covered
|
|
L5 | 13/Aug | [↓] |
Topics covered
|
|
A2 | 14/Aug | [↓] | Assignment 2 | |
L6 | 16/Aug | [↓] |
Topics covered
|
|
L7 | 20/Aug | [↓] |
Topics covered
|
|
Q1 | 23/Aug | Quiz 1: 08:30-09:30 in CC103 | ||
Module II: Secure Communication in the Public-Key Setting | ||||
L8 | 23/Aug | [↓] |
Topics covered
|
|
L9 | 27/Aug | [↓] |
Topics covered
|
|
SQ1 | 30/Aug | Solving session for Quiz 1 | ||
L10 | 03/Sep | [↓] |
|
|
L11 | 06/Sep | [↓] |
Topics covered
|
|
A3 | 06/Sep | [↓] | Assignment 3 | |
L12 | 10/Sep | [↓] |
Topics covered
|
|
L13 | 13/Sep | [↓] |
Topics covered
|
|
M | 19/Sep | Mid-term exam: 08:30-10:30 in LH301 | ||
Module III: Secure Computation | ||||
L14 | 24/Sep | [↓] |
Topics covered
|
|
SM | 27/Sep | Solving session for Mid-term | ||
L15 | 01/Oct | [↓] |
Topics covered
|
|
L16 | 04/Oct | [↓] |
Topics covered
|
|
A4 | 04/Oct | [↓] | Assignment 4 | |
L17 | 08/Oct | [↓] |
Topics covered
|
|
L18 | 11/Oct | [↓] |
Topics covered
|
|
A5 | 11/Oct | [↓] | Assignment 5 | |
L19 | 15/Oct | [↓] |
Topics covered
|
|
Q2 | 18/Oct | Quiz 2: 08:25-09:25 in KR225 | ||
L20 | 18/Oct | [↓] |
Topics covered
|
|
Module IV: Some Advanced Tasks | ||||
L21 | 22/Oct | [↓] |
Topics covered
|
|
SQ2 | 25/Oct | Solving session for Quiz 2 | ||
L22 | 29/Oct | [↓] |
Topics covered
|
|
H | 01/Nov | No lecture (Diwali holiday) | ||
L23 | 05/Nov | [↓] |
Topics covered
|
|
A6 | 06/Nov | [↓] | Assignment 6 | |
L24 | 08/Nov | [↓] |
Topics covered
|
|
F | 19/Nov | Final exam: 08:30-11:30 in TBD |
Below you can find the list of resources relevant to this course. The list of per-lecture resources (e.g., further reading) can be found at the end of the respective lecture slide.
Textbooks