Simulation of multi-party cryptographic protocols using online forums

Author: dfaranha

Created: 2019-09-24 02:23am

Edited: 2019-12-09 08:59am

Keywords: Cryptography, Multi-party computation, Simulation

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
and assign protocols

In-class ceremony

Out-of-class preparation

Textbook or academic paper

Read background on
a cryptographic protocol

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
cryptographic protocol

Office hours and online forum

Out-of-class group activity

Cryptographic implementation,
online forum

Execute protocol jointly

Teacher follows execution and
provides feedback

All of the above

Analyze security and
outcome of computation

Teacher follows execution and
provides feedback

Resources on
scientific writing

Write and submit a
final report with conclusions

Teacher follows execution and
provides feedback

In-class activities

Submitted report

In-class presentation (15 minutes)

Instructor and peer feedback