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.
Learning objective
To know and understand a selection of cryptographic protocols and to be able to analyze and prove their security and efficiency.
Content
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.
Lecture notes
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.
Competencies
Subject-specific Competencies
Concepts and Theories
assessed
Techniques and Technologies
assessed
Method-specific Competencies
Analytical Competencies
assessed
Decision-making
fostered
Personal Competencies
Creative Thinking
fostered
Critical Thinking
fostered
Performance assessment
Performance assessment information (valid until the course unit is held again)