The recent attack on the Steem blockchain have shown a major flaw in DPOS system. I thought this would be a good time to go over some blockchain consensus algorithms to understand the pros and cons for each. There are actually 14 consensus algorithms that I know of but since I will end up writing a book to explain all of them, I will focus on the most popular POW, POS, and DPOS systems for this article.
What are Blockchain Consensus Algorithms Anyways?
A decentralized blockchain network consists of thousands of nodes which keeps track of all the transactions that goes on the network. All these nodes need to go by certain principles to reach a collective agreement. A common consensus algorithm will allow the network of nodes to come to a consensus and move on with a resolution if there is a fault (like double spending). There are lots of discussion on which is the best Blockchain algorithm. There are pros and cons for each one so lets take a look at some of them.
Proof of Work (POW)
Proof of Work (PoW) Blockchain Consensus Algorithm, which was first used on Bitcoin network in 2009, is based on Hal Finney's Reusable Proof of work (RPoW) idea established in 1999. Finney's idea was that just as value of gold coin is underpinned by the value of raw gold needed to make it, RPoW token's value is guaranteed by the real world resources (electricity and hardware) required to 'mint' it. POW system in Bitcoin goes further and introduced decentralized P2P protocol for tracking transfer of coins and to protect the network from double spending rather than hardware trusted computing function used by RPoW.
So, basically, the current PoW system is maintained by network of mining nodes that uses electricity and hardware to solve complex cryptographic problems. This process of mining proves that the work was put into the network by the miners. Therefore, rewarding the miners with newly 'minted' tokens and transaction fees of that specific block mined. This is a great way to incentivize more people to run a