What is a consensus algorithm?
A consensus algorithm is a process that ensures that it can be determined which data input is reliable. The algorithm ensures that agreement is reached on, for example, transactions. For example, to prevent transactions that have yet to be done from coming through.
Reaching a correct agreement is a significant challenge within computer science, such as blockchain platforms. There are different types of consensus algorithms, each with its advantages and disadvantages. The most well-known protocols are Proof-of-Work and Proof-of-Stake, but there are others. In this article, we give a brief explanation of these different processes.
Different types of consensus algorithms
Proof-of-Work (PoW)
PoW was the first consensus mechanism used in a blockchain platform. Both Bitcoin and Litecoin work with this algorithm. In Proof-of-Work, anyone can make the computing power of their computer available to make calculations. Through these calculations, new blocks are added to the blockchain. This is called mining. The person who finds/creates a new block is rewarded with cryptocurrency. Consensus is reached by looking at the longest chain. The agreement reached can be trusted if more than 50% of the miners have good intentions. Since rewards are only paid to created blocks on the right and the longest chain, this 50% is always amply reached so far.
Advantages
Scalable and efficient.
Disadvantages
It needs to be more decentralized. Less centralized than BFT.
Proof Of Stake (PoS) Based Blockchain Consensus
The PoS consensus algorithm was created in 2011 as an alternative to PoW. Although PoS and PoW have similar objectives, they present some fundamental differences and features, especially during the validation of new blocks on the blockchain network. The Proof of Stake (PoS) consensus algorithm differs from the PoW mining consensus with a mechanism where blocks are validated based on the stake of the network participants. Unlike running hash functions, validators stake resources primarily in digital money or tokens. The validator of every block is then randomly selected from the stakeholders based on the amount of computational power allocated.
Each PoS system may implement the algorithm in different ways, but, in general, the blockchain is secured by a pseudo-random election process that considers a node’s allocation and the allocation– determining the commitment of the party to ensure the network. The Ethereum blockchain, the world’s largest blockchain network in developer activity, has initiated a switch from the PoW algorithm to PoS to increase the network’s scalability and reduce excessive electricity wastage.
Delegated Proof-of-Stake (DPoS) Based Blockchain Consensus
Conceptualized by Daniel Larimer, delegated Proof-of-Stake (DPoS) is another consensus algorithm based on voting systems where “delegates” vote for their favorite validators to help in the consensus state of new blocks. These validators will also be responsible for validating transactions and maintaining the blockchain network and will get rewarded in return for doing so with transaction fees. Also, each voter’s power is proportional to the size of the stake in the network. Blockchain projects like EOS, Bitshares, Steem, Tezos, etc., use the DPoS consensus algorithm 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 a limited number of network nodes or trusted witnesses are needed to verify data in each new block of the network chain.
Proof of Elapsed Time (PoET)
Intel developed a PoET consensus system to solve the computing challenge of “random leader election.” It was released as part of the Software Guard Extensions (SGX) programming reference manual. PoET is now utilized by many private blockchains, including Hyperledger Sawtooth, as it relies on a randomized timer system for network participants rather than mining hardware, as in the case of Proof of Work (PoW). Each participating blockchain node in the network must wait for a randomly chosen period, and whoever with the finished time wins the new block and validates it.
Proof of Authority (PoA)
Proof of Authority (PoA) is a consensus algorithm type based on the reputation of trusted parties in a blockchain network. It is considered an efficient mechanism for private blockchains and was conceptualized by Ethereum co-founder and former CTO Gavin Wood in 2017. PoA consensus algorithm is based on the value of identities within a network- and in a system block, validators do not stake resources 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 already approved network participants check transactions. PoA consensus algorithm can be utilized in applications such as supply chains or trade networks because the real identities of nodes are known and trusted.