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
Jan 2022 Analyzing a modern Byzantine consensus protocol and its primitives MSc David Lehnherr Available
Jan 2022 Solana Consensus Protocol MSc Luca Zanolini Available
Jan 2022 Validity in Byzantine Consensus Bsc/MSc Luca Zanolini Available
Jan 2022 Asynchronous verifiable secret sharing schemes with polynomial commitments Bsc/MSc Orestis Alpos, Duc V. Le Available
Jan 2022 Evaluating Interoperability Solutions MSc Duc V. Le Available
Nov 2021 Add-on privacy solutions for blockchains MSc Duc V. Le Available
Nov 2021 An extended, modular library of distributed protocols BSc/MSc Jovana Micic Available
Aug 2021 Balance attack on a forkable blockchain BSc/MSc Ignacio Amores Sesar Available
Aug 2021 Evaluation communication over the Internet BSc Luca Zanolini Available
Aug 2021 Refined security analysis of Ripple consensus MSc Jovana Micic, Ignacio Amores Sesar Available
Aug 2021 Implementing asymmetric Byzantine consensus MSc Luca Zanolini, Orestis Alpos Available
Aug 2021 Security analysis of Neo MSc Jovana Micic Available

Current thesis projects

Semester Title Type Advisor Student
FS2022 Cryptographic primitives for on-chain tumbler designs BSc/MSc Duc V. Le Marko Cirkovic
FS2022 Benchmarking consensus protocols Bsc/MSc Orestis Alpos Julien Brunner
FS2022 Implementation of a Threshold Post-Quantum Signature Scheme MSc Ignacio Amores Sesar, Nathalie Steinhauer Dominique Roux
FS2022 Exploring threshold cryptosystems MSc Orestis Alpos Michael Senn
HS2021 Performance analysis of Filecoin MSc Christian Cachin Marcel Würsten
HS2021 Secure execution on a blockchain MSc Christian Cachin Riccardo Zappoli

Completed thesis projects

Date completed Title Type Advisor Student
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
FS2021 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
FS2021 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 steps 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.