Delegated Proof of Stake or DPoS in Blockchain (Part 10- Blockchain Series)

Welcome to the tenth part of the 100 part series on Blockchain.

Previous parts: Part 1, Part 2, Part 3, Part 4, Part 5, Part 6, Part 7, Part 8, and Part 9

As discussed in Proof of stake (Part 8), data verification is assigned to network nodes that have staked or locked their cryptocurrency coins as collateral. The larger the number of coins a user stakes, the higher the chances of getting selected as the validator to validate the next block in the network. Delegated Proof-of-Stake (DPoS) consensus mechanism is a variant of POS, in which users still stake their cryptocurrency coins. However, rather than becoming responsible for validating the block themselves, users (or stakeholders) stake their coins to delegate the work by voting on the node that would validate the block on their behalf. Thus the consensus mechanism got its name “Delegated Proof of Stake.”

Once the nodes have been elected, they’re responsible for reaching a consensus between themselves to validate transactions and add blocks to the Blockchain. Using DPoS, you can vote on nodes by pooling your crypto coins into a staking pool and linking those to a particular node. You are not required to physically transfer your tokens to another wallet but instead utilize a staking service provider to stake your tokens in a staking pool.

Technology-based democracy

The Proof of Work consensus mechanism is operated as direct democracy. As discussed in Part 7, all nodes have the equivalent role for transaction verification and block producing in the Bitcoin Blockchain. On the other hand, in Delegated Proof of Stake, stakeholders vote for a number of nodes to process and validate transactions on the network, thus allowing a more diverse group of people to participate in the process. This is a representative democracy.

The election of the nodes is based on their reputation and trustworthiness. If an elected node misbehaves or does not work efficiently, it will be quickly expelled and replaced by another one. Therefore, the delegates are motivated to be honest and efficient, or they get voted out.

How does DPoS work?

Voting: Voting is the most important component of DPoS. The users/stakeholders ‘vote’ to select the nodes they trust to validate transactions, and the nodes who have collected the most votes earn the right to validate transactions. Users can also delegate their voting power to other users called delegates, whom they trust to vote for nodes on their behalf. A user must stake coins in order to vote. Staked coins are locked in smart contracts during the voting rounds. Votes are weighted according to the size of each user’s stake. More coins translate into more votes. A user is allowed one vote per node. But he can vote for multiple nodes.

Refer to Part 9 for a detailed explanation of smart contracts.

Users and delegates vote to select the nodes to become witnesses/block producers that will validate transactions

To become a validating node, the owner of the node must convince the stakeholders in the network that they have all the requirements to be a validating node. Ceratin factors that favor a node being elected are:

(i) Team behind the node

(ii) Hardware capacity, location

(iii) No. of coins staked in the network. The larger the stake, the larger the reward after validating transactions.

The nodes selected by voting are referred to as witnesses or block producers.

They are able to create blocks by validating transactions. After all transactions in a block are verified, the witnesses receive a reward that is then shared with every user who voted for that witness.

Block producers/Witnesses: Blocks are generated by witnesses in turn. A witness must be able to obtain enough votes to be elected. A limited number of witnesses between 20 and 100 are chosen randomly for each new block. One of the selected witnesses, 1 witness creates the block at one time, and others participate in consensus. But each witness is given a chance to produce a block.

A witness, after validating the transactions, package them into a block. The hash of the previous block is also included in each new block to connect the blocks in the Blockchain. After finding the valid hash for the block, the witness provides information like the address of the witness, time of the generation of the block, etc. Then the block is signed with its private key and is added to the Blockchain.

At least 2⁄3 + 1 block producers on the network are required to achieve consensus. For instance, in EOS Blockchain technology, the number of witnesses is limited to 21. Therefore, it is required that 15 witnesses should approve that the block is valid before adding it to the Blockchain.

