Cryptocurrencies, such as bitcoin, are omnipresent: In this seminar, we will study the various technologies and concepts that form the core of digital currencies, such as blockchain. In simple terms, a digital currency is based on a globally-distributed database executing transactions in a peer-to-peer environment. Transactions are not administered by a central authority: It is decentralized and based on a distributed consensus protocol that allows peers to execute transactions collectively.
In addition to digital currencies, such a public transaction database opens up many fields of new (revolutionary?) applications not only applying existing blockchain concepts and technologies, but also improve and further enhance them. The topic of this seminar is to identify and use database and big data technologies that can help building such new blockchain applications.
A small selection of emerging applications and use cases around blockchain and bitcoin:
● Healthcare https://www.youbase.io/
● Identity and access management http://www.ey.com/gl/en/services/advisory/identity-and-access-management---beyond-compliance
● Rights management, i.e., in entertainment industry https://singulardtv.com/ https://musicoin.org/
● Open data https://blog.mediachain.io/bringing-cultural-metadata-to-life-12cc118b2298
● Refugee aid https://www.coindesk.com/the-united-nations-just-launched-its-first-large-scale-ethereum-test/
● Solar energy generation data project http://www.electricchain.org/
● Advertising http://madhive.com/
● Internet-of-Things https://iota.org/
● Supply chains and logistics http://fortune.com/2017/08/22/walmart-blockchain-ibm-food-nestle-unilever-tyson-dole/
● Dating https://matchpool.co/
In this course students will pitch similar applications (use cases) with the main objective to draft a public blockchain application based on a peer-to-peer network executing large amount of transactions in a short period of time. Each team, consisting of up to 4 students, must identify at least one challenging blockchain problem within their use case and implement a prototype solving this problem. Solutions need to be evaluated and presented by the team in the course of regular seminar meetings.
Some technical challenges regarding blockchain and bitcoin:
- Peer-to-peer networks
- Blockchain (public transaction ledger)
- (High Performance) Transactions
- Mining and global consensus (Proof-of-Work, etc.)
- Updates in distributed/replicated database systems
- Data structures: bloom filters, binary hash trees, indexing
- Public-key cryptography and digital signatures