Understand Features and Attack Vectors of DPoS
Delegated Proof of Stake(DPoS) is another form of Proof of Stake(PoS) consensus mechanism to scale up to million transactions per second. DPOS concentrates block production in the hands of few semi-trusted entities in order to achieve more scalability than Proof of Work(PoW) or other Proof of Stake blockchains.
Nominator: A coin holder who stakes or delegates their coin to one or more validator. Validator: A semi-trusted entity responsible for validating and producing blocks. Epoch: A cycle of few blocks in which validator nodes create blocks in turn. Elections:
In Delegated Proof of Stake (DPoS) anyone can participate in Validator (Block Producer) elections and those who hold the network token are able to cast votes to one or more Validator (Block Producers) candidates. Votes are weighted by the voter’s stake and the Validators (Block Producers) candidates who receive a maximum number of votes become Validator (Block Producer). Users can also delegate their voting power to some other user, who can then vote on their behalf. Validator (Block Producer) can be voted in or out anytime so the threat of loss of income becomes a major incentive against bad behaviour. Token holder votes are tallied after a specific time or after each epoch.
Scalability Blocks can be propagated through the network much more efficiently. And blocks can be produced more consistently and reliably in a much shorter time frame. Moreover, finality can be reached as soon as ⅔ of the block producer has confirmed a transaction.
1.Network Infrastructure In DPoS users have control over who will provide the infrastructure unlike PoW and PoS, where users have no choice on validators. In DPoS, validators can be thought of as employees of users(nominators) and can be fired for not performing their duties.
2.On-Chain Governance DPoS is a liquid form of democracy where voting power canbe allocated to other participants and votes can be changed at any time. While block producers are the primary use case, but token holder voting can be conducted on different things like monetary policy, development funding and many more.
3.Self-Funding Through Inflation In DPoS, unlike PoS or PoW where miners getrewards for validating a block, inflation is used to pay block producers as well as to fund the development of platform itself.
1.Exploit Low Voter Turnout This problem exists in almost all PoS protocols, as the participants who show up and actually vote are really less. Voting is done by whales, exchanges and wallet providers. Although one good thing in DPoS is that, tokens can delegate voting power and still retain all of their utility.
2.Bribing Attacks It is a case where Validators (Block Producers) pay for their votes, they pay a small percentage of their earning per block. Although it may be good for some people, in the long term it will harm as the Validators who would do this wouldn’t be able to scale up their systems and hence the block production will be slowed down. To tackle these attacks there is a voting decay concept where freshly cast votes are considered full while other votes will slowly decay until they have a minimal impact after 2 years. This will encourage participation and slowly discount those who just cast their votes once.
3.Block Producers Collude The main problem this can cause is a delay in the transaction and double spends. Although these situations are highly unlikely.
Delegated Proof of Stake(DPoS) is an elegant, robust and practically proven solution to the scalability issues of Blockchain. Although, DPoS does compromise decentralization in some sense, and it is up to token holders to monitor the health of the system, watch for bad behaviour and decide upon what makes for sufficient decentralization. It still solves the scalability and safety issues in Blockchain. And, all in all if not everywhere DPoS can still be used as a Layer 2 or Layer 3 security while keeping a PoW system as a security base layer. It will help us achieve decentralization, safety as well as scalability which is the most important issue of current blockchain networks.