How DPoS works
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.
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
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.
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.
On-Chain Governance DPoS is a liquid form of democracy where voting power can
be 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
Self-Funding Through Inflation In DPoS, unlike PoS or PoW where miners get
rewards for validating a block, inflation is used to pay block producers as well
as to fund the development of platform itself.
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.
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
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.