摘要
The PBFT (Practical Byzantine Fault Tolerance, PBFT) consensus algorithm, which addressed the issue of malicious nodes sending error messages to disrupt the system operation in distributed systems, was challenging to support massive network nodes, the common participation over all nodes in the consensus mechanism would lead to increased communication complexity, and the arbitrary selection of master nodes would also lead to inefficient consensus. This paper offered a PBFT consensus method (Role Division-based Practical Byzantine Fault Tolerance, RD-PBFT) to address the above problems based on node role division. First, the nodes in the system voted with each other to divide the high reputation group and low reputation group, and determined the starting reputation value of the nodes. Then, the mobile node in the group was divided into roles according to the high reputation value, and a total of three roles were divided into consensus node, backup node, and supervisory node to reduce the number of nodes involved in the consensus process and reduced the complexity of communication. In addition, an adaptive method was used to select the master nodes in the consensus process, and an integer value was introduced to ensure the unpredictability and equality of the master node selection. Experimentally, it was verified that the algorithm has lower communication complexity and better decentralization characteristics compared with the PBFT consensus algorithm, which improved the efficiency of consensus.
The PBFT (Practical Byzantine Fault Tolerance, PBFT) consensus algorithm, which addressed the issue of malicious nodes sending error messages to disrupt the system operation in distributed systems, was challenging to support massive network nodes, the common participation over all nodes in the consensus mechanism would lead to increased communication complexity, and the arbitrary selection of master nodes would also lead to inefficient consensus. This paper offered a PBFT consensus method (Role Division-based Practical Byzantine Fault Tolerance, RD-PBFT) to address the above problems based on node role division. First, the nodes in the system voted with each other to divide the high reputation group and low reputation group, and determined the starting reputation value of the nodes. Then, the mobile node in the group was divided into roles according to the high reputation value, and a total of three roles were divided into consensus node, backup node, and supervisory node to reduce the number of nodes involved in the consensus process and reduced the complexity of communication. In addition, an adaptive method was used to select the master nodes in the consensus process, and an integer value was introduced to ensure the unpredictability and equality of the master node selection. Experimentally, it was verified that the algorithm has lower communication complexity and better decentralization characteristics compared with the PBFT consensus algorithm, which improved the efficiency of consensus.