1. What is the difference between PoS and DPoS?
Delegated Proof of Stake (or DPoS) is a consensus algorithm created by developer Daniel Larimer in 2014.List of famous projects using DPoS:
PoS is similar to direct democracy and DPoS is similar to representative democracy. Classic PoS allows coin holders to engage in “steaking.” The coin holder validates transactions, receiving new coins as rewards.
Rewards in a PoS network depend on the number of coins owned by the holder (“steaker”). The larger the steaker, the greater the reward.
PoS incentivizes holders of large amounts to engage in staking and forms an inequality similar to the distribution of mining capacity in the bitcoin network: the miner who has invested more in equipment gets a better chance of finding a block.
Delegated Proof of Stake makes the distribution of coins and influence in the network more even and ensures a greater degree of decentralization.
In DPoS blockchains, each wallet with coins on its balance can vote for so-called “Delegates” (Delegates, Block Producers, Validators) – special community representatives given the right to generate a block and be rewarded with transaction fees.
DPoS is resistant to a corrupt minority attack. If delegates harm the network or go offline, network members re-elect and appoint new delegates until the number of honest Block Producers returns to 100%.
2. What are the functions of delegates in DPoS blockchains?
The delegates’ authority is to set up the basic rules of the network, keep the blockchain stable, and generate blocks. They receive commissions on transactions as profit. Any member of the network can become a delegate, but only for a short time.
The network pays a delegate to generate new blocks and include new transactions. The delegate can optionally spend these funds on marketing, lobbying the community, but not for personal purposes. Coin holders decide how much a particular delegate gets for their work. It depends on the rules of the network and the reputation of the delegate. Reputation is reinforced by the votes of users, who use their coins in the steak to vote all the time. One user can only give one vote to a delegate, but vote for multiple candidates at once.
When delegates are elected, each of them is placed in a special group. People in this group have access to a genesis account.
This is a multi-signature account through which you can change:
- the block reward;
- block generation time;
- block size;
- the size of the reward for witnesses;
- transaction fees.
The parameters within the delegates’ competence should not change too often: instability and novelty discourage newcomers and investors. A genesis account can also perform standard functions: use smart contracts, receive funds, form a steak.
After important decisions are made in DPoS blockchains, there is a short period of time during which new delegates can be re-elected. This is necessary if the rules set by the delegates are not approved by a majority of user votes.
It is possible to reduce or increase the number of delegates, replace them, but it will have no effect on the stability of the network.
3. How do I become a Delegate?
The list of active delegates is updated after the votes are counted. The system then randomly selects delegates and puts them in a queue. Each delegate gets the opportunity to generate a block. After all delegates have used the queue, their order is changed again randomly.
A delegate can keep transactions out of the block by delaying their confirmation. This approach requires trust in the delegates and makes the system itself vulnerable to manipulation.
If a delegate fails to create a block or include a transaction in it, the next block is generated by another delegate and will be twice the size to include unconfirmed transactions. This eliminates the malicious attempt to block or delay block generation.
In the long run, it is impossible to block specific transactions: if a delegate abuses his authority, the rest of the network has mechanisms to remove him.
4. Who are Witnesses?
Stacking users who have a chance to temporarily become a delegate are called witnesses (Witness, Witness Node, Validator, Block Producer, since they are transaction witnesses and simultaneously network nodes). DPoS uses a reputation system and real-time voting to elect witnesses and delegates.
Witnesses generate and distribute blocks, confirm transactions, hold coins in the steak, and vote. Unlike delegates, they cannot set up basic network rules. During transaction validation, witnesses and delegates cannot change transaction details such as amount, sender, recipient, ID, and so on.
They also verify:
- incoming blocks and signatures at transactions;
- the results of the execution of the smart contract;
- whether delegates are legitimately elected;
- distribution of user transactions.
Each complete node can provide access to read blockchain data, making the system similar to a decentralized content delivery network (CDN).
5. How does stacking work in DPoS?
All coins in DPoS blockchains are divided into free coins (those in circulation) and those in stacking. It’s up to everyone to determine the size of the steak, and you can’t spend it. With these coins it is possible to witness, vote for delegates and take part in the management of the network through smart contracts.
What are the pros of steaking?
- No need to invest in expensive equipment to mine new coins;
- No high energy consumption;
- Difficult to implement a 51% attack: The attacker must own at least 51% of all tokens;
- During Eirdrop, some projects distribute coins faster just among the steikers;
- Stacking in DPoS is used not only to make money, but also as a tool to influence the network.
6. Does DPoS have significant disadvantages and what are they?
- De-anonymization of witnesses, as they are often public companies rather than individuals.
- The possibility of a DDoS attack on network nodes.
- Most have little incentive to participate in voting, because their steak is too small.
- Danger of centralization: the owner of large resources can re-elect himself.
- Wallet voting carries high financial and political risks: voters are more likely to take a bribe or not vote at all.
- Some implementations recommend using multi-core processors for validation, otherwise the delegate may miss out on the block reward.
- Coins are fixed for a period of time during stacking, so if the price drops a lot, you won’t sell the coins right away.
Nick Szabo, a well-known bitcoin maximalist, raised concerns about one of the DPoS implementations:
“In EOS, a few strangers can freeze what users think is their money. As part of the protocol, you have to trust a constitutional organization made up of people you will never know personally. The EOS constitution is not socially scalable and is a security hole.”
During the April 2019 vote to replace the interim constitution with a user agreement (EUA), the turnout was 1.7%. The decision had to be made by blockchain producers, leading to accusations of centralization and the crude nature of some DPoS implementations.