Consensus models have been a contentious topic of discussion within the cryptocurrency community recently, with diverse opinions on which solution is the best. The realistic answer is that they all have their own benefits and disadvantages for different types of networks, applications, and their overall security.
One of the more popular consensus models that has come to forefront of discussion recently is Delegated Proof of Stake (DPoS). The consensus model was invented by Dan Larimer as a the consensus framework for Bitshares and has been applied to numerous other platforms including Lisk, Steem, and EOS. DPoS most represents a liquid, representative democracy style consensus format that makes some important tweaks from the typical Proof of Stake model and noticeable concessions when it comes to decentralization.
How Does DPoS Work?
DPoS leverages the power of delegated stakeholder approval voting to resolve consensus issues and validate the blockchain in a model with similar designs to democratic systems. Essentially, stakeholders who own any amount of tokens in their wallet are capable of voting to elect block producers who are chosen based on which block producers have the most votes at the end of each voting round. An important distinction of DPoS from PoS is that in DPoS, there is no minimum stakeholder token requirement to participate and instead of stakeholder tokens proportionately representing their ability to produce blocks, users cast votes proportional to their stake to select block producers.
DPoS, Image by Aelf
DPoS is intended to be a more efficient form of PoS consensus. Specifically focusing on scalability, it can provide reliably confirmed transactions on the network in seconds and is capable of scaling to levels among the highest of any current consensus mechanisms. The system is built around a reputation and real-time voting process in order to achieve consensus. The power always remains with the stakeholders, who have the ability to vote on adding or removing block producers based on their reliability and actions. The job of the block producers is to validate and propagate blocks and ensure that there are no double spends. The amount of block producers can be changed by the stakeholders at any time and this incentivizes the producers to act honestly within the system because if they choose to act maliciously, their actions will be displayed publicly and they can be removed.
The process for reaching consensus in a round can be broken down into the following basic steps.
- Block producers are elected by the stakeholders in a round of voting.
- Once the producers are selected, they are deterministically given a round-robin rotation for a round of blocks equivalent to the number of producers selected. This creates a competitive market within the round, ensuring reliability.
- Block producers validate and broadcast blocks to the network.
- Consensus is reached and the next round begins.
For their services, block producers receive a reward. If they do not produce a block, then there is no reward and the reward is transferred to the next block producer if a successful block is produced. Producers do not have the ability to change transaction details, however, they could collude to prevent specific transactions from being included in blocks. Acting in this manner would most likely get a producer voted out, costing them economically and hurting their reputation. Furthermore, slashing conditions for maliciously acting miners can easily be implemented and their prevention of certain transactions from being included into blocks will not work in the long run as the transaction would eventually be included in a block produced by honest block producers.
The design of DPoS is to optimize the nominal condition of 100% honest node participation, even in the face of high and varied failure conditions. For instance, the longest chain will be the chain approved by the largest majority. Even if the majority of the nodes are colluding to act maliciously (which is very unlikely), then stakeholders would notice a reduced node participation in block validation by the producers (i.e. 70% instead of 100% because 30% are honest) and would vote to remove the current set of producers. It is the risk of the users to transact in the network when the node participation is not at or near 100%. Eventually, a minority chain with 100% honest node participation will overtake all chains with participation lower than 100%. The process of approval voting also ensures that even someone with 50% of the active voting power is unable to select a single producer on their own.
Delegate Proof of Stake, Image by Lisk Academy
The ability of stakeholders to vote and remove producers at will has significant consequences on the system design and is a very important security feature. Block producers have no real power because of this and their participation is controlled by the stakeholders. Users can even delegate their votes to another to vote for them in a process known as “proxy” voting. Through operating in a more traditional hierarchy system but with the benefits of blockchain transparency, stakeholders can exert much more control over the network and the result is a much more flexible network.
DPoS consensus models make informed trade-offs between scalability and decentralization. The cost of true decentralization is high and is the key limiting factor to scalability in platforms such as Bitcoin and Ethereum. DPoS focuses on scalability by creating an environment that is more centralized, but where the centralized components (block producers) that validate and propagate consensus are transparent, identifiable, and removable by the larger voting stakeholder community. Decentralization is more representative within the stakeholder community through the approval voting system anyways, and is where the true power of the system is present.
An important feature of DPoS consensus models is that the parameters of the system can be modified by the stakeholders through a voting process. These parameters include everything from transaction fees, block sizes, producer pay, and block intervals. Enabling dynamic changes of the parameters that define the model can facilitate a substantial degree of flexibility for platforms employing the DPoS model to fit the platform’s specific needs.
Advantages of the DPoS Model
There are a variety of notable advantages that the DPoS consensus model affords. The most obvious is the elimination of the need for hash mining as in Proof of Work models, which in turn removes the high electrical consumption associated with those models.
Additionally, the voting mechanism primes platforms using DPoS models to adapt to needed software upgrades through leveraging the formalized governance that is created. Working as an on-chain governance system, DPoS consensus systems can avoid the adversarial fork debates that plague some of the more popular cryptocurrency platforms.
Finally, a distinct advantage that the DPoS model has over the traditional PoS model is the removal of the “Nothing at Stake” dilemma. This refers to the case where there is little to no cost for validators to validate on two competing chains. For validators, the strategy is the most profitable, but for the network it can lead to a double spend of a digital asset. DPoS mitigates against this due to the fact that stakeholders are using their stake to vote on block producers, not on blocks themselves. The longest chain is considered the canonical chain, so it is impossible for a subset of malicious producers to produce a fork that overtakes the main chain due to the number and order of producers being fixed before each round.
Disadvantages of the DPoS Model
Criticisms of the DPoS model stem from its lack of decentralization and existence as a system where trust of certain parties is needed, instead of operating as a trustless system. While some of these criticisms may be well founded, it is the context of the application of the consensus mechanism that matters the most. Sacrificing decentralization for scalability may not be rational for systems like Bitcoin that operate as secure stores of value protected from large entities of power that could attack the network, where decentralization becomes necessary. Instead, DPoS and its semi-centralized system that has accountability through transparency and reputation is more suited for applications and platforms where the inherent trade-off is much more practical and not under more formidable threats.
A valid attack vector against DPoS models follows a common occurrence and growing concern in many political elections, low voter turnout. Since few voters usually show up to vote in systems where they are given a vote, as historically proven time and again, stakeholders with small amounts of stake and therefore votes, may not see it as an efficient use of their time to vote in the DPoS model. This leaves the door open for more direct influence by whales to determine the direction of the network.
While the incentive mechanism and approval voting process mitigate against both the reduced centralization and possibility of a manipulated voting framework, concerns around the two are credible. It will be interesting to watch how DPoS systems evolve and address these concerns moving forward as they are built to be scalable and flexible systems.
Delegated Proof of Stake is an interesting and meaningful consensus mechanism to watch develop within the cryptocurrency community. Its explicit trade-offs between decentralization and scalability will function as an important case study for future compromises that may help the industry to grow more organically.
Already, we have seen sustainable and successful cryptocurrency platforms use the DPoS model such as Steem and Bitshares. With more ambitious projects like EOS utilizing DPoS on the horizon, crypto enthusiasts will be watching closely and evaluating the implications of its evolution.