Visualizing MPC
Bachelor Thesis
Motivation
Secure Multiparty Computation (MPC) is a powerful cryptographic tool which allows parties to jointly compute a function on hidden inputs. Despite this power, MPC remains an obscure topic outside of cryptography circles. Among various factors, this is due to a lack of practical science communication and teaching on MPC. Education on the topic of MPC is almost exclusively in the format of graduate-level cryptography courses at universities.
Commonly in Computer Science education, smaller “fidget” programs are created, that allow students to playfully engage with algorithms and mathematical concepts of computer science. An example of this is the “animal” algorithms visualization framework [2] that is capable of animating sorting algorithms, tree datastructures, and more while rendering in text explanations of the algorithm steps. The usefulness of such tools has been established in trials [3,5,6]
Goal
The goal of this thesis is to develop a web teaching/fidget tool that interactively explains a simple three party cryptographic protocol based upon [1]. This tool should allow for simple construction of circuits with a modularization feature. From this circuit, the computations and messages of the corresponding MPC protocol should be rendered and computed in a visually engaging way. The message flow and hiding properties of the protocol should be explained to users “starting from zero”, i.e., persons who have not studied cryptographic protocols before.
On the basis of this tool a course-like tutorial mode should guide students from the ground up through the concepts required to perform the computation, including, e.g., motivation, mathematical preliminaries, and high-level reasoning for the security of the protocol. The tool may be developed with authoring tools for interactive media such as the Godot Game Engine [4].
Requirements
- Good understanding of Web Development
- At least basic knowledge of Cryptography & MPC
- Interest in studying E-learning and Gameification techniques
- Basic Understanding of Visualization in Computer Science Education
- High motivation + ability to work independently
- Knowledge of the English language, Git, LaTeX, etc.
References
- [1] Araki, T., Furukawa, J., Lindell, Y., Nof, A., & Ohara, K. (2016, October). High-throughput semi-honest secure three-party computation with an honest majority. Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (pp. 805-817).
- [2] Rößling, G., & Freisleben, B. (2002). ANIMAL: A system for supporting multiple roles in algorithm animation. Journal of Visual Languages & Computing, 13(3), 341-354.
- [3] Thomas L. Naps, Guido Rößling, Vicki Almstrum, Wanda Dann, Rudolf Fleischer, Chris Hundhausen, Ari Korhonen, Lauri Malmi, Myles McNally, Susan Rodger, and J. Ángel Velázquez-Iturbide. 2002. Exploring the role of visualization and engagement in computer science education. SIGCSE Bull. 35, 2 (June 2003), 131–152.
- [4] Godot Engine contributors. (2025). Godot Engine (Version 4.5) [Computer software]. Godot Engine
- [5] Kogan, G., Chassidim, H. & Rabaev, I. The efficacy of animation and visualization in teaching data structures: a case study. Education Tech Research Dev 72, 2349–2372 (2024).
- [6] Lampropoulos, G., Keramopoulos, E., Diamantaras, K., & Evangelidis, G. (2023). Integrating Augmented Reality, Gamification, and Serious Games in Computer Science Education. Education Sciences, 13(6), 618.
Supervisors
- Maximilian Stillger, M.Sc. ( stillger@encrypto.cs.tu-…)
- Andreas Brueggemann, M.Sc. ( brueggemann@encrypto.cs.tu-…)