Evaluation of Blockchain Consensus Algorithms
Since the dawn of the Internet, the transmission of value has always been a problem. The open nature of the Internet allows anyone to copy and propagate information without any repercussions. Because of the infrastructure that involves the transfer of packets in a predefined protocol, it is easier to copy stuff on the internet than it is to gulp down water. There arose a need for a protocol that could propagate with the same speed, but does allow replication. A protocol for transferring value was needed.
On the face of it, a digital currency sounds impossible. Suppose some person – let us call her Alice – has some digital money that she wants to spend. If Alice can use a string of bits as money, how can we prevent her from using the same bit string over and over, thus minting an infinite supply of money? Alternatively, if we can somehow solve that problem, how can we prevent someone else from forging such a string of bits, and using that to steal from Alice?
Bitcoin’s Proof-of-Work solved just that impossible problem. The solution was so elegant that nobody can explain why it was not thought of earlier, because nothing in the solution was new. It was a mixture of everything that had been already discovered.
It did not take a lot of time for innovation to start on PoW itself. In rapid successions, several interesting ideas were proposed that either solved some more problems or cut through hassles.
“With e-currency based on cryptographic proof, without the need to trust a third party middleman, money can be secure and transactions effortless.” – Satoshi Nakamoto, Bitcoin open-source implementation of P2P currency
Let us understand a little bit about each consensus algorithm first to decide for ourselves!
POW vs. POS vs. POI vs. dPOS
What is Proof-of-Work (POW)
By combining an authentication of work with information transfer, Satoshi Nakamoto outlined in his original Bitcoin whitepaper a system for discouraging duplication and incentivizing the gatekeepers who keep the network in check. Proof-of-Work solved the problem of multiplicity in the only remaining void that needed to be filled on the internet.
The PoW idea was originally published by Cynthia Dwork and Moni Naor back in 1993, but the term “proof of work” was coined by Markus Jakobsson and Ari Juels in a document published in 1999.
Proof of work is a consensus protocol introduced by Bitcoin and used widely by many other cryptocurrencies. This process is known as mining and as such the nodes on the network are known as “miners”. The “proof of work” comes in the form of an answer to a mathematical problem, one that requires considerable work to arrive at, but is easily verified to be correct once the answer has been reached. The proof of work system is specifically designed to be difficult and require considerable computing power, as more and more users come in, to ensure that too many Bitcoins are not mined too quickly, preserving a consistent supply and incentive for miners to maintain the network.
Essentially, the security of the network is enforced physically by specialized hardware. As such, proof of work can be seen as not being an infinitely scalable protocol, since the hardware and the electricity spent to the power that hardware is limited in resources.
What is Proof-of-Stake (PoS)
“In proof of stake, besides incentivizing honesty, dishonesty is discouraged.” – Mohit Mamoria, Is Proof of Stake the solution?
Proof of Stake takes away the energy and computational power requirement of PoW and replaces it with a stake. Stake is referred to as an amount of currency that an actor is willing to lock up for a certain amount of time. In return, they get a chance proportional to their stake to be the next leader and select the next block.
PoS uses a time-stamping method to reach a consensus about a block by betting on it. This process alone opens a variety of criticisms. Say the betting amount is said to 10,000 ABCoin, and the average holder has about 20 ABCoin. Therefore, anyone with the minimum betting requirement is bound to get richer with each block while the others wait for the chance to place a bet. Not everyone can afford to be a staker. It can be argued that over a period, the gap will become significant, and therefore, the power to influence the ABCoin network will lie in the hands of a few, not unlike the current state of the Bitcoin PoW network.
What is Proof-of-Importance (PoI)
Proof-of-Importance (PoI) can be considered as New Economic Movement’s (NEM) most standout innovation. PoI, as a reward structure is different from Proof-of-Work and Proof-of-Stake as it removes all the perceived drawbacks that both the algorithms carry, such as mining monopolies and large stake hoarders. PoI algorithm calculates the weight of an address’s contribution to the Network, i.e., the stake, transactional history and amount of time spent on the network. Each transaction (above a minimum size) contributes to the POI score and increases the chances of harvesting a block and collecting rewards. To relegate the risk of artificially increasing transactions and importance score by going back and forth between the same wallets, only net transfers are taken into account by the algorithm.
Say ABC, who is a registered user on the NEM blockchain, has more than 10,000 vested token (the amount which has been unspent and unmoved for a few weeks) transacts on the network. The Proof-of Importance algorithm ranks ABC based on his vest and traffic contributed to the network, using it to delegate the process of computing transaction, verifying the block and collecting rewards called Delegated Harvesting. The importance attained by ABC also allows him to push his transactions and messages ahead of accounts that have lower importance scores, meaning that PoI can also be used as a reputation metric.
Each account has a Proof of Importance (POI) score that determines its chances of harvesting a block. With delegated harvesting, ABC is lending his POI score to a remote node, increasing its chances of harvesting a block on its behalf.
What is delegated Proof-of-Stake (dPoS)
“Delegated Proof of Stake (otherwise known as DPoS) is a consensus algorithm maintaining irrefutable agreement on the truth across the network, validating transactions and acting as a form of digital democracy.” – Lisk.io
At its core, DPoS seeks to speed up transactions and block creation, while not compromising the decentralized incentive structure at the heart of the blockchain. DPoS proclaims itself to be an improvement to the highly flawed Proof-of-Stake consensus mechanism.
There are three main characteristics in the DPoS system; Witness, Voting and Delegation.
In essence, Users are asked to ‘delegate’ their ‘voting’ power to other users, whom they trust to vote for ‘witnesses’ on their behalf. By claiming that their incentives and structures enhance the security and integrity of their blockchains, and each user has an incentive to perform their role honestly, PoI proclaims its higher ground against PoW and PoS. It requires no specialized equipment to become a user, witness, or delegate. A normal computer with sufficient GPU is more than enough to take part in the campaign. Most importantly, PoI is energy efficient compared to power-hungry Proof of Work hashing algorithms.
This question has been the central point of a lot of fiery debate. Everyone seems to have an opinion of their own. The stage is not unlike a street fight, where members of both sides go down to calling each other names, exchanging abuses and branding the other side as un-visionary. Most bitcoin maximalists side with PoW, recounting the game-theoretic incentive structure that it implements to solve the age-old Byzantine Generals’ Problem. Other skeptics argue that PoW isn’t worth all the energy consumption it brings along. Then there is the other side that proudly proclaims the simplicity and elegance of Proof-of-Stake, Proof-of-Importance, and similar concepts that implement all of PoWs infrastructure, excluding its infinite appetite for energy.
Without constructive criticism, it is not possible to move ahead and leave behind all the flaws. To side with a particular mechanism cannot be seen as the right thing to do as there are a lot of intellectually capable people behind each side. Numerous research papers, articles and discussions have been put forward, arguing for both sides of the debate.
Experimentation had been steadily going on, such as Ethereum’s much-awaited Casper FFG, with its planned shift from PoW to PoS, making all the hardware devices dedicated to the network obsolete. It would also mean an increase in adoption, as it becomes more cost-effective to be a part of the network. Similar advancements are also being implemented by EOS, NEO, XEM, Reddcoin, and so on, trying to sway the market towards the staking mechanism. Some iterations of the algorithm, such as delegated Proof-of-Stake (dPoS) and Hybrid PoS + PoW are also being experimented with.
It remains to be seen which way the market sides, which algorithm pushes itself towards the top. Nevertheless, one thing is for sure, the general audience is going to be benefitted due to the internal fights within the community, as it will bring about greater competition and higher prospects.