# Improved PBFT Algorithm Based on Comprehensive Evaluation Model
## 1 Introduction  
Since \"an electronic cash currency completely realized through peer-to-peer technology\" (i.e., Bitcoin) [1] was proposed in 2008, blockchain technology has received attention and developed rapidly. The essence of the blockchain is a decentralized distributed ledger database [2], which integrates peer-to-peer (P2P) networks, consensus algorithms, cryptology principles [3], smart contracts, and other technologies. Due to its security, decentralization, tamper-proofing, and traceability, the blockchain is widely used in digital currency, finance, health care, energy, IoT, and other fields [4]. The consensus algorithm, as the core technology of the blockchain, enables participants to verify the validity of data in the blockchain system, ensuring that each node of the blockchain can record and store data according to the same uniform standard of behavior, thus reaching a consensus of the whole network. The \"CAP theorem\" [5] indicates that even if a feasible consensus algorithm is designed in engineering, it cannot perfectly satisfy the consistency, availability, and partition tolerance at the same time, and all nodes in the blockchain network need to follow consistent rules. The proposed theorem provides a guiding principle for the design of a consensus algorithm. Bitcoin uses a fully decentralized proof of work (PoW) algorithm to reach a consensus through computing competition to ensure data consistency, but at the same time, it createsa waste of resources. Proof of stake (PoS) [6] is an efficient consensus mechanism that introduces coin days to dynamically adjust the difficulty of mining to reduce computational consumption. Delegated proof of stake (DPoS) [7] uses a scheme based on node weights to elect proxy nodes, effectively reducing the number of participant nodes. However, most of these algorithms do not take Byzantine fault tolerance into account. In a distributed blockchain system, different nodes reach a consensus by exchanging information. However, malicious nodes may tamper with or fake data in the network, which affects the consensus among nodes and destroys the consistency of the distributed system. In this highly secure network environment, the design of consensus algorithms must take into account the \"Byzantine general problem\". Therefore, the BFT algorithm [8], which can tolerate Byzantine faults, has become a trend in the development of the consortium blockchain, but the earlier Byzantine fault-tolerant protocol overemphasized the theoretical nature of the algorithm while ignoring its practicability, and due to the high complexity of the BFT algorithm, it has not been practically applied. [PERSON] and [PERSON] et al. [9] proposed a practical Byzantine fault tolerance (PBFT) algorithm in 1999, which improved the inefficiency of the BFT algorithm and was able to achieve fault tolerance for a certain number of Byzantine nodes to provide security and activity in asynchronous distributed systems. The biggest difference between blockchain systems and traditional distributed systems is that the environment is complex, and Byzantine nodes will be introduced even in strict consortium blockchains, so research on the Byzantine fault-tolerant consensus algorithm has been increasing since the birth of blockchain technology. However, there are still some problems in the PBFT algorithm, such as arbitrary selection of primary nodes, high communication complexity, poor scalability of nodes and inefficient consensus. At present, researchers have improved PBFT algorithms from different aspects. Some algorithms change the network topology of the PBFT algorithm to star network topology. For example, HotStuff [10] uses threshold signature technology to reduce the communication complexity to \(O(n)\), and the primary node collects signatures instead of using a many-to-many broadcast communication mode, but the primary node will bear a greater communication burden and easily cause network congestion.