Analysing Bitcoin-like Crypto-currencies
This project involves looking into Bitcoin or Etherium and the protocols and security technology behind it. You should expect to work with newly introduced technologies like Bitcoin consensus and distributed peer-to-peer network algorithms, or Block-chain style of distributed write-only database, or proof-of-work algorithms.
Depending on the motivation and abilities of the student, this project include work on developing a new Crypto-currency for Science, which is a project initiated by Stefan Krauss.
Various paths can be explored and we decide that together with the student.
One possibility is to use existing tools for analysing security protocols, like ProVerif or Murphi. One would look into how to model one or several of the protocols involved in Bitcoin, and then use the tools to verify security properties of them individually and when put together, which is more challenging. Some preliminary work is using Uppaal.
One can also choose to do a more empirical and practical analysis of the Bitcoin network, but this has been done by more people (e.g.: by Clemens H. Cap, or The Bitcoin Backbone Protocol: Analysis and Applications, or Quantitative Analysis of the Full Bitcoin Transaction Graph), than the above approach based on formal tools. Still many aspects can be explored here as well.
Another possibility is to look into privacy and anonymity aspects of Bitcoin and other similar currencies like the Zerocoin paper (which is a bit mathematical, but other resources exist on their website).
Yet another possibility is to look into the whole implementation system, the bitcoind project, which many say it is a wonderful piece of software programming (e.g. see Dan Kaminsky opinion). Here are many on-line resources, e.g.: Bitcoin Developer Reference,
There exist a few works on Bitcoin, and the student can start from them (e.g.: A good MSc thesis, A good Book “Mastering Bitcoin” by Andreas M. Antonopoulos, A nice Overview of Challenges for Bitcoin, good resources from a Crypto-Course). The technologies that Bitcoin popularized are quite impressive, e.g. see the adoption of the block-chain idea by the Linux Foundation in their Hyperledger project.
From Brandon Palacio.