About the Course:
Cryptography is the science of securing data by using mathematical concepts. Cryptography involves the authentication and verification of data in all domains by applying Cryptographic protocols.
Enable to learn the fundamental concepts of cryptography and utilize these techniques in computing systems.
Discuss about various encryption techniques.
Understand the concept of public key Cryptography.
Introduce message authentication and hash function.
Provide Lab sessions for each unit to help gain deeper insight into Cryptography.
At the end of this course, the student will be able to:
Classify the symmetric encryption techniques.
Illustrate various Public key cryptographic techniques.
Evaluate the authentication and hash algorithms.
Discuss authentication applications.
Classical Ciphers - 12 Hours
Introduction to cryptography, CIA Triad IAAA, Legal, ethical, and professional aspects of security, Crypto math-1, Classical Ciphers , Crypto math-2, Transposition, Steganography
Symmetric Key Cryptography - 12 Hours
Principles of modern cryptography, Classical v/s Modern , Cryptanalysis, Kerckhoffs's principle, Perfect secrecy, Vernam's One Time Pad, Shannon's Theorem, Stream ciphers, Block ciphers Birthday attack, Pseudo-random numbers
Public Key Cryptography - 12 Hours
Introduction to Symmetric key cryptography, Fiestel cipher, DES, AES, Modes of operation of block Ciphers, Padding attack
Key management Hashing Techniques - 10 Hours
Introduction to Public key cryptography, One way functions, DH Protocol, Elgamal Crypto, Prime Factorization - hardness, RSA, Applications (in terms of CIA and IAAA)
Authentication using Cryptography - 10 Hours
Key management and distribution (KDC), Kerberos, Zero knowledge protocols, MD5, Collision-resistant hash function (CRHF), Secure Hash Algorithm (SHA), Digital signature, ECC based signature, ECDSA, MAC, and chaining MAC
1:“Introduction to Modern Cryptography”, Jonathan Katz, Yehuda Lindell, 2ndEdition, CRC Press, 2015.
“Cryptography and Network Security” Behrouz A.Foruzan, 3rd Edition, Tata McGraw Hill, 2017
Tools & Languages:
Seed virtual machine environment, gpg, Python