BLOG
BLOG
  • Design
  • Data
  • Discernment

We believe in AI and every day we innovate to make it better than yesterday. We believe in helping others to benefit from the wonders of AI and also in extending a hand to guide them to step their journey to adapt with future.

Know more

Our solutions in action for customers

DOWNLOAD

Featured Post

MENU

  • Visit Accubits Website.
  • Artificial Intelligence
  • Blockchain
  • Cloud Computing
  • Entertainment
  • Fintech

How to choose the right Blockchain Consensus Protocol – Part 2

  • mm
    by Rahul A R on Tue Oct 13

In a previous article, we familiarized the concept of consensus mechanisms and how to choose the right consensus mechanism for a permissioned blockchain network. In this article, let’s explore what’s new in the world of DLT, blockchain and newer consensus mechanisms.

A quick brush up on the basics,

A consensus mechanism is the core element of any blockchain network. A blockchain network is formed by numerous nodes that verify the authenticity of transactions happening in the network and the consensus mechanism enables these nodes to arrive at a consensus on what transactions to be added in a new block in the blockchain. Hoping you have a basic understanding of blockchain technology, let’s explore in detail various consensus mechanisms. 

By choosing the right consensus protocol, it is easier to guarantee the fault tolerance and security of the blockchain systems. The consensus protocols enable every single node in a blockchain network to maintain the exact same distributed ledger. In a centralized system, arriving at consensus isn’t a challenging task since there is only one central server/node or a group of distributed central nodes. But in DLT and blockchain networks, each node exists as a host and a server. They need to exchange information with other nodes to reach a consensus. 

Some nodes may be offline, some may not work as expected. And this will adversely impact the process of consensus. This is why it is important to choose a good consensus protocol that can tolerate such occurrences and minimize the harm so as not to affect the final consensus result. 

Need help with Blockchain development?

Reach out to us today and get started!

View Services

While choosing a consensus protocol, it is also important to consider the type of blockchain network used in the system. There are three basic types of blockchain networks: permissioned blockchain, consortium blockchain, and permissionless blockchain. Each type of blockchain has different application scenarios. The consensus protocol being adopted must meet the requirements of this application scenario. If you want to know more about consensus protocols in permissioned blockchain networks, you can read our previous article, how to choose the right consensus protocol for permissioned blockchain networks.

From incremental modifications in the Nakamoto consensus protocol to innovative alternative consensus mechanisms, many consensus protocols have been proposed to improve the performance of the blockchain networks. In this article, we will discuss other types of consensus algorithms that can be used for any type of blockchain network. 

Types of consensus mechanisms

The design and deployment of a consensus protocol require a lot of planning. It is important to consider important factors like resiliency against node failures, node behavior, network partitioning, network latency, corrupt or out-of-order inputs, etc. 

There are two primary fault-tolerance models that can be seen in distributed blockchain networks: crash failure and Byzantine failure.

  • Crash Failure Model: This model deals with nodes that fail to respond due to some hardware or software issues. These problems can occur at any time without any prior warning, and the respective node will remain unresponsive until corrective action has been taken. 
  • Byzantine Failure: This model deals with nodes that misbehave due to some software bugs or because of the nodes being compromised by an adversary. A Byzantine node can behave maliciously by arbitrarily sending deceptive messages to other nodes, which might compromise the security of the blockchain network. 

In order to respond to these two failure models, two types of consensus mechanisms have become popular: 

  • Crash-tolerant Consensus: Even during node failures, these algorithms can guarantee the total order of messages within the participating nodes.
  • Byzantine Consensus: This class of algorithms aim to reach consensus among nodes that exhibit Byzantine behaviour. Such Byzantine nodes are assumed to be under the control of an adversary and behave unpredictably with malicious intent. 

Consensus algorithms can also be classified based on the reward mechanism that participating nodes might receive. The categories include incentivized and non-incentivized consensus. 

  • Incentivised Consensus: Some consensus algorithms reward participating nodes for creating and adding a new block in the blockchain network. Such algorithms belong to this category. These algorithms are exclusively used in public blockchain systems and the reward provided acts as an incentive for participating nodes to behave accordingly and to follow the corresponding consensus protocol.
  • Non-incentivized Consensus: Private blockchain systems deploy a type of consensus algorithms that do not rely on any incentive mechanism for the participating nodes to create and add a new block in the blockchain. These are non-incentivized algorithms. With the absence of any reward mechanism, these nodes are considered to be trustworthy as only authorized nodes can participate in the block creation process of the consensus algorithm.

What makes a good consensus mechanism?

In order to tell whether a consensus mechanism is a good candidate for your blockchain application, you must consider the following factors- 

  • Safe: All the nodes should be able to produce results that follow the rules of the protocol.
  • Participatory: All the nodes must be able to participate and contribute to the modifications being made in the database.
  • Inclusive: The algorithm should ensure that every node participates in the voting process.
  • Equal Opportunities: Each vote that is acquired from a node should be given equal weightage by the consensus algorithm.

Risks associated with choosing the wrong protocol

  • Blockchain Forks

Choosing a bad consensus algorithm increases the vulnerability of the chain. It can often lead to blockchain forks. These refer to circumstances where a single chain diverges into two or more. When a Blockchain fork occurs, the application begins operating in an unpredictable manner, creating two or more diverged nodes ahead.

  • Low Performance

