How to achieve further decentralization?
PlatON云图
2021-05-17 10:01
本文约1413字,阅读全文需要约6分钟
When a technical discussion is deadlocked, people usually use the other party's plan to lead to "centralization" as the most powerful argument against the technical point of view.

Today we are discussing the most frequently used word in the field of encryption economy - decentralization.

Decentralization is often regarded as the whole reason for the existence of blockchain. People often use the degree of "decentralization" as an important measure when evaluating a public chain. People in the field of blockchain technology especially "hate" Centralization, when a technical discussion is at an impasse, people usually use the other party's plan to lead to "centralization" as the most powerful argument against the technical point of view.

The reason why we want to achieve decentralization is believed to be that many people have their own understandings. Here are a few points:

Transparent rules and broad participationfault tolerance

fault tolerance: When there are a few malicious nodes or faulty nodes, it will not affect the smooth operation of the system. After all, it is unlikely that all nodes will fail or do evil at the same time.

will not be manipulated: Because they lack a sensitive central point, they are more expensive to attack and sabotage or manipulate.

Students who follow PlatON may have discovered that the consensus mechanism of PlatON has increased the number of candidate nodes to 201, and the number of consensus nodes per round has increased to 43, which is nearly double the degree of decentralization compared to the leading demonstration network Alaya. However, does it mean that the more nodes participating in the consensus, the better? Just imagine, regardless of the cost of hardware and bandwidth, if each of the 7 billion people in the world runs a node and participates in bookkeeping, what problems will there be?

1. Low consensus efficiency

For PlatON based on the Giskard consensus protocol, at least two rounds of QC (Quorum Certificate) are required to confirm the block or state, and each round of QC must ensure the signatures of more than 2/3 (2f+1) nodes in the entire network. nodes will lead to a serious drop in consensus efficiency.

2. Security issues

According to the BFT consensus theory, the total number of nodes is N=3F+1. When the proportion of bad nodes remains the same, the larger the total number means the larger the malicious node or faulty node F. PlatON currently uses a mechanism of randomly selecting nodes to participate in the consensus, although it can By improving the randomness algorithm and timely confiscating bad nodes through Slashing, try to avoid the same round of consensus nodes being bad nodes, but it is still not appropriate to set the total number of candidate nodes too large in terms of security.

3. Insufficient incentives for nodes

Nodes participating in the consensus must maintain network security and efficiency, but this is not selfless. Most networks including PlatON stimulate nodes by issuing additional tokens. However, if there are too many nodes, the amount of incentives required is too large. The incentives for a single node will become very limited, which will affect the enthusiasm of nodes to maintain network efficiency and security.

4. Slow update and upgrade

A huge group is bound to be full of various voices. It is not easy to promote new improvement proposals (such as PIP), and the proposal initiators need to gain enough support before they can be implemented.

Based on the above reasons, PlatON currently does not completely release the total number of verifiers and the number of consensus nodes per round. Instead, it makes preliminary adjustments based on the current technology, rigorous performance requirements, and abnormal test premise. Regarding how many verifier nodes there are It is the most suitable. There is no conclusion at present, but from the perspective of technology iteration and long-term development, the current parameter of 201+43 needs to be further expanded. We can try to set a few small goals on the premise of balancing security and performance. Further enhance decentralization:

Number of Alternative Nodes: It is planned to support more than 10,000 nodes. Consider dynamically adjusting the number of candidate nodes according to factors such as the number of pledged LAT, the number of transactions, and the block generation rate, so as to increase the cost of nodes doing evil and reduce the risk of being attacked.

Number of verification nodes: Consider optimizing the Giskard consensus protocol, and support more verification nodes on the premise of ensuring that there is no obvious loss in performance. Due to the time window of DDoS attacks, the number of participating BFT verification nodes should not be too large. It is planned to support 200 verification nodes.

Optimal Randomness Algorithm: A good algorithm can guarantee security and fairness at the same time, and PlatON will continue to optimize and improve the algorithm for selecting consensus nodes.

PlatON云图
作者文库