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 2017-2018 3rd Quarter

Time/place:

Lecture 1February 7. 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 9. Homework: study Sections 1.3.1-2. Exercises 1.12(b)(i-iii), 1.12(b)(iv)*, 1.13, 1.14, 1.16, 1.18*, 1.24, 1.25*. Hand in before Wednesday February 21, 10.45am.
Lecture 3February 21. Homework: study Sections 1.3.3-4. Exercises 1.31, 1.33(a,b,c), 1.34. No hand-in.
Lecture 4February 23. Homework: study Section 2.1.2. Exercises 1.32(a)*, 1.33(d,f,g,h), 1.39. Hand in before Wednesday February 28, 10.45am.
Lecture 5February 28. 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 6March 2. 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 7, 10.45am.
Lecture 7March 7. Homework: study Sections 4.4, 4.5.1, and Python generators (see below). Exercise 4.2. No hand-in.
Lecture 8March 9. Homework: study Sections 4.5.2-3, Figure 4.5, Sections 5.1, 5.2.1-2. Exercises 5.9, 5.17(a), 5.18. Hand in before Wednesday March 14, 10.45am.
Lecture 9March 14. Homework: study Sections 4.6, 5.2.3-4, 5.3. Exercises 5.4*, 5.10, 5.13, 5.16. No hand-in.
Lecture 10March 16. Homework: study Sections 5.2.5, 5.4. Exercises 5.17(b,d,g), 5.17(i)*. Hand in before Wednesday March 21, 10.45am.
Lecture 11March 21. Homework: study Chapter 6. Exercises 5.19(b), 5.20*, 5.25, 5.27, 6.2. No hand-in.
Lecture 12March 23. Homework: study Chapter 7. Exercises 6.4*, 6.5, 7.1, 7.2. Hand in before Wednesday April 4, 10.45am.
Lecture 13April 4. Homework: study Chapter 8. Exercises 8.2, 8.3. 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 MPyC 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 interactive Jupyter notebook for binary pebbling (or, look at this notebook as non-interactive html page).

Written exam: Friday April 20, 2018, 13.30-16.30h; resit: Tuesday July 3, 2018, 18.00-21.00h.


Lecture notes

Version 1.32 of the Lecture Notes on Cryptographic Protocols is available as of February 6, 2018. 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.