Cryptographic Protocols


Course code: 2DMI00
Lecturer: Berry Schoenmakers, MF 6.105, tel. 4769, berry@win.tue.nl (or, l.a.m.schoenmakers@tue.nl)

Schedule 2016-2017 3rd Quarter

Time/place:

Lecture 1February 8. Homework: study Preface, Sections 1.1-2, 2.1.1. Exercises 1.3*, 1.7, 1.8, 1.12(a). No hand-in.
Lecture 2February 10. Homework: study Sections 1.3.1-2. Exercises 1.12(b)(i-iii), 1.12(b)(iv)*, 1.13, 1.15, 1.16, 1.18*, 1.24, 1.25*. Hand in before Wednesday February 15, 10.45am.
Lecture 3February 15. Homework: study Sections 1.3.3-4. Exercises 1.31, 1.33(a,b), 1.34. No hand-in.
Lecture 4February 17. Homework: study Section 2.1.2. Exercises 1.32(a)*, 1.33(e,f,h), 1.38, 1.39, 1.40*. Hand in before Wednesday February 22, 10.45am.
Lecture 5February 22. Homework: study Sections 2.1.3-4, 2.2, 3.1, 3.2.1. Exercises 2.1, 2.3, 2.4, 2.6. No hand-in.
Lecture 6February 24. Homework: study Sections 3.2.2-3, 3.3, 4.1-3. Exercises 2.5, 2.7, 3.2, 3.3, 3.4, 3.5*. Hand in before Wednesday March 8, 10.45am.
Lecture 7March 8. Homework: study Sections 4.4, 4.5.1, and Python generators (see below). Exercise 4.2. No hand-in.
Lecture 8March 10. Homework: study Section 4.5.2, Figure 4.5, Sections 5.1, 5.2.1-2. Exercises 5.9, 5.17(a), 5.18. Hand in before Wednesday March 15, 10.45am.
Lecture 9March 15. Homework: study Sections 4.5.3, 4.6, 5.2.3-4, 5.3. Exercises 5.4*, 5.10, 5.13, 5.16. No hand-in.
Lecture 10March 17. Homework: study Sections 5.2.5, 5.4. Exercises 5.17(b,d,f), 5.17(i)*. Hand in before Wednesday March 22, 10.45am.
Lecture 11March 22. Homework: study Chapter 6. Exercises 5.20*, 5.25, 5.27, 5.28(ii), 6.2. No hand-in.
Lecture 12March 24. Homework: study Chapter 7. Exercises 6.4*, 6.5, 7.1, 7.2. Hand in before Wednesday March 29, 10.45am.
Lecture 13March 29. Homework: study Chapter 8. Exercises 8.1, 8.2. No hand-in.

Basic knowledge of Python generators (which, in turn, build on the more basic notion of Python iterators) will be relevant for the TUeVIFF programming assignment later on. To this end, take a look at the basic example in the Python tutorial, and at the advanced use of Python generators in the Python program for binary pebbling and in the accompanying Python program showing the time and space utilization per round for binary pebbling.

Written exam: Tuesday April 18, 2017, 9.00-12.00h; resit: Friday June 30, 2017, 18.00-21.00h.


Lecture notes

Version 1.3 of the Lecture Notes on Cryptographic Protocols is available as of February 7, 2017. Please print out a copy for yourself.
Also see the matching Lecture Slides on Cryptographic Protocols. (Handout version of slides without animations).
Old exams and solutions to exercises available only on Canvas.

Further reading

The following books are recommended as background and advanced resources:


Last year's course page.