In a cryptographic protocol, a set of parties wants to achieve some common goal, while some of the parties are dishonest. Most prominent example of a cryptographic protocol is multi-party computation, where the parties compute an arbitrary (but fixed) function of their inputs, while maintaining the secrecy of the inputs and the correctness of the outputs even if some of the parties try to cheat.
To know and understand a selection of cryptographic protocols and to be able to analyze and prove their security and efficiency.
The selection of considered protocols varies. Currently, we consider multi-party computation, secret-sharing, broadcast and Byzantine agreement. We look at both the synchronous and the asynchronous communication model, and focus on simple protocols as well as on highly-efficient protocols.
We provide handouts of the slides. For some of the topics, we also provide papers and/or lecture notes.
Prerequisites / Notice
A basic understanding of fundamental cryptographic concepts (as taught for example in the course Information Security) is useful, but not required.
Concepts and Theories
Techniques and Technologies
Performance assessment information (valid until the course unit is held again)