How Vite Mitigates Centralization over DPoS



  • ⛓How Vite Mitigates Centralization over DPoS🤔
    Fresh article from our Techincal Director Allen Liu

    alt text

    The centralization debate on DPoS never stops. As an example, in EOS there are 21 block producers who are responsible for handling transactions or executing smart contracts, then pack results in blocks. In this process, which transactions will be handled and when to be handled relies on block producers completely. Corrupted block producers may collude by returning incorrect execution result in purpose, leading to possible corruption/centralization through a controlling group, cartel, or some whales.

    Let’s take a look at the consensus algorithm in Vite first.

    Vite’s consensus is HDPoS(Hierarchical Delegated Proof of Stake). In general, it is like a multi-group DPoS algorithm where each group represents an independent DPoS consensus implementation. In Vite system, there are multiple private consensus groups, multiple delegated consensus groups and a snapshot consensus group. Each private consensus group is responsible for the consensus on a specific account chain. Delegated consensus groups handle consensus on smart contracts and logical consortium chains. The consensus reached in private consensus groups and delegated consensus groups should yield to the consensus of snapshot consensus group, which is in charge of the consensus of the entire network. Compared with original DPoS, this algorithm has advantage of flexibility, adaptability and, in essence, better performance.

    Now let us move back to the corruption/centralization topic.

    In Vite, things are different. Firstly, Vite has 25 SBPs(Snapshot Block Producer) which are merely responsible for creating snapshots of Vite network state at the moment. They neither perform transactions nor execute smart contracts, but just simply snapshot the ledger and broadcast results as consensus. Transactions in Vite will only be processed and packed in blocks by account owners. Similarly, the code in smart contracts will only be executed by a group of elected nodes in delegated consensus group respectively.

    Moreover, each smart contract can designate its own delegated consensus group, and each group can register its own delegated nodes. All delegated nodes will be elected in public according to the election rules defined in each group. The number of delegated nodes in each consensus group can be specifically defined by group owner when created. Also, the number of consensus groups in the network is unlimited. Therefore, in theory the more consensus groups are in the network, the more decentralized the entire network is.

    The issue of corruption/centralization in DPoS may continue to exist. However, it could be mitigated in practice by advanced developed algorithms. HDPoS is one of the solutions.


Log in to reply