Around a decade ago, an individual or a group of individuals, known as Satoshi Nakamoto solved one of the biggest hurdles in the peer to peer transaction, called Double Spend.
A double spend is a type of attack in which the same asset, or in our case Coin is sent to two different parties. Replicating a single asset into two, which should not be possible.
Satoshi Nakamoto found a way so that neither of the two persons who are transacting need to trust each other, at the same time has a transaction with peace of mind.
He found that Blockchain coupled with Proof of Work, or PoW can eliminate this problem. To define just how these two works, consider a chain of blocks interlinked with a metal rod, where the chain of blocks is the blockchain, and the Proof of Work is creating the metal rod.
Each of the blocks will contain the transactions from Peers and is enclosed in it. Once the block is attached, it won’t be changed ever again. Moreover, the metal rod seals that block with a new key (hash) and the key of the previous block (details of the block just behind it). To know more about Blockchain and POW, you can read ‘Bitcoin, Blockchain, What are those?‘
Now coming back to the present, we know that even though Proof Of Work is a great discovery, it is not perfect. There are many issues with it like the 51% attack, scaling issue, etc. Thus, developers and researchers started to find other ways to solve these problems, and therefore many other consensus mechanisms were developed. Let’s check some of them:
Proof Of Work, or PoW
Cynthia Dwork and Moni Naor invented proof of Work. This is the consensus mechanism used in Bitcoin. In proof of work, as the name suggests, the miner (A word used to describe the person/computer who is trying to find a particular coin/token, pretty much the same as mining Gold) need to find the solution to a computational problem.
The computational problem is such that, it requires to have the details of the previous block, the timestamp, and other information. Moreover, each time the number of people increases to find the solution, the difficulty to find the solution also increases. However, even though to find the answer, it takes time, to verify the solution, it is easy. Also, once a solo/pool miner finds the solution, they get the reward to find the answer, usually called the block reward.
Proof Of Stake, or PoS
In Proof Of Stake, as the word suggests, miners stake Coins/Tokens to find the next block. Staking is done either by the number of coins which can be staked or the age of the Token and other parameters. This is the consensus mechanism used in Ethereum.
However, sometimes consensus mechanism based on the number of Coins which can be staked would not be suitable, as that might bring a centralized network if a single party has the majority of the token. Thus, multiple methods are implemented to avoid the problem, like randomized block selection and coin age-based selection, etc.
Delegated Proof of Stake, or DPoS
Daniel Larimer invented this as he thought PoW is a wastage of energy and there could be another solution to the problem.
In this, like PoS, they also are determined on the number of tokens a person holds. However, at the same time, only a few people, called witnesses have the power to secure the network. This consensus works as a democracy; the only difference being that voting is a continuous process. If a witness turns out to be a bad actor, the people who hold the voting power based on the number of tokens/coins they have can revote to find new witnesses.
Directed Acyclic Graph, or DAG
DAG is rather a bit different from all the other consensus algorithms. DAGs have been here for a long time. Mathematically, it is a graph which does traverse without in one direction without any cycle which connects other edges.
In this, there is no difference between a user of the network and a miner. A user helps in securing the network. When a user does a transaction, the person has to validate x other transaction, where the Distributed Ledger Technology or DLT implemented determines x. For security purpose, a user cannot verify his/her transaction.
Proof of Activity, or PoA
Proof of Activity is the child of PoW and PoS. It works exactly like the two in two halves. In the first half, it works like PoW, that is using computation power to find a new block. So in the next half, as soon as it discovers the new block, the PoS consensus kicks in and takes over.
Proof of Capacity, or PoC
Proof of Capacity is sometimes also referred to as Proof of Space, or PoSpace. In PoC, instead of using computation power, PoC uses disk space to mine a new block. In PoC, instead of finding a unique solution, it usually stores all the possible solution, thus making the person with an enormous hard disk to have the most solution thus making them probable to win the block reward.
There are other Consensus Algorithms as well namely Leased Proof of Stake (LPoS), Proof of Elapsed Time (PoET), Practical Byzantine Fault Tolerance (PBFT), Simplified Byzantine Fault Tolerance (SBFT), Delegated Byzantine Fault Tolerance (DBFT), Proof of Importance (PoI), Proof of Burn (PoB), Proof of Weight (PoWeight), etc.
Which consensus mechanism do you think is the best? Share your opinion in the comment section.