When many of us first heard of blockchain technology, we heard about a transparent system for verifying transactions and storing data into blocks. Decentralization, security, and scalability have become the three most common words to describe blockchains and cryptocurrencies.
If you're familiar with terms around blockchain technology, you should have heard the phrase consensus algorithm. The succession of the proof of stake (PoS) consensus algorithm from the proof of work (PoW) consensus algorithm sparked enthusiasm across the blockchain community. Now there are many more consensus algorithms. Blockchain protocols use consensus algorithms to achieve dependability when handling many unstable nodes.
This article will look into one of those: the delegated proof of stake (DPoS) consensus algorithm. We will look at what consensus algorithms are, what the PoS algorithm is, how the DPoS algorithm works, and what makes it different from the PoS algorithm.
Consensus Algorithms and DPoS
A blockchain protocol needs to follow a set of rules and processes for multiple nodes to reach a state of agreement. These sets of rules and processes are called consensus algorithms.
For a protocol to be truly decentralized, the work must be done by the nodes in the blockchain. No central body or entity in a blockchain network verifies a transaction alone. To prevent a particular node from cheating the network such as double-spending, all nodes on the network must reach an agreement on which transactions are valid and those that are not.
To make this possible, Satoshi Nakamoto created a PoW consensus mechanism that organizes the participants of a blockchain network. This mechanism ensures that participants in a network provide a stake that prevents them from acting dishonestly. These stakes could include their mining power or cryptocurrency. This ensures that validators are kept in check by the nodes in the network.
Since its inception, there have been many different types of consensus algorithms that have emerged. Some of the most used are:
- Proof of stake (PoS)
- Proof of activity (PoA)
- Proof of importance (PoI)
- Proof of capacity (PoC)
- Proof of burn (PoB)
- Proof of weight (PoWeight)
- Delegated proof of stake (DPoS)
PoS Consensus Algorithm
As an alternative to the PoW algorithm, the PoS algorithm was created to solve the issues PoW algorithm creates on blockchains. Some of these issues include the amount of energy PoW blockchains use.
The PoS algorithm fixes the energy problem by crediting mining power to the number of coins a miner holds. Rather than use energy, a miner in the PoS algorithm is limited to mining a percentage of transactions that reflect what they stake in the blockchain.
The more staking coins a miner possesses, the higher the chance of being picked as a validator in the blockchain. One more advantage the PoS algorithm offers is that someone would need to own at least 51% of the total existing coins to attack the blockchain. Any failed attack would result in a huge financial loss.
However, one issue users have with the PoS algorithm is that it favours the wealthy. Those who have more staking power often get chosen as validators. To tackle this issue, other methods to select validators had to be developed. The most notable is the DPoS consensus algorithm.
The DPoS Consensus Algorithm
The DPoS consensus algorithm was created for blockchain networks to agree on what transactions to approve or reject, and was designed to tackle the reward issue with the PoS algorithm, which favours users with large accounts.
DPoS nominated users are also called “delegates” or “witnesses”. Delegates maintain the security of the blockchain and mine new blocks based on a simple vote. Token holders can stake their shares to delegates to improve their status in the community. By staking their coins, community members vote on who controls the network and validate new blocks.
What makes the DPoS different from the PoS consensus algorithm? The major difference is that the number of nodes needed to verify transactions in the blockchain is reduced as the process of electing delegates is followed.
While the DPoS and the PoS consensus algorithm are similar in terms of staking, the DPoS mechanism introduces a more democratic voting system. Since the system is maintained by the voters, the delegates are motivated to be honest. Also, transactions on the DPoS mechanism tend to be faster than those on the PoS consensus algorithm.
The DPoS consensus algorithm is considered a truer decentralized approach. In addition to being energy-efficient and environmentally friendly, the DPoS consensus algorithm provides strong protection from double-spend attacks.
The DPoS consensus algorithm has become popular over recent years. Some blockchain protocols that use the DPoS algorithm include Bitshares, Steemit, Cardano, Tezos, ARK, EOS, Oxycoin, and many more.
How DPoS Consensus Algorithm Works
The DPoS was developed to make voting on a blockchain more democratic. Anyone who owns coins on the network can vote and elect a delegate. A coin holder who gets the highest amount of votes at the end of the election round gets to be the network’s block producer.
A block producer ensures that the network runs smoothly in a secured environment. A maximum of 100 delegates or block producers is allowed on a blockchain network with the top 20 delegates receiving rewards for their services.
Delegates need to show responsibility to maintain the security of the network. Delegates also have the right to change block producers at any time. For example, block producers who act maliciously are removed from the network as their actions are displayed publicly on the network.
Here’s how the DPoS consensus algorithm works:
Users can directly vote or give their voting power to another user to vote on their behalf. Witnesses are selected to create blocks to verify transactions. Voters receive a reward when witnesses verify and sign all transactions in a block. However, if a witness fails to verify all transactions at a specified time, no reward is distributed to that witness.
The votes are equal to the size of each voter's stake. This does not mean that one needs to have a large stake to be at the top tier of witnesses. An issue of the PoS consensus algorithm that the DPoS mechanism fixes. Rather, votes from users with a huge amount of stakes can result in users with small stakes being moved to the top tier of witnesses.
Witnesses are selected to create blocks that verify transactions on a blockchain. The number of witnesses needed in the top tier usually ranges between 21-101. Voting in the DPoS mechanism is always on a roll, so each witness in the top tier stands the risk of being replaced by another witness who gets more votes. Witnesses have to lock a certain part of their stake, which cannot be recovered if they try to attack the blockchain. This helps keep witnesses in check.
Delegates in a DPoS mechanism oversee blockchain governance. Delegates can propose for the change in the size of a block or how much reward a witness should get for validating a block. After delegates propose these changes, users in the blockchain can vote on what to adopt and what to omit.
In the DPoS consensus algorithm, block validators are full nodes that verify blocks created by witnesses. Any user can be a block validator, however, there is no reward for being a block validator unlike being a witness.
Advantages and Disadvantages of DPoS Consensus Algorithm
Here are some of the advantages and disadvantages of the DPoS:
- The DPoS blockchain offers good double-spending protection.
- DPoS separates the election of block producers from the block production itself, which opens the door for more creative models to solve these two problems separately.
- DPoS does not use a lot of power to run the network, which makes it more sustainable.
- The structure of DPoS and incentives ensures the security of the blockchain as each user has an incentive to perform their role honestly.
- Because users require less staking, DPoS is more democratic and financially inclusive.
- The transaction in DPoS does not depend on the computing power required to operate the network, which makes it more scalable. You do not need to have special equipment to become a user, witness, or delegate.
- Due to the low entry threshold, DPoS offers more decentralization as more people participate in the consensus.
There are some issues about the DPoS consensus algorithm that the crypto community still has concerns about. One issue is that delegates need to be well informed about the network for the blockchain to be effective both in operation and decision-making.
Another issue is that a limited number of witnesses can lead to the centralization of the network. The DPoS consensus algorithm is vulnerable to weighted voting as users with smaller stakes can refuse to take part in voting after realizing that their vote is unimportant.
It is widely accepted that the DPoS network is more decentralized. Although users have the ultimate power, no single body can control the network. The work is shared between the elected delegates and witnesses. Many blockchain projects such as EOS and Bitshares are using the DPoS algorithm, which is proof of its security, scalability, and decentralization.