This paper presents IBFT, a simple and elegant Byzantine fault-tolerant consensus algorithm that is used to implement state machine replication in the \emph{Quorum} blockchain. IBFT assumes a partially synchronous communication model, where safety does not depend on any timing assumptions and only liveness depends on periods of synchrony. The algorithm is deterministic, leader-based, and optimally resilient - tolerating $f$ faulty processes out of $n$, where $n \geq 3f+1$. During periods of good communication, IBFT achieves termination in three message delays and has $O(n^2)$ total communication complexity.
Mokka is a partial-synchronous, strong consistent BFT consensus algorithm for reaching the consensus about a certain value in open networks. This algorithm has some common approaches nested from RAFT, but its nature and design make Mokka a better solution for DLT (distributed ledger).
In this paper we analyse the correctness of Istanbul BFT (IBFT), which is a Byzantine-fault-tolerant (BFT) proof-of-authority (PoA) blockchain consensus protocol that ensures immediate finality. We show that the IBFT protocol does not guarantee Byzantine-fault-tolerant consistency and liveness when operating in an eventually synchronous network, and we propose modifications to the protocol to ensure both Byzantine-fault-tolerant consistency and liveness in eventually synchronous settings.
With the advancement of blockchain systems, many recent research works have proposed distributed ledger technology~(DLT) that employs Byzantine fault-tolerant~(BFT) consensus protocols to decide which block to append next to the ledger. Notably, BFT consensus can offer high performance, energy efficiency, and provable correctness properties, and it is thus considered a promising building block for creating highly resilient and performant blockchain infrastructures. Yet, a major ongoing challenge is to make BFT consensus applicable to large-scale environments. A large body of recent work addres…
The paper presents Tendermint, a new protocol for ordering events in a distributed network under adversarial conditions. More commonly known as Byzantine Fault Tolerant (BFT) consensus or atomic broadcast, the problem has attracted significant attention in recent years due to the widespread success of blockchain-based digital currencies, such as Bitcoin and Ethereum, which successfully solved the problem in a public setting without a central authority. Tendermint modernizes classic academic work on the subject and simplifies the design of the BFT algorithm by relying on a peer-to-peer gossip p…
In this paper, we present a new BFT consensus mechanism which enables thousands of nodes to participate in the consensus process, and supports very high transaction throughput. This is achieved via an aggregated signature gossip protocol which can significantly reduce the messaging complexity and thus allows a large number of nodes to reach consensus quickly. The proposed aggregated signature gossip protocol leverages a non-interactive leaderless BLS signature aggregation scheme. We have proven the correctness of the protocol, and analyzed its efficiency. In our analysis, each node only needs …
HYDRA: Breaking the Global Ordering Barrier in Multi-BFT Consensus
University of British Columbia(不列颠哥伦比亚大学);University of California, Davis(加州大学戴维斯分校);City University of Hong Kong(香港城市大学);Southern University of Science and Technology(南方科技大学)
It is a critical matter for a blockchain system whether a Byzantine fault tolerance (BFT) can be guaranteed during a consensus process. Can connected vehicles (CVs) achieve the BFT consensus when the vehicles keep mobile? This paper seeks an answer to this fundamental question. It focuses on characterizing the impact of mobility on the performance of a BFT consensus among CVs.
We present a general consensus framework that allows to easily introduce a customizable Byzantine fault tolerant consensus algorithm to an existing (Delegated) Proof-of-Stake blockchain. We prove the safety of the protocol under the assumption that less than 1/3 of the validators are Byzantine. The framework further allows for consensus participants to choose subjective decision thresholds in order to obtain safety even in the case of a larger proportion of Byzantine validators. Moreover, the liveness of the protocol is shown if less than 1/3 of the validators crash. Based on the framework, we…
There is surge of interest to the blockchain technology not only in the scientific community but in the business community as well. Proof of Work (PoW) and Byzantine Fault Tolerant (BFT) are the two main classes of consensus protocols that are used in the blockchain consensus layer. PoW is highly scalable but very slow with about 7 (transactions/second) performance. BFT based protocols are highly efficient but their scalability are limited to only tens of nodes. One of the main reasons for the BFT limitation is the quadratic $O(n^2)$ communication complexity of BFT based protocols for $n$ node…
We present HotStuff, a leader-based Byzantine fault-tolerant replication protocol for the partially synchronous model. Once network communication becomes synchronous, HotStuff enables a correct leader to drive the protocol to consensus at the pace of actual (vs. maximum) network delay--a property called responsiveness--and with communication complexity that is linear in the number of replicas. To our knowledge, HotStuff is the first partially synchronous BFT replication protocol exhibiting these combined properties. HotStuff is built around a novel framework that forms a bridge between classic…
Consensus in decentralized systems that asynchronously receive events and which are subject to Byzantine faults is a common problem with many real-life applications. Advances in decentralized systems, such as distributed ledger (i.e., blockchain) technology, has only increased the importance of finding performant and secure solutions to consensus of state machine replication in decentralized systems. YAC is a practical decentralized consensus algorithm, that solves the problems of inefficient message passing and strong leaders that occur in classical Byzantine fault tolerant consensus algorith…
Blockchain technology provides an auditable and tamper-proof distributed storage infrastructure for information records. This can be leveraged to support distributed workflow management. Compared to proof-of-work consensus, popularized by Bitcoin and Ethereum, blockchains based on BFT (byzantine fault tolerance) ordering consensus trade scalability for immediacy and finality of consensus. This makes them easier to use as distribution infrastructure, as applications need not be adapted to deal with eventual consistency and delayed consensus of proof-of-work blockchains. Hence, applications such…
Consensus protocols play a pivotal role to balance security and efficiency in blockchain systems. In this paper, we propose an evaluation framework for blockchain consensus protocols termed as AlphaBlock. In this framework, we compare the overall performance of Byzantine Fault Tolerant (BFT) consensus and Nakamoto Consensus (NC). BFT consensus is reached by multiple rounds of quorum votes from the supermajority, while NC is reached by accumulating credibility with the implicit voting from appending blocks. AlphaBlock incorporates the key concepts of Hotstu BFT (HBFT) and Proof-of-authority (Po…
With the growing commercial interest in blockchain, permissioned implementations have received increasing attention. Unfortunately, existing BFT consensus protocols that are the backbone of permissioned blockchains, either scale poorly or offer limited throughput. Most of these algorithms require at least one process to receive and validate the votes from all other processes and then broadcast the result, which is inherently non-scalable. Some algorithms avoid this bottleneck by using aggregation trees to collect and validate votes. However, to the best of our knowledge, such algorithms offer …
The Hong Kong University of Science and Technology(香港科技大学);University of Bern(伯尔尼大学);Stellar Development Foundation(Stellar 开发基金会);Aptos Labs(Aptos 实验室)
There is a resurgence of interest in Byzantine fault-tolerant (BFT) systems due to blockchains. However, leader-based BFT consensus protocols used by permissioned blockchains have limited scalability and robustness. To alleviate the leader bottleneck in BFT consensus, we introduce Stratus, a robust shared mempool protocol that decouples transaction distribution from consensus. Our idea is to have replicas disseminate transactions in a distributed manner and have the leader only propose transaction ids. Stratus uses a provably available broadcast (PAB) protocol to ensure the availability of the…
Blockchain technology has been proposed as a new infrastructure technology for a wide variety of novel applications. Blockchains provide an immutable record of transactions, making them useful when business actors do not trust each other. Their distributed nature makes them suitable for inter-organizational applications. However, proof-of-work based blockchains are computationally inefficient and do not provide final consensus, although they scale well to large networks. In contrast, blockchains built around Byzantine Fault Tolerance (BFT) algorithms are more efficient and provide immediate an…
Low latency is one of the desired properties for partially synchronous Byzantine consensus protocols. Previous protocols have achieved consensus with just two communication steps either by reducing the bound on the number of faults the protocol can tolerate ($f \leq \frac{n-1}{5}$) or use of trusted hardware like Trusted Execution Environment or TEEs. In this paper, we propose a protocol called Fast B4B, in which the protocol achieves consensus in just two communication steps. Fast B4B can tolerate maximum number of faults a partial BFT consensus can tolerate ($f \leq \frac{n-1}{3}$). Furtherm…
The performance of partially synchronous BFT-based consensus protocols is highly dependent on the primary node. All participant nodes in the network are blocked until they receive a proposal from the primary node to begin the consensus process.Therefore, an honest but slack node (with limited bandwidth) can adversely affect the performance when selected as primary. Hermes decreases protocol dependency on the primary node and minimizes transmission delay induced by the slack primary while keeping low message complexity and latency. Hermes achieves these performance improvements by relaxing stro…
Permissioned Blockchains are increasingly considered in enterprise use-cases, many of which do not require geo-distribution, or even disallow it due to legislation. Examples include country-wide networks, such as Alastria, or those deployed using cloud-based platforms such as IBM Blockchain Platform. We expect these blockchains to eventually run in environments with high bandwidth and low latency modern networks, as well as, advanced programmable hardware accelerators in servers. Even though there is renewed interest in BFT consensus algorithms with various proposals targeting Permissioned Blo…
We present Egalitarian BFT (EBFT), a simple and high-performance framework of BFT consensus protocols for decentralized systems like blockchains. The key innovation in EBFT is egalitarian block generation: nodes randomly and non-interactively propose blocks containing client transactions, rather than relying on a leader to do so. Apart from deterministic safety and liveness guarantees standard in BFT protocols, the egalitarian design provides two novel features: (i) EBFT is resilient to attacks targeting the leader, such as bribery and targeted DoS attacks, and (ii) EBFT does not require any f…
The growing interest in reliable multi-party applications has fostered widespread adoption of Byzantine Fault-Tolerant (BFT) consensus protocols. Existing BFT protocols need f more replicas than Paxos-style protocols to prevent equivocation attacks. Trust-BFT protocols instead seek to minimize this cost by making use of trusted components at replicas. This paper makes two contributions. First, we analyze the design of existing Trust-BFT protocols and uncover three fundamental limitations that preclude most practical deployments. Some of these limitations are fundamental, while others are linke…
Chimera: Protocol-Aware Recovery for Confidential BFT Consensus
Southern University of Science and Technology(南方科技大学);University of British Columbia(不列颠哥伦比亚大学);East China Normal University(华东师范大学);Texas A&M University(德克萨斯农工大学);City University of Hong Kong(香港城市大学)
This paper introduces a family of leaderless Byzantine fault tolerance protocols, built around a metastable mechanism via network subsampling. These protocols provide a strong probabilistic safety guarantee in the presence of Byzantine adversaries while their concurrent and leaderless nature enables them to achieve high throughput and scalability. Unlike blockchains that rely on proof-of-work, they are quiescent and green. Unlike traditional consensus protocols where one or more nodes typically process linear bits in the number of total nodes per decision, no node processes more than logarithm…
Existing Byzantine fault-tolerant (BFT) consensus protocols address only threshold failures, where the participating nodes fail independently of each other, each one fails equally likely, and the protocol's guarantees follow from a simple bound on the number of faulty nodes. With the widespread deployment of Byzantine consensus in blockchains and distributed ledgers today, however, more sophisticated trust assumptions are needed. This paper presents the first implementation of BFT consensus with generalized quorums. It starts from a number of generalized trust structures motivated by practice …
This paper presents a new framework, namely \emph{\onlay}, for scalable asynchronous distributed systems. In this framework, we propose a consensus protocol $L_ϕ$, which is based on the Lachesis protocol~\cite{lachesis01}. At the core of $L_ϕ$ protocol, it introduces to use layering algorithm to achieve practical Byzantine fault tolerance (pBFT) in leaderless asynchronous Directed Acyclic Graph (DAG). Further, we present new online layering algorithms for the evolutionary DAGs across the nodes. Our new protocol achieves determistic scalable consensus in asynchronous pBFT by using assigned laye…
In this work, we present IBFT 2.0 (Istanbul BFT 2.0), which is a Proof-of-Authority (PoA) Byzantine-fault-tolerant (BFT) blockchain consensus protocols that (i) ensures immediate finality, (ii) is robust in an eventually synchronous network model and (iii) features a dynamic validator set. IBFT 2.0, as the name suggests, builds upon the IBFT blockchain consensus protocol retaining all of the original features while addressing the safety and liveness limitations described in one of our previous works. In this paper, we present a high-level description of the IBFT 2.0 protocol and related robust…
Hyperledger Fabric is an enterprise grade permissioned distributed ledger platform that offers modularity for a broad set of industry use cases. One modular component is a pluggable ordering service that establishes consensus on the order of transactions and batches them into blocks. However, as of the time of this writing, there is no production grade Byzantine Fault-Tolerant (BFT) ordering service for Fabric, with the latest version (v2.1) supporting only Crash Fault-Tolerance (CFT). In our work, we address crucial aspects of BFT integration into Fabric that were left unsolved in all prior w…
SURFACE, standing for Secure, Use-case adaptive, and Relatively Fork-free Approach of Chain Extension, is a consensus algorithm that is designed for real-world networks and enjoys the benefits from both the Nakamoto consensus and Byzantine Fault Tolerance (BFT) consensus. In SURFACE, a committee is randomly selected every round to validate and endorse the proposed new block. The size of the committee can be adjusted according to the underlying network to make the blockchain mostly fork-free with a reasonable overhead in communication. Consequently, the blockchain can normally achieve fast prob…
University of British Columbia(不列颠哥伦比亚大学);SUSTech(南方科技大学);Research Institute of Trustworthy Autonomous Systems of SUSTech(南方科技大学可信自主系统研究院);City University of Hong Kong(香港城市大学);National University of Singapore(新加坡国立大学)
Multi-party data management and blockchain systems require data sharing among participants. To provide resilient and consistent data sharing, transactions engines rely on Byzantine FaultTolerant consensus (BFT), which enables operations during failures and malicious behavior. Unfortunately, existing BFT protocols are unsuitable for high-throughput applications due to their high computational costs, high communication costs, high client latencies, and/or reliance on twin-paths and non-faulty clients. In this paper, we present the Proof-of-Execution consensus protocol (PoE) that alleviates these…
This paper introduces a new consensus protocol, so-called \emph{\stair}, for fast consensus in DAG-based trustless system. In \stair, we propose a new approach to creating local block DAG, namely \emph{x-DAG} (cross-DAG), on each node. \emph{\stair} protocol is based on our Proof-of-Stake StakeDag framework \cite{stakedag} that distinguishes participants into users and validators by their stake. Both users and validators can create and validate event blocks. Unlike StakeDag's DAG, x-DAG ensures that each new block has to have parent blocks from both Users and Validators to achieve more safety …