CS555 Fall 2005: Cryptography
- MW 4:30-5:45pm Aug 22 - Dec 11, 2005, CS G066
- Jayesh Pandey
- Office: Math B3
- Email: jpandeyATcs
- Office hours: Th 10 - 12
The course is an introduction to cryptography, aimed to graduate students.
- Concepts and principles of crypography: security services, attacks and mechanisms.
- Classical cryptographic systems: shift cipher, Vigenere and
Vernam ciphers, Jefferson wheel cipher and the Enigma machine.
- Block ciphers: DES, Blowfish, AES.
- Public-key encryption: RSA, ElGamal.
- Data integrity: hash functions, MD5, SHA1, HMAC.
- Digital signatures: RSA, ElGamal, DSA.
- Blind signatures. Group signatures.
- Authentication protocols.
- Key management: two-party key exchange and group key management protocols.
- Applications:fair exchange, certified email, e-cash.
- Notions of threshold cryptography. Proactive security.
The grade will be based on written homework assignments (HW), two programming
midterm (ME), a final exam (FE) and class participation (CP), as follows:
Grade = 20% * HW + 25% * PP + 20% * ME + 30% * FE + 5%*CP.
Exams are closed books and closed notes.
Textbooks and reading list
- Douglas R. Stinson, Cryptography (Theory and Practice), CRC Press 1995, ISBN: 0-8493-8521-0.
- William Stallings, Cryptography and Network Security, Principles and Practice, Second Edition, Prentice Hall, 1998, ISBN: 0-13-869017-0.
You will also find useful:
Samuel S. Wagstaff, Cryptanalysis of Numeric Theoretic Ciphers, CRC 2000. ISBN 1-58488-153-4.
The class mailing list is cs555. To be added to the list sent an email
to firstname.lastname@example.org, with the body containing the text 'add your_email to cs555'.
Academic Honesty and Ethical behavior are required in this course,
as it is in all courses at Purdue University ( here is the
guide for academic integrity). The class will
be conducted according to the
written by Professor Gene Spafford. Please take the time to read it
carefully. This will be followed unless I provide written documentation
You are encouraged to talk with the professor about any questions
you have about what is permitted on any particular assignment.
Lecture slides will be posted below. Homework and projects will be handed in class.
This is a tentative schedule of the course.
|Aug. 22, 24
||Lecture 1 - Introduction to cryptography
||Lecture 2 - Basic ciphers - description and cryptanalysis
|Aug. 29, 31
||Lecture 3 - Elements of probability theory. Perfect secrecy. Entropy.
Lecture 4 - Symmetric encryption. Block ciphers: DES
Homework 1 will be handed in class.
|Sept. 5, 7
|| No class. Labor Day.
Lecture 5 - Symmetric encryption.Block ciphers:
cryptanalysis of DES, variations of DES, IDEA, RC5, Blowfish, AES
|Sept. 12, 14
||Lecture 6 & 7 -
Stream ciphers. RC4 and its use in WEP. Semantic security. Security of stream ciphers and block ciphers.
Lecture 8 - Data integrity. Hash functions. MD5, SHA1 and RIPMD160, MACs: HMAC.
Homework 1 due in class.
Homework 2 will be handed in class.
|Sept. 19. 21
||Lecture 9 and 10 - Divisibility, GCD, LCM. Euclid's Algorithm for finding GCD.Prime and composite numbers.
Distribution of prime numbers. Congruence. Fermat and Euler's Theorems.
Lecture 11 - RSA description and implementation.
|Sept. 26, 28
||No class. Class was covered on Sept. 12.
No class. Class was covered on Sept. 19.
Homework 2 due by email to the TA, deadline is 4:30 PM.
|Oct. 3. 5
| DNS Security - Dan Massey .
|Oct. 10, 12
Lecture 12 - Midterm comment. Project 1 discusion. RSA Attacks.
Programming project 1 handed in class.
|Oct. 17, 19
||Lecture 13 Semantic security and RSA. OAEP.
Lecture 14 - ElGamal, DLP, CDH, DDH.
|Oct. 24, 26
||Lecture 15 - Security of ElGamal.
Lecture 16 - Digital signatures: use of hash function, RSA, ElGamal, DSA and Schnorr.
Homework 3 handed in class.
|Oct. 31, Nov. 2
||Lecture 17 - One-time digital signatures: Rabin, Merkle..
Public key infrastructure: the need for authentication, X.509
Directory Authentication Service, PGP.
Programming project 1 due on FRIDAY Nov. 4 11:59PM.
Lecture 18 - Authentication protocols, entity authentication.
One time passwords, Lamport's scheme,
challenge-response schemes, zero knowledge authentication protocols (Fiat-Schamir).
|Nov. 7, 9
||Lecture 19 - Kerberos.
Homework 3 due in class.
Lecture 20 - Key establishment: Needham-Schroeder
public key protocol, Diffie-Hellman, STS, MTI. IPSec
Homework 4 handed in class.
|Nov. 14, 16
||Lecture 21 - SSL
Project 2 handed in class.
Lecture 22 - Group key management.
|Nov. 21. 23
||Lecture 23 - Intro to threshold cryptography.
Homework 4 due in class.
|Nov. 28, 30
Lecture 24 - Intro to secure multi-party computation.
Lecture 25 - Biometrics.
Programming project 2 design document due in class. Code is due
by Friday 11:59PM
|Dec. 5, 7
||Class is attending Ron Rivest talk -
Security of Voting Systems
Lecture 27 - Review for the final
Copyright© 2005 Cristina Nita-Rotaru. Send your comments and questions to Cristina Nita-Rotaru