CS60065: Cryptography and Network Security [L-T-P: 3-1-0]

Course Objectives


This course introduces the basics of modern cryptography and some related, basic aspects of network security. In terms of topics, we will largely study cryptographic tools for ensuring message confidentiality, integrity and user authentication. There may be some topics not covered in prior offerings. If time permits, we will also cover some advanced cryptography, e.g., post-quantum secure cryptosystems and some general tools that allow building privacy preserving or enhancing computation. The course will be mathematical in nature.

Pre-requisites


The course has some formal prerequisites. So it would greatly benefit to brush up the topics listed below.

[For Cryptography]: Discrete Structures, Basics of Algorithm Design and Analysis, and Linear Algebra.
[For Network security]: Basic idea of Computer Networks.

We will also cover some new (& may briefly recap some existing) mathematical tools useful in cryptographic contexts.

Course Logistics


Where and When?

  1. Thursday: 3:00 - 5:00 PM (Lec/Tut)
  2. Friday: 2:00 - 4:00 PM (Lec/Tut)

Exams

Teaching Assistants

Requirements

  1. Teacher's Assessment [40%]
    • Class Attendance + Short (Surprise) Test(s)
  2. Mid semester exam [30%]
  3. End semester exam [30%]



[NOTE]: We will post several details frequently throughout the course. Keep an eye on this webpage for the latest updates.




Other Instructions & Policies


Both attendance and short (possibly surprise) tests will carry marks. We may have interactive tutorials where students are asked to solve problems during the sessions. Getting caught in any kind of malpractice during tests or exams will result in strict disciplinary actions.

Resources


We will mostly follow the texts mentioned below. Slides (& any other extra material) used in classes will be shared here in time. Any extra material, that we may use, will be shared on this webpage in time.

  1. Cryptography: Theory and Practice (By Douglas R. Stinson, Maura B. Patterson) [Textbook 1]
  2. Understanding Cryptography: A Textbook for Students and Practitioners (By Christof Paar, Jan Pelzl, Tim Güneysu) [Textbook 2]
  3. Introduction to Modern Cryptography (By Jonathan Katz, Yehuda Lindell) [Reference]
  4. The Joy of Cryptography (By Mike Rosulek) [Reference]
  5. Handbook of Applied Cryptography (By Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone) [Reference]
  6. Cryptography and Network Security (By William Stallings) [Reference]
  7. Computer Security (By David Wagner, Nicholas Weaver, Peyrin Kao, Fuzail Shakir, Andrew Law, Nicholas Ngai) [Reference]

Syllabus/Timeline/Tests/Tutorials


To be updated as the course proceeds.


Topic Reference Week Tutorials/Tests
1. Logistics, Introduction & Course Overview [1], [6], WWW 0 --