When a bad consensus mechanism is considered, either the node gets malfunctioned or suffer from network partition. This delays the process of exchanging messages between nodes and increases the latency of the application, which ultimately lowers down the performance level.

  • Consensus Failure

Another effect of incorporating a bad consensus mechanism into your business model is consensus failure. In this situation, a fraction of nodes fails to participate in any process, and thus, in the absence of their votes, the consensus fails to deliver accurate and desired outcomes.

Need help with Blockchain development?

Reach out to us today and get started!

View Services

Popular consensus protocols

Proof Of Stake (PoS) 

To counteract the limitations of PoW (Proof of Work) algorithms, the PoS algorithm was proposed in 2011. Although PoS and PoW are similar in many ways, they have some distinct points of difference. especially during the validation of new blocks on the blockchain network. The core idea of PoS revolves around the concept that the participating nodes in the block creation process must prove that they own a certain number of coins at first. They must also lock a certain amount of its currencies, called a stake, into an escrow account in order to participate in the block creation process. The stake acts as a guarantee that it will behave as per the protocol rules. Peercoin, released in 2012, was the first currency to utilize the PoS consensus algorithm. The Ethereum blockchain, which is the world’s largest blockchain network in terms of developer activity, has made the switch from the PoW algorithm to PoS in an attempt to increase the network’s scalability and reduce excessive electricity wastage. 

Delegated Proof-of-Stake (DPoS) 

Although it has the name PoS associated with it, it is very different from PoS algorithms. In DPoS, users of the network vote to select a group of delegates (or witnesses) who are responsible for creating blocks. Users utilize reputations scores or other mechanisms to choose their delegates. Delegates are the only entities who can propose new blocks. For each round, a leader is selected from the set of delegates who can propose a block. The selection of the leader is carried out according to the respective system. The leader gets rewards for creating a new block and is penalized and delisted from the set of validators if it misbehaves. The delegates themselves compete with each other to get included in the validator list. Blockchain projects like EOS, Bitshares, Steem, Tezos, etc. use DPoS consensus algorithms for validating transactions. Many experts also call it a democratic version of the Proof of Stake consensus system because it is based on a voting process and elects representatives instead of independent network nodes. According to experts, DPoS can manage a higher transaction volume and quicker confirmation times than PoW and PoS consensus mechanisms because of a limited number of network nodes or trusted witnesses are needed to verify data in each new block of the network chain.

Proof of Authority (PoA)

This algorithm depends on the reputation of the parties in a blockchain network and is commonly used in private blockchain networks. The PoA algorithm was proposed by Ethereum co-founder Gavin Wood in 2017. PoA consensus algorithm is based on the value of identities within a network. Validators do not stake assets but their own identities and reputation. So, PoA blockchain networks are secured by the validating nodes that are arbitrarily chosen as trustworthy parties. 

The Proof of Authority model works on a fixed number of block validators, making it an easily scalable blockchain system because transactions are checked by already-approved network participants. PoA consensus algorithms can be utilized in applications such as supply chains or trade networks because the real identities of the nodes are known and trusted. 

Proof of Elapsed Time (PoET)

In this algorithm, each participant in the blockchain network waits a random amount of time to participate in the mining process. The first participant to finish waiting gets to be a leader for the new block. Each node also comes up with their own waiting time, after which they go into sleep mode. So, as soon as a node gets active and a block is available, that node is considered as the ‘lucky winner’. This node can then spread the information throughout the network while maintaining the property of decentralization and receiving the reward. PoET comes from Intel, and it relies on a special CPU instruction set called Intel Software Guard Extensions (SGX). SGX allows applications to run trusted code in a protected environment.

Proof of Burn (PoB)

Considered an alternate solution to PoW and PoS in terms of energy consumption, the Proof of Burn (PoB) consensus model works on the principle of letting miners ‘burn’ or ‘ruin’ the virtual cryptocurrency tokens, which further provides them with a privilege to write blocks in proportion to the coins. The more coins they burn, the more are the chances of picking the new block for every coin they get. But, in order to burn coins, they are required to send it to an address where it couldn’t be spent for verifying the block. This is widely employed in the case of distributed consensus.

Proof of Identity (PoI)

The concept of PoI (Proof of Identity) is just like that of the authorized identity. It is a piece of cryptographic confirmation for a users’ private key that is being attached to each particular transaction. Each identified user can create and manage a block of data that can be presented to others in the network. This blockchain consensus model ensures the authenticity and integrity of the created data. 

Need help with Blockchain development?

Reach out to us today and get started!

View Services

Related Posts

Drive into stories worth discussing

  • mm
    Will Hashgraph Replace Blockchains?
    Rahul A R
  • mm
    What is a Predictable Gas Fee, and how it works?
    Rahul A R
  • mm
    How Blockchain Can Perfect Green Bonds?
    Rahul A R
  • mm
    How can Blockchain aid the Circular Economy Model?
    Rahul A R

ASK AUTHOR

mm
Rahul A R

Rahul A R is a technologist and full-stack developer who specializes in Blockchain technologies and Cryptocurrencies. Though he’s ... Read more

Ask A Question
Error
Cancel
Send

Categories

View articles by categories

  • Blockchain

Subscribe now to get our latest posts

  • facebook
  • linkedin
  • twitter
  • youtube
All Rights Reserved. Accubits Technologies Inc