Delegated Proof Of Stake (DPoS) is a consensus algorithm which is an advancement of the fundamental concepts of Proof Of Stake. Delegated Proof of Stake (DPoS) consensus algorithm was developed by Daniel Larimer, founder of BitShares, Steemit and EOS in 2014.
In Proof of Stake consensus system, each person who stakes a token can participate to the “mintage” process which means that they get a chance to select layer two nodes which further validates block and be rewarded for adding blocks to blockchain. DPos system is maintained by an election system for choosing nodes which verify blocks. These nodes are called “witnesses” or “block producers”.
Here is how DPoS consensus works :
In DPoS consensus users can either directly vote or give their voting power to another entity to vote on their behalf. Selected witness are responsible for creating blocks by verifying transactions. If they verify and sign all transactions in a block, they receive a reward, which is usually shared with those who have voted for witness. If a witness fails to verify all transactions in the given time, block is missed, all transactions are left unverified and no reward is distributed to that witness. The reward is added up to reward of the next witness which verifies that block. Such transactions are collected by the next witness, and such a block is called stolen.
Votes are proportionate to size of each voter’s stake. A user need not have a large stake to enter the top tier of witnesses. Rather, votes from users with large stakes can result in users with relatively small stakes being elevated to the top tier of witnesses.
Number of witnesses in the top tier is capped at a certain number which is usually in the range of 21-101. These witnesses are responsible for validating transactions and creating blocks, and are in return awarded associated fees. Witnesses can prevent specific transactions from being included in block but they cannot change information of any transaction which makes them similar to miners in Proof Of Work blockchains. Voting is a continuous process and each witness in the top tier is always at risk of being replaced by a user who gets more votes and is therefore considered more trusted. As number of applicants for witness grows, competition grows and reputation becomes critical for each witness to remain competitive.
A witness is kept in check by threat to its loss of income, locking of stake and reputation score. Witnesses have to lock certain part of their stake which is seized if they act maliciously or try to attack blockchain.
A round in a DPoS blockchain with N block producers/witnesses follows a round robin order as follows :
- N block producers get elected from the pool of witnesses candidates.
- The kth block producer signs the kth block, until k=N.
- A block is finalized when it is voted on by (2/3+1) of block producers. In case of two chains, the longest chain rule is followed. Block added cannot be reversed.
Users in DPoS systems also vote for a group of delegates who oversee blockchain governance. They do not play a part in transaction control. Delegates can propose changing size of a block, or the amount a witness should be paid in return for validating a block. Once delegates propose such changes, blockchain’s users vote on whether to adopt them.
Block validators :
Block validators in DPoS refer to full nodes who verify that blocks created by witnesses follow the consensus rules. Any user is able run a block validator and verify network. There is no incentive to be a block validator.
- DPoS blockchains have good protection from double-spending.
- DPoS is more democratic and financially inclusive due to lesser staking amount required by a user/node.
- DPoS provides more decentralization as more people take part in the consensus due to low entry threshold.
- DPoS doesn’t require lots of power to run network, which makes it more sustainable.
- Transactions in DPoS is not dependent on computing power required to run network, hence it is more scalable.
- DPoS separates election of block producers from block production itself which opens door for more creative models to solve both problems in isolation.
- DPoS method provides foundation for implementing interesting governance models in blockchain applications. In a sense, it forms a kind of democracy.
- Effective operation and decision making of network requires delegators to be well informed and appoint honest witnesses.
- Limited number of witnesses can lead to centralization of network.
- DPoS blockchain is susceptible to problems of weighted voting. Users with smaller stake can refuse from taking part in votings after considering that their vote is insignificant.
Here are example of some DPoS blockchains :
|Blockchain||Number of Witnesses|