How the Consensus Protocol Impacts Blockchain Throughput
The rapid evolution of blockchain technology has led to the demand for higher quality blockchain-based applications. This presents key challenges to designing high performance blockchain protocols, since the performance of a blockchain network ultimately depends on the consensus mechanism chosen. One of the key challenges for blockchain technology, for a long time, has been the question of how to enhance throughput or, in other words, how to increase the speed of transactions. The only way to achieve such improvement is to first understand where the bottlenecks occur.
Latency & Throughput Bottlenecks
Latency refers to the time one has to wait till their transaction is processed. With public decentralized distributed ledgers, there is a huge number of nodes that need to reach a consensus for a transaction to be verified. And to process the transaction so that consensus can be reached, each node requires access to the entire blockchain. This would mean an enormous database over time. Providing access to the entire blockchain to hundreds of nodes also increases the security threat.
The result is that there are thousands more transactions in the queue than are being verified every minute. Some ecosystems have tried to address this issue by only partially decentralizing their distributed ledger, where only a limited number of major nodes need to reach consensus.
Impact of Consensus Protocol on Throughput
It is the consensus mechanism that ultimately determines the level of security, speed of transactions and scalability of a network. Proof-of-Work and Proof-of-Stake are the most commonly used consensus mechanisms for permissionless blockchains. For enterprise blockchains, Crash Fault Tolerant protocols are being used today. However, these come with their own set of challenges.
Crash Fault Tolerance
A distributed system faces a number of threats. Processes may crash, devices at some location may fail or a network connection may stop working. For enterprise use, the consensus algorithm must have resilience against a variety of threats.
Crash fault tolerance (CFT) builds a degree of resiliency in the protocol, so that the algorithm can correctly take the process forward and reach consensus, even if certain components fail.
CFT is a good solution when a component of the system fails. However, when blockchain is used by enterprises, there may be different companies, divisions or teams controlling separate components of the system. These different companies, divisions or teams may have different objectives, which leaves the system vulnerable to the threat of malicious activity. CFT is unable to reach consensus if any entity acts maliciously.
Byzantine Fault Tolerance
Byzantine Fault Tolerance (BFT) is a consensus protocol that is not only able to tolerate failures in the computing systems on the network, it is also able to withstand corrupted data and malicious attacks.
What BFT does is ensure that every node receives the same guaranteed data. This is why even faulty devices or malicious attacks are unable to breach the protocol. In simpler words, as long as two-thirds of the nodes are safe, consistency of consensus can be ensured.
The credit for the development of BFT goes to Robert Shostak, Leslie Lamport and Marshall Pease, who first proposed the Byzantine General’s problem. To understand this problem, imagine a group of Byzantine generals, leading their respective armies in preparation of an attack. To win the battle, the generals will need to coordinate their attack so that all attacks occur simultaneously. Now, if even one of the generals is a traitor, how will they coordinate their attack?
This situation can be extrapolated to the blockchain consensus mechanism. Here too, one bad actor could compromise the achievement of consensus. BFT takes care of this by using an algorithm through which consensus can be achieved even if only two-thirds of the nodes are in agreement. Using BFT, no single point of failure or uncoordinated bad actors can impact consensus.
NEC Focuses on Resolving Existing BFT Limitations
Byzantine fault-tolerant (BFT) protocols have not yet seen significant real-world deployment. Traditional BFT techniques provide high availability and security, but have failed in ensuring high throughput. In such BFT techniques, each node does not need to access the entire database to be able to verify a transaction. They can do so by only accessing the segment of the blockchain directly related to the current transaction.
NEC has taken a leap further in introducing a potentially-revolutionary consensus protocol - FastBFT. This novel consensus protocol not only ensures high availability and security, but also delivers high throughput.
While the existing BFT protocols typically achieve few hundreds of transactions per second, FastBFT has been able to exponentially increase throughput by taking care of the dependence of transaction speed on every node needing to independently verify each transaction after downloading the entire blockchain. The NEC FastBFT protocol achieves throughput speeds of up to a whopping 100,000 tps for a blockchain system comprising of 200 nodes.The throughput performance can be observed in the process of reaching consensus only.
NEC also realized that another problem with the existing BFT. While this protocol handles some of the most difficult challenges for distributed ledgers, it has scalability limitations. The NEC FastBFT takes care of the problem of latency and computational power requirements, without compromising scalability.
Enhancing the scalability and performance of BFT protocols is essential for ensuring their practical deployment in existing industrial blockchain solutions. The NEC FastBFT protocol is a powerful solution for both these issues, while maintaining high security.
How the NEC Blockchain Solves the Throughput Problem
Following extensive analysis of existing blockchain solutions, NEC has designed an enterprise blockchain solution that addresses the major challenges faced by this technology today – security, throughput and scalability. With a focus on three sectors, financial services, supply chain management and decentralized storage systems, NEC FastBFT overcomes the vulnerabilities and limitations of other blockchains.
FastBFT is a novel BFT protocol that is both fast and scalable. It is based on an innovative message aggregation technique that combines hardware-based trusted execution environments with lightweight secret sharing. Also FastBFT’s message aggregation technique does not require any public-key operation. This translates to considerably lower computation and communication overhead.
FastBFT requires only a subset of nodes to actively run the protocol. A simple failure detection mechanism enables FastBFT to efficiently deal with non-primary faults.
All these features make FastBFT ideal for next-gen blockchain systems. With the use of FastBFT, NEC has been able to achieve:
- Consensus with fewer communication rounds than all other BFT protocols in existence.
- Prevention of double-spend transaction and storage of invalid transaction data.
- Up to 100,000 tps, way ahead of even Visa
(February 28, 2020)