What is consensus?
The consensus mechanism is the core of distributed
technology. In a decentralized environment where there is no central entity to
verify transactions, the consensus protocol ensures that all participants of the
network reach agreement. The entire network verifies transactions in a completely
trustless manner.
What PBFT (Practical Byzantine Algorithm)?
Practical Byzantine Fault Tolerance is a model for
reaching consensus by making multiple computers behave consistently, a technique
known as state machine replication.
Nodes reach a consensus on the decision by passing
messages about the decision between each other-such as the validity of the block in
the blockchain. In this system, security increases with the number of honest nodes.
Honest nodes agree to correct decisions and reject wrong decisions made by malicious
nodes, as long as the number of malicious nodes is less than one-third of the total.
pBFT systems are energy efficient; they do not
require high computing resources or a lot of energy to operate. In addition, pBFTs
can reach consensus quickly because all nodes are constantly communicating with each
other and do not require multiple confirmations. Once the nodes agree on a decision,
the transaction is complete.
This process can be simplified to four steps.
pBFT uses a voting mechanism to elect a leader node
in a round-robin format.
The leader initiates the decision and broadcasts it
to the secondary nodes.
All nodes, including the leader node and the
auxiliary nodes, send responses.
A response is considered valid when ⅔ + 1 node sends
the same response.
If the leader act maliciously, it can be removed by
most nodes.
MPBFT consensus versus PBFT consensus
First of all, in terms of the conditions for block production, the traditional PBFT protocol generally
requires more than 2/3 of the validators to agree before the block can be produced. To ensure the
consistency of the weight of stake and voting rights, MPBFT changed the block generation
condition from more than 2/3 of the number of validators to 2/3 of the total number of votes to
improve the speed of block generation to a certain extent. If a validator fails to produce a block, it
will vote for the next round according to a certain algorithm, while the block production conditions will
be relaxed, that is, the total number of votes exceeds (2/3-1/3*R/30)*V , where R is the number of
rounds of the block, the maximum value of 15, V is the current total number of votes, so the number
of rounds of a block if it reaches 15 rounds, the total number of votes only needs to be greater than
50% to complete the block, which greatly increase the robustness of the MTGT network.
Secondly, in terms of voting message broadcasting, the communication complexity of ordinary PBFT
will increase with the square of the number of nodes. When the number of nodes increases to more,
the communication pressure on the network will become very large. To alleviate this problem, MPBFT
establishes a leader for each round of voting, collects votes from all verifiers, and uses aggregate
signatures to achieve linear communication, which greatly reduces the complexity of network
communication in the case of multiple nodes and laying the foundation for further decentralization of
the network.
In addition, in the selection of block producers, ordinary PBFT usually adopts the way of out of blocks,
while the block producers in each round of MPBFT are randomly selected by VRF. VRF is a
pseudo-random generator whose output is verifiable, random and unpredictable in advance. At the
same time, the overall probability of a node being selected will be positively related to its own vote
weight. Therefore, the leader of each round is unpredictable, and the opponent cannot attack the
leader in advance, so that the entire network will be more fair and safe.
How does MPBFT work?
MPBFT uses a verifiable random function (VRF)-based password tossing lottery to randomly elect
verifiers, while the node with the higher vote weight ratio will have a higher chance of getting out of the
block, which will ensure greater security and fairness. In terms of on-chain governance, multiple
governance parameters are introduced and a punishment mechanism for misbehaviour is added. The
governance parameters can be dynamically adjusted on the chain through a referendum, making the
community governance process more efficient and fair.The specific operation process is as follows:
1.Firstly, the system elects the outgoing node for each round through VRF, then the outgoing node will
first propose the block and broadcast it to the other gods nodes, then the consensus among the gods
nodes will be conducted through MPBFT consensus algorithm, and it needs to meet more than 2/3 of
the total votes to agree in order for the block to come out properly.
2.Every other cycle, the gods nodes will be re-elected based on the number of votes they have obtained,
and the node with the top 25 votes will be the new round of block producers.
3.Every normal block will get a certain block reward. The block reward includes a fixed block reward and
half of the handling fee. The other half of the handling fee will be directly destroyed. The gods node can
set a reward percentage, each block reward will be divided proportionally between the block producer
and the MTGT holders who voted for that node.
4.Every MTGT holder can participate or propose a system referendum to decide the main affairs and
development of MTGT, each referendum will be led by the MTGT Foundation after the vote is completed,
and will be promoted together with the community.