The witnesses of one block might not be the witnesses of the next. The elected witnesses receive the transaction fees from the validated block, and that reward is then shared with users who pooled their tokens in the successful delegate’s pool. The more the stake, the higher the share of the block reward user receives. The rewards are shared based on each user’s stake, so if the user’s stake represents 5% of the total staking balance, he will receive 5% of the block reward.

Additionally, because there are a limited number of validators, DPoS allows the network to reach consensus more quickly.

Even though a witness can keep certain transactions out of a block, they cannot change the transaction’s information.

Why are witnesses trusted?

It is important to note that voting is a real-time and continuous process, which means that witnesses can be voted out if the selected witness is non-performing and fails to validate the transactions within the allotted time. If the block is missed, which means that none of the transactions is verified, then it is passed to the next active witness. Also, the reward of the missed block would be given to the next active witness who ends up verifying all transactions in that block. When this occurs, the block is considered stolen. If the block is missed frequently by a witness, it is considered non-performing and can be kicked out of the network. Then the stakeholders vote for a new witness.

On the other hand, if the witnesses are found to be dishonest to the network, they will lose what they staked. The election of the nodes is based on their reputation. If the node performs well, its reputation value will gradually increase; otherwise, the reputation value will gradually decrease. The reputation determines the credibility of a node. So obviously, the nodes with a good reputation are preferred to be voted by the users. Additionally, reputation is also the primary incentive against malicious behavior. Therefore, it is in the witnesses’ best interest to be a valued member of the community to avoid getting replaced.

Delegates: Delegates are also elected by stakeholders via voting in a manner similar to witnesses. Apart from voting on behalf of stakeholders, delegates are active members of the network. They examine the performance of the entire Blockchain protocol, improve the Blockchain by developing new features, and may even propose to change the rules of the Blockchain. The changes proposed can be changing the size of a block, changes in transaction fees, or the amount a witness should be paid in return for validating a block. After the majority of delegates are in favor of a proposed change, the changes are done via voting by the stakeholders. It ensures that the direct power is in the hands of users rather than either the delegates or witnesses. Even the delegates may be voted out if they are found to be involved in fraudulent activities.

How does DPoS work?

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 to run a block validator and verify the network. There is no financial incentive to be a block validator.

Blockchains using DPoS consensus: EOS (21 witnesses), Cosmos, Lisk (101 witnesses), Ark (51 witnesses), Bitshares (101 witnesses), etc.

Advantages of dPoS systems

(i) Since there are a limited number of validators, DPoS allows the network to reach consensus more quickly and therefore provides much faster processing of transactions than Proof of Work and Proof of Stake systems. The transactions are confirmed in an average of just 1 second. Because of this reason, DPoS systems are more scalable and can be used for many applications.

(ii) Witnesses can be voted out as soon as they are found to be performing malicious activities; therefore, they have an incentive to perform their role honestly.

(iii) Also, stakeholders lose their stake if the network does not operate smoothly. Therefore, it is in the best interest of stakeholders to replace the witness if it is found to be non-performing or involved in fraudulent activities.

(iv) No specialized equipment is required to become a user, witness, or block validator. A normal computer with good computation power is enough.

(v) They are energy-efficient, cost-efficient, and environment friendly compared to Proof of Work hashing algorithms.

Limitations of dPoS systems

(i) Having a small group of elected witnesses can make DPoS vulnerable to centralization. For instance, EOS Blockchain has only 21 witnesses/block producers to validate transactions. This is a fairly high amount of centralization.

(ii) Because fewer nodes/witnesses (20–100) are in charge of keeping the network alive, it’s easier to organize a “51 percent” attack.

(iii) Vote strength is determined by how many tokens the individuals have, which means that people who own more tokens will influence the network more than people who own very few. Thus, DPoS users with small stakes will have less incentive to vote as they might think their vote doesn’t matter in comparison with the votes of bigger stakeholders. Thus, low participation in the voting process can further generate centralization in the network by placing the power in the hands of a limited number of coin holders.

If you liked this article and want to know more about Blockchain, NFTs, Metaverse, and their applications, click the below link.

Happy learning!

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store