What is the difference between PoS and DPoS
Delegated Proof of Stake (or DPoS) is a consensus algorithm created by developer Dan Larimer in 2014. List of famous projects using DPoS:
PoS is like direct democracy, and DPoS is representative. Classic PoS allows coin holders to do staking. The coin holder confirms the transaction, receiving new coins as a reward.
Rewards in the PoS network depend on the number of coins owned by the holder (“staker”). The larger the steak, the greater the reward.
PoS encourages holders of large sums to stake and create an inequality similar to the distribution of mining capacities in the bitcoin network: a miner who invests more in equipment gets a greater chance of finding a block.
The Delegated Proof of Stake makes the distribution of coins and influence on the network more uniform and provides a greater degree of decentralization.
In DPoS blockchains, each wallet with coins on the balance can vote for the so-called “delegates” (Delegates, Block Producers, Validators) – special community representatives who have received the right to generate a block and receive an award in the form of transaction fees.
DPoS is resistant to the attack of a corrupt minority. If delegates harm the network or go offline, network members repeat the election and appoint new delegates until the number of honest block producers returns to 100%.
What are the delegate functions in DPoS blockchains
The delegate’s authority is to configure the basic rules of the network, maintain stable operation of the blockchain and generate blocks. They receive transaction fees as a profit. Each member of the network can become a delegate, but only for a short time.
The network pays the delegate to generate new blocks and include new transactions in them. The delegate may optionally spend these funds on marketing, lobbying the interests of the community, but not for personal purposes. Coin holders decide how much a particular delegate will receive for their work. It depends on the network rules and the reputation of the delegate. The reputation is reinforced by the voices of users who, with the help of their coins in the steak, constantly participate in the elections. One user can give a delegate only one vote, but vote for several candidates at once.
When delegates are elected, each of them falls into a special group. People in this group have access to the genesis account.
This is a multi-signature account through which you can change:
- Block reward;
- Block generation time;
- Block size;
- Amount of remuneration to witnesses;
- Transaction fees.
The parameters that are in the competence of delegates should not change too often: instability and novelty scare away newcomers and investors. Genesis account can also perform standard functions: use smart contracts, receive funds, form a steak.
After making important decisions, the DPoS blockchains have 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 users.
You can reduce or increase the number of delegates, replace them, but this will not affect the stability of the network.
How to become a delegate
The list of active delegates is updated after the vote count. The system then randomly selects delegates and queues them. Each delegate gets the opportunity to generate a block. After all the delegates have used the queue, their order again changes randomly.
The delegate may not skip transactions in the block, postponing their confirmation. This approach requires trust in delegates and makes the system itself vulnerable to manipulation.
If the delegate did not create a block or did not include a transaction in it, then the next block is generated by another delegate and will be twice as large to include unconfirmed transactions. This eliminates the malicious attempt to block or delay the generation of blocks.
In the long run, it is impossible to block specific transactions: if a delegate abuses his authority, the rest of the network participants have mechanisms to remove him.
Who are the Witnesses
Users who are engaged in staking and have a chance to temporarily become a delegate are called witnesses (Witness, Witness Node, Validator, Block Producer, since they are witnesses of transactions and at the same time network nodes). DPoS uses a reputation system and real-time voting to elect witnesses and delegates.
Witnesses generate and distribute blocks, confirm transactions, keep coins in a steak and vote. Unlike delegates, they cannot configure basic network rules. During transaction confirmation, witnesses and delegates cannot change transaction details, such as amount, sender, receiver, ID and so on.
They also check:
- Incoming blocks and signatures for transactions;
- Smart contract execution results;
- Whether delegates are legitimately elected;
- Distribution of user transactions.
Each full node can provide read access to blockchain data, which makes the system look like a decentralized content delivery network (CDN).
How does steaking work in DPoS
All coins in DPoS blockchains are divided into free (in circulation) and those in staking. Each person determines the size of the steak, and you can not spend it. With the help of such coins, you can become a witness, vote for delegates and take part in managing the network through smart contracts.
What are the benefits of staking?
- No need to invest in expensive equipment to get new coins;
- No high power consumption;
- The complexity of the attack is 51%: the attacker must own at least 51% of all tokens;
- During airdrops, some projects distribute coins faster precisely among the stakers;
- Staking in DPoS is used not only to earn money, but also as a tool to influence the network.
Does DPoS have significant flaws and which ones
Among the disadvantages:
- The deanonymization of witnesses, as these are often public companies, not private individuals.
- The ability to conduct DDoS attacks on network nodes.
- Most do not have enough incentive to vote, because their steak is too small.
- The danger of centralization: the owner of large resources can re-elect himself.
- Voting with a wallet 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 the block reward.
- During staking, the coins are fixed for a while, so if the price drops much, you will not sell the coins right away.
The famous bitcoin maximalist Nick Szabo expressed concern about one of the DPoS implementations:
“In EOS, a few strangers can freeze what users consider their money. As part of the protocol, you need to trust a constitutional organization made up of people whom you will never recognize personally. The EOS Constitution is not socially scalable and is a security hole. ”
At the time of the vote in April 2019, the turnout for the replacement of the interim constitution with a user agreement (EUA) was 1.7%. The decision had to be made by block producers, which caused accusations of centralization and dampness of some DPoS implementations.