“Consensus” in simple terms is a decision making process between group of people to validate a transaction. It is done with a purpose to benefit the parties involved in the process, the method through which this consensus is achieved is called “Consensus Mechanism”.
Example : If a group of people from different parts of the globe working together on a project which benefits all of them , each individual from the group can suggest an idea, but the group has to agree with the idea for which the majority of the people vote to reach consensus. In Blockchain.. Consensus Algorithms validate the transactions to achieve consensus.
Popular Consensus Algorithms explained :
Proof-of-Work ( PoW )
Proof of work Protocol is invented by Satoshi Nakamoto in 2009 to implement within the Bitcoin blockchain, it relies on a complex computational task to secure the total network from malicious actors. A proof of work system involves miners or participants who runs nodes gather up and compete to solve complex cryptographic puzzles , the miner who solves the puzzle first will be able to mine the block, and in exchange the miner will receive native currency(coins) as a reward, this is known as block reward. the mined block then added to blockchain with certain set of consensus rules programmed by the smart contract.
In a Proof of Work system, the more computing power the miner has, the more likely he is to compete with other miners, the more number of miners the network has the more secure it becomes, this entire process is energy consuming as it involves the nodes processing complex data through high-performance ASIC chips which consumes lot of energy which makes it an expensive process.
Network Security :
- Proof-of-Work (PoW) protocol works on the principle that no single entity should own more than 50% of the network “HASHPOWER” because of the fact that these entities can effectively control the system by sustaining the longest chain, the hashpower they own can have a decision making capabilities to validate the transactions by creating separate block from any previous arbitrary block which can create 2 versions of the same chain , apart from that they can also launch a double spending attack on the network by initiating a transaction on the main chain and replicate the same transaction on other fakechain which results in both the transactions sending the same coin, but only one of them can be validated and the replicated ones remain invalid . The term “51% attack” is most common these days in the weakest chains because of the security vulnerability. Any entity with more than 51% can take a hold on the network and attack the system . So the the integrity of PoW chain depends on how many diversified miners the network has to secure the system.
Projects that uses Proof-of-Work Algorithm includes BITCOIN(BTC), LITECOIN(LTC), MONERO(XMR) , Z-CASH(ZEC), GRIN(GRIN), BEAM(BEAM) etc
Proof-of-Stake ( PoS )
Proof-of-stake is different from proof-of-work protocol. It was first proposed by SunnyKing and Scott nadal who Co-Created PeerCoin , In this algorithm the entity who holds the highest amounts of the native cryptocurrency (or a fixed programmed number) only can easily mine the new blocks , means a proof-of-stake system requires the entity to confirm proof of ownership of a native crypto currency he is holding to mine and validate the transaction. Here the algorithm would choose the miners randomly to mine a new block. In the proof of stake system, mining process is called ‘Minting’ or ‘Forging’ instead of mining. Forgers are same as users who validate transactions and create new blocks in the system.Validators need to first submit a deposit of Native tokens into a smart contract as a collateral to propose or validate transactions. when comparing to Proof-of-Work, Proof-of-stake protocol does not need huge amounts of Energy and Computing Power to achieve the consensus and incentivize participants to secure the network.
Network Security :
- Proof-of-Stake (PoS) could be beneficial because of its low entry barrier, any one who holds certain amount of coins can enter a validator pool and become a validator by staking the coins, no need of mining equipment, energy costs , setting up a machines and maintaining them, but the problem arises when a small number of entities owns the significant supply of the coins, they will have a higher chance of validating the transactions, and in the form of rewards their stake increases evenmore which could lead to supply centralisation overtime, this can become a concern to address, because the stakers can vote for multiple forks of a blockchain by using their staking power, taking this into consideration many PoS blockchains now have a system which has PoW & PoS combined to ensure the final validation to be on a valid chain. Proof-of-Stake is a relatively new concept , researchers are finding their ways to eliminate these problems and improve the protocol. we could see some breakthroughs happening in the near future.
- Projects that uses Proof-of-Stake Algorithm includes ETHEREUM(ETH) , ARDOR(ARDR), DASH (DASH) etc
Delegated Proof-of-Stake (DPOS)
Delegated Proof-of-Stake is similar to Proof-of-Stake consensus ,It builds on top of POS protocol , it is trying to solve the scalability issues most of the current public blockchains are facing , DPOS system speed up the block creation and validate transactions in a slightly diferrent way, voters and validators in the system have to stake certain amount to participate in validation pool and earn rewards to reach consensus.
DPOS depends on real time voting combined with a social system of reputation to reach consensus, anyone who holds the native currency can vote for a immediate witness(validator) and top tier final witness (final validator) , the voting power also known as voting weight determined by the amount of native tokens he hold , there will be limited number of top tier validators who are responsible for creating blocks and validating transactions.
Network Security :
- Delegated Proof-of-Stake (DPoS) protocol is scalable because of its slightly centralised nature, even though they cannot change the details of any transactions, the validators in the top tier can prevent some transactions being included in the upcoming block (which is debatable for different reasons), top tier validators always at a risk of being replaced by a user who gets more votes, users within the system can always remove them if they become unreliable, voters in the system can also elect a group of delegates who can function as a trusted entities to secure and maintain the network and these delegates are responsible for the total governance of the protocol and they are incentivised for constantly creating things valuable to the community, they do not play any role is block creation and validation, but as a part of maintaining the network the group of delegates can propose changes.. for example changing the blocksize etc. DPOS is the next step in the evolution of protocols.
Projects that uses Delegated Proof-of-Stake Algorithm includes EOS(EOS) ,ICON(ICX) ,Lisk(Lisk), ADA(ADA), AERGO(AERGO) ARK(ARK),BITSHARES(BTS) VECHAIN(VET) CYBERMILES(CMT) etc.
All these Consensus algorithms have their own benefits and weaknesses , they are still limited in terms of transactional capacity, not a single algorithm currently is fully ready with scalability (achieving no of transactions/sec), there are other recent Consensus models like Directed Acyclic Graph(DAG) , Proof-of-Authority (POA)- nothing but a modified proof-of-stake but with slight centralisation), Delegated-Byzantine-Fault-Tolerance (DBFT)etc, but not fully functional .We will discuss many of them in the upcoming articles.