Oppgaven er ikke lenger tilgjengelig

Overhead study of blockchain platforms

Introduction

Blockchain is one of the main technologies behind cryptocurrencies, such as Bitcoin and Ethereum. Its main promises are to solve problems such as privacy, security, and inclusion with help of cryptography. It is believed that blockchain will dismantle and disrupt established business relationships, shifting influence from organizations to individuals, building trusted decentralized decision processes, and empowering consumers.

Although, there are many possibilities and that expectations are high from this technology; the platforms are still immature and the implications it will have on applications are not fully understood. There are many issues arising from the combinations of settings of the different technology components of a blockchain platform, e.g., cryptography strength, communication protocols, consensus protocols, real-time transaction processing.

Master thesis topic: Overhead study of blockchain platforms

  1. Deploy a private blockchain, based on different platforms (e.g., Hyperledger Fabric, Hyperledger Sawtooth, Quorum)

  2. Deploy a supply chain application to generate load on the respective blockchains

  3. Implement and deploy a test application on a IoT platform (i.e., CPU/memory/network resources constraint platform) to participate as client to a blockchain in a supply chain application

  4. Define a set of measurements to quantify the performance of a blockchain platform

  5. Analyze the measurements


Contact Ovidiu Drugan (ovidiu.drugan@dnvgl.com) if you are interested in this topic.

 

Background: Blockchain

A blockchain is a distributed ledger (i.e., the main journal for recording in-/out- transactions in an financial system), comprised of practically unchangeable, digital recorded data in packages called blocks. These recorded "blocks" of data are stored in a linear chain. Each block in the chain contains data (e.g. a transaction) and is cryptographically hashed. The blocks of hashed data draw upon the previous-block in the chain, ensuring all data in the overall "blockchain" has not been tampered with and remains unchanged.

Typical steps for a transaction using blockchain are:

  1. Transmit message to the blockchain network: incl. message content and a digital signature to confirm sender’s, transaction content and receivers address

  2. Nodes in the network authenticate/validate the message

  3. Transactions are aggregated into a block that will be distributed in the network for consensual, replicated, shared, and synchronized digital data

  4. Validator nodes receive the block and validate it

  5. With consensus achieved, the block is added to the blockchain

The most obvious advantages of using blockchain are related to enhanced transparency in business applications and between the involved parties. Since the blockchain is cryptographically protected it can be made public allowing anyone to check the correctness of a transaction. By this, blockchain will lead to automation of business processes and better process control. And blockchain is thus widely expected to be able to disrupt business intermediaries providing trust today.

Links:

  1. Hyperledger Fabric: https://www.hyperledger.org/projects/fabric

  2. Hyperledger Sawtooth: https://www.hyperledger.org/projects/sawtooth

  3. Hyperledger Burrow: https://www.hyperledger.org/projects/hyperledger-burrow

  4. Ethereum: https://ethereum.org/

  5. Quorum: https://www.jpmorgan.com/global/Quorum

Publisert 25. sep. 2017 16:23 - Sist endret 18. nov. 2017 10:39

Student(er)

  • Salman Ahmed

Omfang (studiepoeng)

60