Blockchain Consensus Protocols – An Overview
[vc_row row_background_lines=”no”][vc_column][vc_column_text]Whether or not you are involved with cryptocurrency, there is a good chance that you have still heard about the underlying technology; the blockchain.
You can learn more about blockchain here.
This technology has been all the rage with the potential use cases within many sectors of our life, such as banking & finance, government, healthcare, internet, social media and the list goes on…
Keeping in this vein, the consensus algorithm used by a particular blockchain has the ability to secure and validate data recorded on it.
The Root of Blockchain
In short, consensus protocols are the root of the blockchain.
[boxibt style=”info”]Because, through a distributed system, across a decentralized network, the immutability of transactions can be reached by the nodes in these protocols when they reach agreement.[/boxibt]
OK… still confused?
Let’s break it down…
What is Consensus?
I guess it’s best that we all begin in the same place… a definition of consensus.
Basically, consensus algorithm used by a group as a means to come to an agreement about something.
For example, to reach a consensus, normally, people would first examine a certain thing (be it an opinion or a material thing) they are planning to agree on from all sides, examine it and finally end up with a common conclusion.
Ideally, a “single version of the truth” as it were…
So in our example above, should there be ambiguity, you may decide to conduct more tests to help you accept it or not. In many situations like this, a vote is taken to reach a decision. By voting, the majority rules and if there is someone who disagrees, they basically have to suck it up…
In a consensus algorithm, it doesn’t just “agree with the majority,” but it “agrees” to a consensus that benefits everyone. So it’s a win for the blockchain, not the individual participants.
Blockchain Consensus Protocols
As of the writing of this article, there are a number of different consensus protocols. These protocols are:
- Delegated Proof-of-Stake
- Leased Proof-Of-Stake
- Proof of Elapsed Time
- Practical Byzantine Fault Tolerance
- Simplified Byzantine Fault Tolerance
- Delegated Byzantine Fault Tolerance
- Directed Acyclic Graphs
Now, let’s look at the popular consensus protocols in Blockchain:
The original invention of Satoshi and arguably most popular consensus protocol is Proof-of-Work (PoW).
Basically, the PoW protocol requires block miners solving complex mathematical equations, for which they earn rewards in the form of the particular cryptocurrency they are mining.
As the original protocol, Proof-of-Work has proven itself. It has proven itself rugged and has withstood many attacks.
If you are interested in learning more about Proof-of-Work as well as the pros and cons of this style of protocol, check out our article here.
Proof-of-Stake (PoS) was initially introduced in 2012 as a means of avoiding the common issues with Proof-of-Work.
In the Proof-of-Stake model, those holding coins can stake them on the probability of being able to be the wallet to validate the next block and earn a portion of the fees collected.
If you are interested in learning more about Proof-of-Stake (PoS) as well as the pros and cons of this style of protocol, check out our article here.
Delegated Proof-of-Stake (DPoS)
Delegated Proof-of-Stake (DPoS) has a limited similarity with Proof-of-Stake.
In the DPoS protocol, in order to participate and obtain a percentage of the fees for staking the particular coin, you must indeed, hold and stake the coin inside of a wallet.
However, the similarities pretty much end there.
Coin holders the use their “stake” to vote for a “delegate” to represent them, validate the transactions, collect the fees and then disperse fees proportionate to how much of the coin people hold in their wallet.
- Cheap Transaction Costs
- Energy Efficient
- Real-time Security
- More Centralized – Coordinating an attack on the network would require less effort than with PoS
Delegated Byzantine Fault Tolerance (dBFT)
Delegated Byzantine Fault Tolerance (dBFT) was introduced by the team of the NEO project.
The purpose for this development was to overcome the Byzantine Generals Problem.
The model consists of nodes, delegates (who can verify the blocks), and a speaker (who plans the next block).
Different scenarios present how the dBFT model is resilient enough to ward off bad actors within the system.
Delegated Byzantine Fault Tolerance is used by NEO.
Where Does Consensus Go From Here
There are two take aways from this article…
1. If there is no consensus, there is no blockchain
2. We’ve on just scratched the surface of what is out there for blockchain consensus protocols.
The decision as to what protocol best fits what blockchain is going to be a personal one.
Each blockchain will have to decide what exactly they are trying to accomplish; complexity, speed and scalability just to name a few.
Currently, there is no “perfect” consensus protocol… or a “one size fits all”…
But with existing algorithms being tested more and more each day, and new protocols yet to be invented, there can only be good news on the horizon.[/vc_column_text][/vc_column][/vc_row]