Simulation of multi-party cryptographic protocols using online forums
Description:
Context
I propose this project for small class teaching in my ongoing MSc. elective course "Fundamentals of Computer Security", in which we just started the Cryptography module. Although the course is being offered as an elective at the MSc. level, the intention is to prototype an elective at the BSc. level. For it to be useful in a professional setting, this means the course should be as hands-on and practical as possible. The purpose of this activity is to exercise some simple cryptographic protocols involving multiple parties by using the course's online forum embedded in Blackboard as the underlying communication channel.
Learning activity
- Using a distributed randomness beacon, teacher split class in small groups and distribute selected cryptographic protocols among them.
- Students study the chosen protocol in detail and achieve consensus about which role they play in the execution of this protocol.
- Students implement the portions of the cryptographic protocol that their role is responsible for. These can include generation of global parameters, dealing of shared secrets, generation of key pairs and computation involving those.
- Students jointly execute the cryptographic protocol with your colleagues until the protocol is finished. If you need to transmit a message, as per the protocol specification, add a message to the online thread.
Intended Learning Outcomes:
- Analyze a cryptographic protocol from the scientific literature involving multiple parties, with respect to its security against passive adversaries.
- Build a working implementation of portions of a certain cryptographic protocol.
- Simulate a cryptographic protocol step-by-step using a working implementation.
- Report detailed findings and conclusions obtained in the experiments, even when negative.
Resources | Tasks | Supports | |||
---|---|---|---|---|---|
In-class preparation |
|||||
Verifiably fair randomness |
Split class in groups |
← |
In-class ceremony |
||
Out-of-class preparation |
|||||
Textbook or academic paper |
Read background on |
← |
In-class lectures |
||
Textbook or academic paper |
Determine roles in protocol ↓ |
← |
Office hours |
||
Online forum |
Distribute roles in protocol ↓ |
← |
Online forum |
||
Out-of-class individual activitiy |
|||||
Cryptographic libraries |
Implement portion of |
← |
Office hours and online forum |
||
Out-of-class group activity |
|||||
Cryptographic implementation, |
Execute protocol jointly ↓ |
← |
Teacher follows execution and |
||
All of the above |
Analyze security and |
← |
Teacher follows execution and |
||
Resources on |
Write and submit a |
← |
Teacher follows execution and |
||
In-class activities |
|||||
Submitted report |
In-class presentation (15 minutes) |
← |
Instructor and peer feedback |
||