Font Size: a A A

Research On Blockchain Consensus Algorithm Based On Byzantine Fault Tolerance

Posted on:2023-06-23Degree:MasterType:Thesis
Country:ChinaCandidate:Y N LiFull Text:PDF
GTID:2568306794453364Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
In a blockchain system,there is no central authority or third party.Therefore,how to keep the data of each node in the system consistent is one of the key issues that blockchain needs to solve.Consensus algorithm in the blockchain system determines how to maintain consistency and how to reach consensus on the actions in the system.Furthermore,all nodes can maintain a distributed ledger jointly according to the algorithm.However,blockchain systems are not exactly the same as traditional distributed systems.In addition to data consistency,we also need to consider whether there are malicious nodes in the system.Therefore,the Byzantine Fault Tolerance consensus algorithm is mainly used in blockchain system.Through the study of four mainstream Byzantine fault tolerant consensus algorithms,and mainly analyzes the Practical Byzantine Fault Tolerance.The PBFT algorithm is improved according to its existing problems and deficiencies.The specific work is as follows:Aiming at the problems of low fault tolerance rate and high consumption of communication resources of PBFT algorithm,the Trust Mechanism Practical Byzantine Fault Tolerance is proposed.First,the algorithm supports joining the voting phase before the consensus phase begins.That is,trust nodes are selected by voting and form a list of trust nodes,and each node has only one vote.Second,in order for nodes to vote carefully,model their trustworthiness.Through this trust model,the probability of malicious nodes becoming master nodes is reduced.Finally,in order to encourage each node to vote actively and cautiously,a new reward and punishment scheme is designed in combination with Shapley Value.The scheme combines the time factor,so that the distribution of nodes’ income is closely related to their respective voting nodes and voting time.This makes the distribution of revenue between nodes more reasonable.Through the experimental verification,the throughput and traffic of the algorithm are always better than the PBFT algorithm.And the fault tolerance rate has been improved,further improving the system security.Aiming at the problems that the PBFT algorithm cannot deal with node failures in time,it is easy to cause the gap between the rich and the poor and the synchronization efficiency is slow,the Dynamic Group Practical Byzantine Fault Tolerance,is proposed.First,according to the node trust degree in the TM-PBFT algorithm,each node is grouped,and the pass line of the trust degree is set.If a node fails,it can only vote for other nodes but cannot be voted.Nodes that exceed the pass line conduct group voting.It can reduce the gap between rich and poor in trust and income between nodes.Secondly,for the node failure in the system during the consensus stage,the algorithm adds the master node replacement protocol,which can increase the robustness of the system.Finally,group broadcasting is performed during the block synchronization process to reduce the time-consuming of system synchronization.In addition,the performance of the algorithm is verified by experiments.The throughput of the algorithm is always better than that of the PBFT algorithm.And the traffic of communication is reduced from the secondary positive correlation to the primary positive correlation,which greatly reduces the communication cost.
Keywords/Search Tags:blockchain, consensus algorithm, PBFT, TM-PBFT, DG-PBFT
PDF Full Text Request
Related items