Abstract
Byzantine general problem is the core problem of the consensus algorithm, and many protocols are proposed recently to improve the decentralization level, the performance and the security of the blockchain. There are two challenging issues when the blockchain is operating in practice. First, the outcomes of the consensus algorithm are usually related to the incentive model, so whether each participant's value has an equal probability of being chosen becomes essential. However, the issues of fairness are not captured in the traditional security definition of Byzantine agreement. Second, the blockchain should be resistant to network failures, such as cloud services shut down or malicious attack, while remains the high performance most of the time. This paper has two main contributions. First, we propose a novel notion called fair validity for Byzantine agreement. Intuitively, fair validity lower-bounds the expected numbers that honest nodes' values being decided if the protocol is executed many times. However, we also show that any Byzantine agreement could not achieve fair validity in an asynchronous network, so we focus on synchronous protocols. This leads to our second contribution: we propose a fair, responsive and partition-resilient Byzantine agreement protocol tolerating up to 1/3 corruptions. Fairness means that our protocol achieves fair validity. Responsiveness means that the termination time only depends on the actual network delay instead of depending on any pre-determined time bound. Partition-resilience means that the safety still holds even if the network is partitioned, and the termination will hold if the partition is resolved.
Highlights
Byzantine agreement (BA) is one of the central problems in the field of distributed algorithms and cryptography
We show that no BA protocol can achieve agreement, termination, and weakly fair validity at the same time in an asynchronous network;
We show that no BA protocol can achieve both responsiveness and strongly fair validity even in synchronous network
Summary
Byzantine agreement (BA) is one of the central problems in the field of distributed algorithms and cryptography. It plays an important role in multiparty computation and constructing cryptocurrencies. Suppose there are n users, of which at most t may be malicious. The malicious users may deviate from the protocol arbitrarily. The occasional failure caused by software or hardware [2] is viewed as malicious behavior. Each user q starts with an initial value vq. All the users want to decide on one of the initial values, satisfying the following three conditions: 1) Agreement. Two honest users never decide on different values. All honest users terminate in a finite time.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.