Foundations of Cryptography

By Prof. Ashish Choudhury   |   IIIT Bangalore
Learners enrolled: 683
The course provides the basic paradigm and principles of modern cryptography. The focus of this course will be on definitions and constructions of various cryptographic objects. We will try to understand what security properties are desirable in such objects, how to formally define these properties, and how to design objects that satisfy the definitions. The aim is that at the end of this course, the students are able to understand a significant portion of current cryptography research papers and standards.

Computer science and Mathematics students
PREREQUISITES : There are no pre-requisites for this course. However it is expected that the students who are interested to take this course have had some exposure to a basic course on discrete mathematics, algorithms, or theory of computation. Having said that, I ensure that a significant effort will be made from my side to simplify the overall presentation of the course and make it easily accessible.
INDUSTRY SUPPORT : The course will be relevant for any IT related company
Course Status : Upcoming
Course Type : Elective
Duration : 12 weeks
Start Date : 24 Jan 2022
End Date : 15 Apr 2022
Exam Date : 23 Apr 2022 IST
Category :
  • Computer Science and Engineering
  • Foundations of Computing
Credit Points : 3
Level : Undergraduate/Postgraduate

Course layout

Week 1:  Course Overview, Symmetric-key Encryption, Historical Ciphers, Perfect Security and Its Limitations
Week 2: Computational Security, Semantic Security and Pseudorandom Generators (PRGs)
Week 3: Stream Ciphers, Provably-secure Instantiation of PRG, Practical Instantiation of PRG, CPA-security and Pseudo-random Functions (PRFs)
Week 4: CPA-Secure Ciphers from PRF, Modes of Operations of Block Ciphers, Theoretical Constructions of Block Ciphers and Practical Constructions of Block Ciphers
Week 5: DES, AES and Message Authentication Codes (MAC)
Week 6: Information-theoretic Secure MAC, Cryptographic Hash Functions, Ideal-Cipher Model, Davies-Meyer construction and Merkle-Damgård Paradigm
Week 7: Birthday Attacks on Cryptographic Hash Functions, Applications of Hash Functions, Random Oracle Model and Authenticated Encryption
Week 8:  Generic Constructions of Authenticated Encryption Schemes, Key-exchange Problem, One-way Trapdoor Functions and Cyclic Groups
Week 9: Discrete-Logarithm Problem, Computational Diffie-Hellman Problem, Decisional Diffie-Hellman Problem, Elliptic-Curve Based Cryptography and Public-Key Encryption
Week 10: El Gamal Encryption Scheme, RSA Assumption, RSA Public-key Cryptosystem, KEM-DEM Paradigm and CCA-security in the Public-key Domain
Week 11: CCA-secure Public-key Hybrid Ciphers Based on Diffie-Hellman Problems and RSA-assumption, Digital Signatures, RSA Signatures and Schnorr Identification Scheme
Week 12: Schnorr Signature, Overview of TLS/SSL, Number Theory, Interactive Protocols and Farewell

Books and references

1. Introduction to Modern Cryptography by Jonathan Katz and Yehuda Lindell
2. Cryptography Theory and Practice by Douglas Stinson

Instructor bio

Prof. Ashish Choudhury

IIIT Bangalore
Dr. Ashish Choudhury is currently an Associate Professor at IIIT Bangalore. He did his MS and PhD in Computer science from IIT Madras, followed by postdoc at ISI Kolkata and University of Bristol. His research work is focused on the foundation of cryptographic protocols for real-world problems. His current projects aim to design efficient protocols in the asynchronous network model which can be realized in practice. In general he is interested in secure distributed computing and all areas of theoretical computer science.

Course certificate

The course is free to enroll and learn from. But if you want a certificate, you have to register and write the proctored exam conducted by us in person at any of the designated exam centres.
The exam is optional for a fee of Rs 1000/- (Rupees one thousand only).
Date and Time of Exams: 23 April 2022 Morning session 9am to 12 noon; Afternoon Session 2pm to 5pm.
Registration url: Announcements will be made when the registration form is open for registrations.
The online registration form has to be filled and the certification exam fee needs to be paid. More details will be made available when the exam registration form is published. If there are any changes, it will be mentioned then.
Please check the form for more details on the cities where the exams will be held, the conditions you agree to when you fill the form etc.


Average assignment score = 25% of average of best 8 assignments out of the total 12 assignments given in the course.
Exam score = 75% of the proctored certification exam score out of 100

Final score = Average assignment score + Exam score

YOU WILL BE ELIGIBLE FOR A CERTIFICATE ONLY IF AVERAGE ASSIGNMENT SCORE >=10/25 AND EXAM SCORE >= 30/75. If one of the 2 criteria is not met, you will not get the certificate even if the Final score >= 40/100.

Certificate will have your name, photograph and the score in the final exam with the breakup.It will have the logos of NPTEL and IISc Bangalore.It will be e-verifiable at nptel.ac.in/noc.

Only the e-certificate will be made available. Hard copies will not be dispatched.

Once again, thanks for your interest in our online courses and certification. Happy learning.

- NPTEL team

MHRD logo Swayam logo


Goto google play store