Blockchain

Consensus protocol for permissioned blockchain networks

In this article, we would be discussing on how to choose the right consensus protocol for permissioned blockchain networks. No transaction within in a blockchain network can take place without the help of a proper consensus mechanism.

Since its invention in 2008, Blockchain technology has evolved a lot. Back then, Bitcoin was the only blockchain network existed. But today, there are a wide range of blockchain networks built to meet the diverse needs and use cases across multiple industries. Assuming that you already have a basic understanding of what blockchain technology is, we’ll discuss the types of blockchain networks and different consensus protocols in this article.

Permissionless and Permissioned blockchains

Permissionless blockchains are also known as public blockchains. Here, anyone can access and create data, publish smart contracts or run nodes. Individuals do not need to get permission to join and interact with other members of the blockchain. The very first type of permissionless blockchain is Bitcoin. It enabled users to transfer digital currencies among themselves. The consensus algorithm used by bitcoin is Proof-of-Work (PoW). Another popular permissionless blockchain is Ethereum, which uses the Proof-of-Stake(PoS) consensus model.

consensus protocol for permissioned blockchain

A permissionless blockchain is open. Any individual can participate as a node and stay anonymous. This makes it very easy for a node to tamper and modify transactions and include them in a new block. This can lead to a fork in the blockchain, which occurs when two parties are not in agreement with each other. A consensus algorithm can help us avoid such forks so that everyone agrees to a single version of truth.

Related Article : What to know before implementing blockchain in your business

In permissioned blockchains, not everyone can join the blockchain. Each individual will need special permission from the network administrator or the owner to join the network. This is useful for companies, banks, and institutions that prefer to comply with the regulations and would like to have complete control of their data. In a permissioned blockchain, all the participating nodes are known and chosen. However, consensus is still required because we can’t assume that every node is trustworthy.

What is a blockchain consensus protocol?

A blockchain consensus protocol enables all the parties of the blockchain network to come to a common agreement (consensus) on the present data state of the ledger. This promotes trust among unknown peers in a distributed computing environment. If any individual wants to add some information to the blockchain, it is crucial for the distributed peers of the blockchain to analyze and agree on all the additions before they are permanently incorporated into the blockchain.

There are a number of consensus models that are used to maintain transparency and fairness in a blockchain. However, these models are different for permissioned and permissionless blockchains. All consensus models are built on a foundation of certain objectives. These include:

  • Coming to an agreement: Each model aims to collect as many agreements from the group as possible
  • Collaboration: Every participating member in the blockchain aims toward an agreement that considers the group’s interest as a whole.
  • Co-operation: Every member will work together as a team while putting their own interests aside.
  • Equal Rights: The vote of each group member will have the same value. This means that every person’s vote is important.
  • Participation: Every individual in the blockchain must participate in the voting.
  • Activity: Each blockchain participant must remain equally active. No one in the network will be given more responsibility than the other.

Types of consensus protocol for permissioned blockchain networks

Permissioned blockchains cannot use the same type of consensus models that are seen in permisionless blockchains. There are numerous variants of such consensus algorithms that are available today for permissioned blockchains. The most popular ones that are being implemented in many organizations around the world are:

PBFT Consensus

Permissioned blockchains usually use pbft algorithms. One of the models that is used to facilitate consensus in blockchain is the practical byzantine fault tolerance algorithm (PBFT). In this model, each node exists in an internal state, which means that it will maintain an ongoing specific information or status). Each time a node receives a message, they use the message with respect to their internal state to perform a computation or operation. Consequently, this computation will send messages to other nodes to ask if the transaction is valid. After receiving verification from all of the other nodes, the first node will broadcast that decision with all the other participants in the network. A consensus decision is achieved based on the total confirmations submitted by all the nodes.

PBFT can be very beneficial for low latency storage systems, This type of model is often used in digital assets backed platforms that don’t need a great amount of capacity, but carry out a large number of transactions. PBFT makes sure that the transaction records within the network are accurate. A few examples of permissioned blockchains that use this model are Hyperledger and Chain.

Federated Consensus

In Federated Consensus, each node in the blockchain network puts their trust in a set of signers who help them reach the consensus stage. In order to carry out the process in an efficient manner, the block signers use a single block generator, which receives, holds and filters all the transactions. The generator’s signature is used to coordinate with the signers for the block validation process. Each block signer will verify the block which is signed by the block generator and which fulfills the certain conditions set by the network. Once the block generator receives enough signatures from the network, the block will get published to the network.

This model guarantees security and transparency . It is ideal for use cases such as cross border remittance, real time KYC etc. Common examples of blockchains that use this model are Stellar and Ripple.

Related Article : How to choose the right Blockchain as a Service provider?

Round Robin Consensus

In Round Robin Consensus, validators take part in the consensus process by signing votes for blocks. Usually, there are three main types of votes: a prevote, a precommit and a commit. To receive more than two third of commits means to receive commits from a two third majority of validators. A block is considered to be committed by the network when a two third majority of validators have signed and broadcasted commits for that block.

At each height of the blockchain a round-based protocol is run to determine the next block. Each round consists of three steps (Propose, Prevote, and Precommit), along with two special steps Commit and NewHeight. The Propose, Prevote, and Precommit steps each take one third of the total time allocated for that round. Each round is longer than the previous round followed by a small fixed increase of time. This allows the network to eventually achieve consensus in a limited concurrent network.

Round robin consensus process doesn’t rely on a single participant for the block validation process. In this model, several nodes play a major role in validating and signing transactions. which makes this process more secure when compared to other consensus processes. There are also lower chances of double spend attacks due to the voting power distribution among trusted nodes. Round robin consensus mechanism is ideal for the trade, finance and supply chain industries. Some well known permissioned blockchains that use the Round Robin consensus method include Multichain and Tendermint

Design Goals to choose the right blockchain consensus protocol

If you are trying to decide on the right consensus protocol for your blockchain, there are some things that you should take into account. They include

  • The speed in which your blocks will need to be written into the blockchain? Consensus formation can take time. If consensus is faster, the trust guarantees will be much lower (and vice versa).
  • What type of network will you be using? Is it synchronous, partially synchronous, eventually synchronous or asynchronous?. For example, the Internet does not guarantee message delivery and is generally considered to be eventually synchronous.
  • How many miners, writers, or validators do you think you will need? These special blockchain nodes are the ones which will select blocks to write to the chain.
  • How “final” does a block need to be? Banks and other financial institutions most often expect any transactions to be immediately final (that is, they cannot be rolled back). Some consensus protocols treat block decisions to be conditional on future actions. In others, blocks may eventually be final but are not immediately so.
  • To what degree do you put your trust in the nodes/operators? Are you trying to protect your blockchain from nodes that might crash, nodes that might actively attempt to hack the blockchain, or both?

In a permissioned blockchain, choosing the right consensus protocol for permissioned blockchain depends on factors like the extent of decentralization required (For example, how much the participants in a network trust each other, the number of permissions that must be granted to all the participants to carry out important tasks on the network etc).

Most of the time, these types permissioned blockchains usually use pbft algorithms (Practical byzantine fault tolerance) and its variants including voting and lottery-based consensus as opposed to consensus models like the Proof-of-Work consensus that are prevalent in the major permissionless public networks.

The adoption of blockchain technology can provide many benefits like enhanced transparency, security and traceability to businesses in all industries. However, blockchain networks cannot function properly without consensus algorithms to verify each and every transaction that is being committed. This is why it is crucial to choose the right consensus model for your specific blockchain.

Related Articles

Back to top button

Adblock Detected

Please consider supporting us by disabling your ad blocker