vl713:cryptography
VL713: Cryptography
This is an elective offered to 2nd Semester M. Tech. (VLSI)
Course Plan for Jan – May 2009
(3 credits: 4 lecture hours, 2 lab hours)
Modules to be covered (Theory):
1. Introduction: A brief history of cryptography
2. Mathematical Background
- Probability theory, Information theory, Complexity theory, Number theory, Abstract Algebra (Finite fields)
3. Symmetric (Private) Key Cryptographic Systems
- Caesar, Affine, Monoalphabetic Substitution, Transposition, Homophonic Substitution, Vignere, Beauford and DES Family, Product Ciphers, Lucifer and DES, FEAL, IDEA, RC6 and Rijndael
4. Asymmetric (Public) Key Cryptographic Systems
- Concept of PKCS, RSA Cryptosystem, Variants of RSA , primality Testing, Security of RSA, Merkle – Hellamn, Security of Merkle – Hellaman, McElice, Security of McElice, ElGamal and Elliptic Curve Cryptosystem (ECC)
5. Stream Ciphers and Block Ciphers
- The one time pad, synchronous stream ciphers Self- synchronizing stream ciphers, Feedback shift registers, Linear Complexity, Berlekamp Massey Algorithm, Non – linear Feedback shift registers, stream ciphers based LFSRs. Non linear Combination generators, Non linear filter generators, Clock controlled generators, The alternating step generators, The shrinking generators
6. Digital Signatures
- Properties, Generic signature schemes, Rabin Lamport, Matyas- meyer, RSA, Multiple RSA and ElGamal Signatures, digital signature standard , Blind Signatures, RSA Blind, Undeniable, Chaum-van Antwerpen, Fail – stop and van heyst – pedersen Signature – Time stamping
7. Secret Sharing Algorithms
- Threshold Secret Sharing, Threshold Schemes, Shamir Scheme, Blakley Scheme and Modular Scheme.
8. Pseudo Random Number Generators
- Definition of randomness and pseudo-randomness, statistical tests of randomness, linear congruential generator, modern PRNGs (a brief description)
Crypto-Lab Experiments (MATLAB and PARI/GP, 2 hours per week):
Statistical analysis of English Text – probability distribution and entropy calculation
Algorithms in Number Theory
Symmetric Key Crypto-Systems implementation
Public Key Crypto-Systems implementation
Stream/Block ciphers
Secret Sharing and Visual Cryptography
References and Textbooks:
1. Josef Pieprzyk, Thomas Hardjono and Jenifer Seberry , “Fundamentals of Computer Security”, Springer 2003
2. Alfred J Menezes, Paul C Van Oorshot and Scott A. Vanstone, “Handbook of Applied Cryptography”, CRC press 1996 (http://www.dms.auburn.edu/hac/ OR http://www.cacr.math.uwaterloo.ca/hac/)
Schedule of lectures for Theory:
Periodical I: Modules 0, 1, 2 (beginning of Number theory)
Periodical II: Module 2 (Number theory and Abstract Algebra), Module 3
Final Exam: Full syllabus
Evaluation Criterion:
Periodical I: 15%
Periodical II: 15%
Quiz/Assignment: 10%
Lab: 10%
End Semester Exam: 50%