Thesis projects and finished theses with the cryptology and data security research research group at the University of Bern and in the Swiss Joint Master in Computer Science.

Many projects address theory and practice of cryptology and data security; some are purely theoretic but very few are only of practical nature.

Available projects for BSc and MSc theses

The indication of a BSc or MSc project type may be discussed and a smaller version of a project labeled MSc may often be carried out as a BSc thesis.

Many more projects in the research domain of the group are possible. If you would like to suggest a topic for a thesis project, please contact a team member to discuss your idea.

These projects are intended for computer-science students at the University of Bern and those enrolled in the Swiss Joint Master of Science in Computer Science. We do not offer any internships.

Posted Title Type Contact Status
2024 Analysing the MEG-RDT BSc David Lehnherr Available
2024 Formalising Lockstep Protocols MSc David Lehnherr Available
2024 Exploring Central Bank Digital Currencies implementations BSc/MSc François-Xavier Wicht Available
2023 Analysis and Documentation of the Snowman Consensus Protocol BSc/MSc Philipp Schneider Available
2023 An empirical study of privacy-preserving blockchains with the transaction graph BSc/MSc François-Xavier Wicht Available
2023 Vertex coloring in the hybrid network model BSc/MSc Philipp Schneider Available
2022 Practical multiparty computation MSc Michael Senn Available
2022 MEV detection on the Kyber network MSc Jovana Micic Available
2022 Front-running and the XRP Ledger MSc Jovana Micic Available
2022 Analyzing a modern Byzantine consensus protocol and its primitives MSc David Lehnherr Available
2022 Validity in Byzantine consensus Bsc/MSc Christian Cachin Available
2021 Evaluation communication over the Internet BSc Christian Cachin Available
2021 Refined security analysis of Ripple consensus MSc Jovana Micic, Ignacio Amores Sesar Available
2021 Implementing asymmetric Byzantine consensus MSc Christian Cachin Available

Current thesis projects

Semester Title Type Advisor Student
HS2023 Exploring threshold signature schemes MSc Mariarosaria Barbaraci Lukas Leo Schacher
FS2023 Metastable consensus protocols - implementation and evaluation MSc Philipp Schneider Tobias Famos
FS2023 Asynchronous verifiable secret sharing schemes with polynomial commitments Bsc Orestis Alpos, Mariarosaria Barbaraci Fabio Suter

Completed thesis projects

Date completed Title Type Advisor Student
HS2023 An extended, modular library of distributed protocols BSc Jovana Micic Marcel Haag
FS2023 Implementing Distributed Randomness Msc Mariarosaria Barbaraci, Orestis Alpos Marius Asadauskas
HS2023 Blockchain and BlockDAG protocols MSc Ignacio Amores Sesar Renato Rao
HS2023 Design and Implementation of an Asynchronous Distributed Key Generation Protocol Msc Orestis Alpos, Mariarosaria Barbaraci Markus Eggiman
FS2023 Analyzing Inter-blockchain Communication BSc David Lehnherr Raphael Fehr
FS2023 Analyzing FastPay BSc David Lehnherr Noah Maggio
FS2023 Solana Consensus Protocol
(available on request)
MSc Jovana Micic, Luca Zanolini Elias Wipfli
FS2023 Balance attack on a forkable blockchain MSc Ignacio Amores Sesar Marcel Zauder
FS2023 Implementing and evaluating protocol Π3 in BlockSim BSc Orestis Alpos, Ignacio Amores Sesar Lawrence Chiang
FS2023 Exploring threshold cryptosystems MSc Orestis Alpos Michael Senn
FS2023 E-Voting verifier for the Swiss Post voting system BSc Patrick Liniger, Mariarosaria Barbaraci Marc Günter
HS2022 Security in the NFT world BSc Jovana Micic Noé Bayard
HS2022 Blockchain privacy notions using the transaction graph model MSc Duc V. Le François-Xavier Wicht
HS2022 Concurrent distributed storage protocols MSc David Lehnherr Marco Cacciatore
HS2022 Benchmarking threshold signatures for consensus protocols Bsc Orestis Alpos Julien Brunner
FS2022 Implementation of a threshold post-quantum signature scheme MSc Ignacio Amores Sesar, Nathalie Steinhauer Dominique Roux
FS2022 Cryptographic primitives for on-chain tumbler designs BSc Duc V. Le Marko Cirkovic
FS2022 Filecoin consensus: Performance analysis MSc Christian Cachin Marcel Würsten
FS2022 Secure execution on a blockchain MSc Christian Cachin Riccardo Zappoli
FS2022 Blockchain consensus protocols based on stake MSc Luca Zanolini Timo Bürk
FS2022 Fair transaction order in Hedera Hashgraph BSc Nathalie Steinhauer Matteo Biner
HS2021 A concurrent DEX on Cardano BSc Luca Zanolini, Jovana Micic Peter Brühwiler
HS2021 Consensus zoo
(available on request)
MSc Jovana Micic Paula Raseni
HS2021 Multiparty computation on blockchain BSc Orestis Alpos Gillian Cathomas
HS2021 Randomness and games on Ethereum MSc Luca Zanolini
Ignacio Amores Sesar
Peter Allemann
HS2021 Exploring blockchain-based decentralized exchanges BSc Jovana Micic Benjamin Helmy
FS2021 Implementation of an asset transfer system … BSc Orestis Alpos Jérémie De Faveri
FS2021 Encrypting into the future BSc Christian Cachin, Giorgia Marson Lukas Schacher
FS2021 PoET: An eco-friendly alternative to PoW BSc Ignacio Amores Sesar Marius Asadauskas
FS2021 Secure causal atomic broadcast BSc Orestis Alpos Noah Schmid
FS2021 Provably robust proof-of-stake protocols MSc Giorgia Marson Arbër Kuçi
FS2021 Implementing RSA signatures on the Internet Computer BSc Jovana Micic Michael Senn
HS2020 Analysis of the Tangle BSc Ignacio Amores Sesar Michael Brunner
HS2020 The library of distributed protocols MSc Jovana Micic Aleksandar Lazic
FS2020 Blockchain and BlockDAG protocols BSc Ignacio Amores Sesar Luca Althaus
FS2020 Using polynomial systems to decode binary linear codes BSc Alex Pellegrini Annina Helmy
FS2020 Implementing Byzantine-fault tolerant algorithms in DistAlgo BSc Orestis Alpos
Luca Zanolini
Roland Widmer
FS2020 BLS signatures in PROTECT MSc Christian Cachin Patrick Hodel
HS2019 Threshold cryptography with Tendermint Core MSc Christian Cachin Nathalie Froidevaux
HS2019 Evaluating the B3 condition in asymmetric quorums BSc Orestis Alpos Sabine Brunner
FS2019 Execution of smart contracts with ARM TrustZone MSc Christian Cachin, Pascal Felber (UniNE) Christina Müller
HS2019 Generalized quorums for consensus BSc Orestis Alpos, Christian Cachin Angela Keller
FS2019 Security analysis of Ripple consensus
(available on request)
MSc Christian Cachin Jovana Micic

