CSci 4554 Cryptography - Syllabus.

[Home] [Syllabus] [Assignments] [Resources and Handouts]

The course timeline

While I try to follow the timeline as closely as possible, keep in mind that topics, dates, and deadlines are subject to change. Changes to deadlines will be announced in class or by e-mail. It is your responsibility to keep up with the changes. If in doubt, please do not hesitate to ask me.

The date for the midterm is set. If you have any conflicts with this date, please let me know as soon as possible. No makeup exams will be given unless circumstances beyond your control prevented you from taking the test at the scheduled time AND you have notified me (in person, by e-mail, or by phone) in advance or, if this was not possible, as soon as it became possible.

In addition to the midterm and final there will be occasional short (about 15 minutes) quizzes on the current material. Exams and quizzes are open book, open notes, unless specified otherwise.

Missed quizzes are counted as 0. The lowest quiz grade in the semester will be dropped (i.e. it will not contribute to overall grade).

Late problem sets policy: Problem sets are due in the beginning of the class on the due date or electronically as stated in the problem set. If a problem set is submitted at (or before) the next class meeting after the due date, it is graded out of 3/4 credit. If it is submitted any time after the next meeting (until the last class meeting), then it is graded out of 1/2 credit.
Problem sets submitted more than 5 minutes after beginning of the class may be considered late.

Monday Wednesday Friday
Week 1: January 17 - 20
No classes: Martin Luther King day Overview of cryptography and its role in computer security.
The goals and approaches - the coin flipping example.
Reading: Ch. 1.1.
Communication environment and security of communication protocols: the authentication algorithm example.
Summary of assumptions and terminology.
Reading: Ch. 1.1.
Problem set 1 posted: basic notions in cryptography. Due Friday, January 27th.
Week 2: January 23- 27
Symmetric cryptography: a substitution cipher, cryptoanalysis, modular arithmetic.
Reading: Ch. 1.2, 1.3, 1.4.
More substitution ciphers, weaknesses of substitution ciphers, Vigenere cipher.
Reading: Ch. 1.4, 1.5, 1.6.
Stream ciphers vs block ciphers.
Use of stream ciphers. The one-time pad.
Reading: Ch. 2.1, 2.2. Problem set 1 due.
Problem set 2 posted: substitution ciphers. Due Friday, February 3rd.
Week 3: January 30 - February 3
Lab on Vigenere cipher, one-time pad. Shift register-based stream ciphers.
Reading: Ch. 2.3, 2.4, 2.5.
Pseudo-random number generators.
Reading: a handout.
Problem set 2 due.
Problem set 3 posted: stream vs block ciphers, random number generators. Due Friday, February 10th.
Week 4: February 6 - 10
DES.
Reading: Ch. 3.
DES (cont.).
Reading: Ch. 3.

DES (cont.).
Reading: Ch. 3.
Problem set 3 due.
Problem set 4 posted: DES. Due Friday, February 17.
Week 5: February 13 - 17
History and overview of AES and mathematical background.
Reading: Ch. 4.1, 4.2, 4.3.
AES algorithm.
Reading: Ch. 4.4 - 4.8.
AES algorithm (cont).
Problem set 4 due.
Problem set 5 posted: AES. Due Friday, February 24th.
Week 6: February 20 - 24
Modes of operation of block ciphers.
Reading: Ch. 5.
Modes of operation of block ciphers (cont.).
Modes of operation of block ciphers (cont.).
Problem set 5 due.
Problem set 6 posted: block ciphers. Due Friday, March 3.
Week 7: February 27 - March 3
Overview of public key cryptography.
Reading: Ch. 6.1, 6.2
Mathematical background for public key cryptography.
Reading: Ch. 6.3, 6.4, 6.5
Mathematical background for public key cryptography (cont).
Problem set 6 due.
Problem set 7 posted: background for public key cryptography. Due Friday, March 10.
Week 8: March 6 - 10
Review for the exam
Midterm exam.
Covers material up to (including) the week of February 20.
RSA
Reading: Ch. 7.1, 7.2, 7.3
March 13 - 17. Spring break, no classes
Week 9: March 20 - 24
RSA (cont.).
Reading: Ch. 7.4, 7.5, 7.6
RSA (cont.).
Reading: 7.7 - 7.11
Overview of Diffie-Hellman key exchange; some background on algebra; the discrete logarithm problem
Reading: 8.1, 8.2, 8.3.
Problem set 7 due.
Problem set 8 posted: RSA. Due Friday, March 31.
Week 10: March 27 - 31
Security of Diffie-Hellman key exchange; overview of ElGamal encryption
Reading: Ch. 8.4, 8.5.
ElGamal protocol; summary of discrete log based systems.
Reading: Ch. 8.6, 8.7
Elliptic curve encryption. Reading: Ch. 9.
Problem set 8 due.
Problem set 9 posted: discrete logarithm based systems. Due Friday, April 7.
Week 11: April 3 - 7
Algorithms based on elliptic curve encryption.
Digital signatures.
Reading: Ch. 10.1, 10.2
Digital signatures (cont.).
Reading: Ch. 10.3, 10.4
Problem set 9 due.
Problem set 10 posted: elliptic curve, digital signatures. Due Friday, April 14.
Week 12: April 10 - 14
Digital signatures (cont.)
Reading: Ch. 10.5 - 10.7
Hash functions.
Reading: Ch. 11.
Hash functions (cont.)
Message authentication codes.
Reading: Ch. 12
Problem set 10 due.
Problem set 11 posted: digital signatures. Due Friday, April 21.
Week 13: April 17 - 21
Message authentication codes (cont.).
Introduction to zero knowledge protocols.
Reading: handouts
Zero knowledge protocols, electronic cash.
Reading: handouts
Problem set 11 due.
Problem set 12 posted: hash functions, message authentication codes, zero knowledge protocols, electronic cash. Due Wednesday, May 3.
Problem set 13 posted: group paper on use of cryptography in real-life protocols. Preliminary paper due Wednesday, May 3. Presentations: April 28, May 1, 3. Final paper due the day of the final exam.
Week 14: April 24 - 28
Work on the electronic cash lab. Key establishment.
Reading: Ch 13
Student presentations.
Week 15: May 1 - 5
Student presentations.
Student presentations.
Preliminary paper due.
Problem set 12 due.
Last day of classes
Review and wrap up.
Last day to submit any late work.
Final exam: 11am-1pm Tue, May 9 2017, Sci 2185.