Description
Cryptography is the science of securely carrying out tasks (e.g., communication) in presence of adversaries (e.g., eavesdroppers). In this course, we will first study certain basic tasks in cryptography (e.g., secure communication), with an emphasis on precise modelling of the adversary's capabilities and goal -- the threat model -- and formally proving security in this model -- the security proof. Then, we will see how more complex applications you use everyday (e.g., HTTPS, secure messaging, one-time password) can be built on top of these. Additionally, we will also have hands-on sessions aimed at exposing you to real world cryptographic libraries.
Prerequisites
Discrete structures and probability theory are soft prerequisites. This course will involve some amount of theory, and thus we will expect mathematical maturity.
Who can credit?
Since the course is a minor, it is open to all non-CS, non-freshmen UGs.
Grading and Attendance
| Weightage | Towards |
|---|---|
| 35% | End-sem |
| 28% | Mid-sem |
| 20% | Two (out of three) quizzes |
| 10% | Two lab exercises (tentative) |
| 5% | Class participation, pop-quizzes |
| 2% | Feedback |
Attendance is not mandatory (but encouraged). There will be four ungraded assignments to help you with quizzes and exams.
| # | Date | Slides | + | Topics Covered (Tentative) |
|---|---|---|---|---|
| L01 | 29/Jul | [↓][↓] |
|
|
| LE0 | 30/Jul | [↗] | Lab Exercise 0 | |
| L02 | 31/Jul | [↓][↓] |
|
|
| Module I: Secure Communication in the Shared-Key Setting | ||||
| L03 | 05/Aug | [↓][↓] |
|
|
| L04 | 07/Aug | [↓][↓] |
|
|
| A1 | 07/Aug | [↗] | Assignment 1 | |
| L05 | 12/Aug | [↓][↓] | [↓] |
|
| L06 | 14/Aug | [↓][↓] | [↓] |
|
| Q1 | 14/Aug | [↗] | Quiz 1: 17:00-18:00 in TBD | |
| L07 | 19/Aug | [↓][↓] |
|
|
| L08 | 21/Aug | [↓][↓] |
|
|
| LE1 | 21/Aug | [↗] | Lab Exercise 1 | |
| H | 26/Aug | No lecture: Id-e-Milad | ||
| L09 | 28/Aug | [↓][↓] |
|
|
| A2 | 12/Aug | [↗] | Assignment 2 | |
| L10 | 02/Sep | [↓][↓] |
|
|
| L11 | 04/Sep | [↓][↓] | [↓] |
|
| Q2 | 07/Sep | [↗] | Quiz 2: 08:15-09:25 in TBD | |
| L12 | 08/Sep | [↓][↓] | [↓] |
|
| L13 | 11/Sep | [↓][↓] | [↓] |
|
| M | 12-20/Sep | [↗] | Mid-sem:TBA | |
| Module II: Secure Communication in the Public-Key Setting | ||||
| L14 | 23/Sep | [↓][↓] |
|
|
| L15 | 25/Sep | [↓][↓] |
|
|
| L14 | 30/Sep | [↓][↓] |
|
|
| A3 | 30/Sep | [↗] | Assignment 3 | |
| H | 02/Oct | No lecture: Mahatma Gandhi Jayanti | ||
| L17 | 07/Oct | [↓][↓] |
|
|
| L18 | 09/Oct | [↓][↓] |
|
|
| Q3 | 14/Oct | [↗] | Quiz 3: 17:00-18:00 in TBD | |
| L19 | 16/Oct | [↓][↓] |
|
|
| LE2 | 16/Oct | [↗] | Lab Exercise 2 | |
| Module III: Applications | ||||
| L20 | 21/Oct | [↓][↓] |
|
|
| L21 | 23/Oct | [↓][↓] |
|
|
| A4 | 23/Oct | [↗] | Assignment 4 | |
| L22 | 28/Oct | [↗] |
|
|
| L23 | 30/Oct | [↗] |
|
|
| L24 | 31/Oct | [↗] |
|
|
| L25 | 04/Nov | [↗] |
|
|
| L26 | 06/Nov | [↗] |
|
|
| E | 14/Nov | [↗] | End-sem: 09:00-12:00 in LA002 | |
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