Instructions and templates for theses

Once you have agreed with your supervisor on a topic and on a start- and end-date, fill in the corresponding form and complete the respective procedure:

Presentation

Every thesis must be presented near the completion or at the end of the project. Usually this occurs during the semester, within the regular seminar organized by the Cryptology and Data Security group. BSc students must also attend the seminar as a regular participant and get credit for it. The seminar’s title may vary; see the course page for details. You should agree with your supervisor in the initial stage of the thesis on where and when to present your work.

Software

For archiving software and thesis report, log in once to the INF gitlab server with your Campus Account (small login box at the bottom). This creates your user representation inside the server. Then ask your supervisor to create a repository for the project under the group crypto-students according to the pattern:

https://gitlab.inf.unibe.ch/crypto-students/2019.bsc.firstname.lastname
https://gitlab.inf.unibe.ch/crypto-students/2020.msc.firstname.lastname

Templates

For a seminar report you may use the sample article template used by the CRYPTO group.

For a BSc thesis a sample template is available on the Cryptography and Data Security group website.

For a Msc thesis, the sample template is available on JMCS website.

The final version of a thesis consists of a single PDF file. Printed copies are not needed. This file must also contain the signed declaration (“Erklärung”), in which the candidate confirms that she/he personally authored the work. (Print, sign, scan, and include the declaration at the end of the thesis.)

Research advice

Computer-science research can, roughly, be divided into “systems” and “theory” projects.

In systems research, one builds, experiments, and measures. Research results are typically demonstrated through an evaluation. However, measuring the behavior of a complex system is tricky. If you measure anything in your project, then you should read and follow this useful resource:

  1. Always Measure One Level Deeper (PDF Format), authored by John Ousterhout, a distinguished systems researcher at Stanford University.

Theoretical research demonstrates its insight in abstract form, through algorithms, protocols, and (crypto)schemes described abstractly in the computer-science dialect of the language of mathematics. Here, results are typically demonstrated through proofs. If you author a theoretical thesis, then you should read and follow some advice on mathematical writing, such as:

  1. Mathematical Writing by Knuth, Larrabee, and Roberts (PDF Format). Read points 1-27 on pages 1-6.

  2. Many guides to mathematical writing can be found online. Pick one that you like.

Writing advice

Theses are written in English. Refer to a manual of style for guidance on writing scientific texts. You should read and follow at least the first two.

  1. Advice on writing in computer science, published by Renée Miller of the University of Toronto, is a concise summary with pointers to more material.

  2. The BSc thesis template explains how to assemble and format the bibliography using BibTeX.

  3. Advice on Writing, Presentation & Plagiarism from the JMCS programme.

  4. The Elements of Style by Strunk and White is a classic style guide (it even has its own Wikipedia page!) and one can find versions online.

Graduation

After finishing the thesis, some forms have to be processed:

  • For BSc, the advisor completes the form and hands it to the Studiensekretariat.

  • For MSc, you fill in parts “Finishing…” and “Pledge…” on the back of the JMCS form for MSc theses and hand this to the Studiensekretariat at Uni BE. The advisor the completes the JMCS form, fills the form of Uni BE, and hands both to the respective recipients.

Finally, follow the steps to graduate.