Byzantine consensus and blockchain : Models unification and new protocols
Abstract
Any distributed application makes use of agreement protocols in order to maintain a consistent state across multiple machines in a network. With the recent advent of Bitcoin and blockchain-based algorithms, there has been a renewed interest around such agreement protocols, especially regarding their ability to scale and tolerate malicious participants. However this attention has been a source of misunderstanding, flooding an already large and complex subject with vague claims and different terminology.In this thesis, we make a unifying view of the blockchain landscape, by proposing a formulation capturing a wide range of accepted models for agreement protocols. We use this formalism to describe the specifications of various agreement protocols of interest for blockchain. We reframe and make precise the theorems that describe the conditions under which a protocol is possible or not. We also use our framework to describe the model of several prominent blockchains despite their fundamental differences, and we are able to make a fine-grained assessment and comparison of their performance characteristics.Then, we make a proposal for a scalable blockchain, StakeCube. StakeCube's security is based on the Proof-of-Stake model, and its scalability relies on the sharding paradigm, implemented through a distributed hash table.We also implemented (a restricted version of) StakeCube and evaluated its performance, thus validating its scalability property.Notably, because StakeCube trades Proof-of-Work for Proof-of-Stake without sacrificing scalability, it is particularly well suited for IoT applications. To further demonstrate this aspect, we implemented an energy marketplace IoT application in StakeCube and were able to successfully test its viability.
Community
0 commentsNo discussion yet
Be the first to share a question or observation.