Scientific Reports (Jan 2023)
An efficient sharding consensus algorithm for consortium chains
Abstract
Abstract The consensus algorithm is very critical in any blockchain system, because it directly affects the performance and security of the blockchain system. At present, the classic Practical Byzantine Fault Tolerance Algorithm (PBFT), which is mainly used in the consortium chain, will lead to system communication congestion and reduced throughput when the number of nodes increases, so the PBFT algorithm is not suitable for large-scale consortium chains. In response to the above problems, this paper proposes a new clustering-based sharding consensus algorithm (KBFT), which aims to ensure that the consortium chain takes into account decentralization, security and scalability. The KBFT algorithm first uses the K-prototype clustering algorithm to shard the nodes in the network according to mixed attributes, and second, disjoint transactions are used to reach consensus in parallel in different shards. Concurrently, the KBFT algorithm introduces a supervision mechanism and a node credit mechanism, which is used to supervise and score the behavior of the nodes and select the proxy nodes, which improves security. We discuss the choice of shard size with the help of the binomial probability distribution and analyze the probability that the system can successfully form a global block under different node failure probabilities. Finally, the proposed algorithm is evaluated through theoretical analysis and simulation experiments. Results show that the proposed algorithm achieves a marked improvement in scalability and throughput along with a marked reduction in communication complexity compared with the classic baseline algorithm PBFT in this field of study, which improves the operating efficiency of the system and simultaneously guarantees the security and robustness of the system.