☄️Consensus
The Dione Protocol is being developed to offer unparalleled scalability, resilience, versatility, and security. Our highly modular architecture further strengthens the fact.
Our consensus protocol is inspired by the Avalanche platform due to its scalability, quick finality, ability to reach high throughput, and phenomenal degree of decentralization. There are multiple stages for reaching the consensus (on an actual network in execution, the entire process happens in a second).
Every node on the network is initially neutral (i.e. it does not carry any opinion). However, as soon as a transaction occurs and is sent to the node for verification, it would form an opinion.
For the sake of simplicity, in this example, if node A decides in the favor of a transaction, it would form the opinion “True” and if it decides against a transaction, it would form the opinion “False”.
As soon as node A forms an opinion (i.e. either True or False), it would broadcast its results to other nodes on the network.
Case 1
If the queried nodes are neutral:
They would inherit the opinion of node A
Case 2
If the majority of the queried nodes have the same opinion as node A
Node A’s opinion would remain unchanged
Case 3
If the majority of the queried nodes have a different opinion than node A
Node A would inherit their opinion
In the above cases, the querying node would have a threshold parameter and a confidence counter as well. Thus it would only flip its opinion if the majority has a different opinion with higher confidence.
Another property is that the node is almost stateless between subsequent rounds of voting and a very small memory size is allocated to a node to contain its current state, thus rendering it “clueless” to the history of interactions.
It should be noted that all nodes are designed to select a constant size of the sample to query. For instance, given that k = X, all nodes would always query X number of nodes to get their opinion as “sample data”. Another important factor is that the querying node should weigh in the staked amount of queried nodes as well to select them during sampling.
At the beginning of sampling, the network may seem to have a 50:50 split in the favor of True or False. However, after extensive pseudo-sampling and querying several random nodes, the network would ultimately reach a consensus distinctively.
To ensure the network is BFT, each node carries yet another parameter storage as well that allows it to capture the “trust rating” of a node in its currently formed opinion. The job of this counter is to determine the number of queried nodes that have returned the same opinion as the querying node. As soon as the querying node (i.e. node A) flips its opinion, the counter is set to 0 to get ready for the next round of iterations.
Provided that the quantity of sampling is enough, the above mechanism would always result in a high degree of security and the network would ultimately reach “V2”, which is the point of no return, after which the network must take a binary decision for a transaction.
Last updated