Skip to main content

Advertisement

Log in

A practical byzantine fault tolerance improvement algorithm based on credit grouping-classification

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Blockchain is a distributed system that maintains a public ledger using consensus protocols. The practical byzantine fault tolerance (PBFT) protocol is vital in consortium blockchains. However, there are still problems with system centralization, consensus inefficiency, high communication complexity, and other issues in PBFT and its improved algorithms. These restrict its widespread application in realistic environments. In this work, we propose a grouping-classification practical byzantine fault tolerance (GC-PBFT) improvement algorithm based on credit. First, we construct a credit model to dynamically evaluate the credit of nodes and rank them in descending order. Second, a grouping-classification model is built to divide nodes into three subgroups. Then, primary node, supervisory node, and consensus node are selected from these subgroups randomly, ensuring that the node roles are constantly updated to improve the security and fairness of the system. Additionally, the consensus process is simplified to improve the efficiency of the consensus and reduce communication complexity. Finally, experiments show that compared with PBFT and its improved algorithms, the GC-PBFT algorithm reduces communication complexity from \(O(N^2)\) to O(N). In addition, active and honest nodes can obtain higher credit, which lowers the possibility of malicious nodes being selected as consensus nodes, leading to higher consensus efficiency and better decentralization characteristics for the system.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Algorithm 1
Algorithm 2
Algorithm 3
Algorithm 4
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Data and materials availability

The raw/processed data required to reproduce these findings cannot be shared as the data also form part of an ongoing study. The data supporting this study’s results are available on request from the author via e-mail to: Yilin Li [13235055799@163.com].

References

  1. Huang H, Chen X, Wu Q, Huang X, Shen J (2018) Bitcoin-based fair payments for outsourcing computations of fog devices. Futur Gener Comput Syst 78(2):850–858

    Article  Google Scholar 

  2. Jiang W, Wu X, Song M, Qin J, Jia Z (2023) Improved PBFT algorithm based on comprehensive evaluation model. Appl Sci 13(2):1117

    Article  Google Scholar 

  3. Wang J, Li S, Ji W, Li D, Song B (2023) A composite blockchain associated event traceability method for financial activities. Peer-to-Peer Netw Appl 16(4):1696–1715

    Article  Google Scholar 

  4. Wang Y, Wang W, Zeng Y, Yang T (2023) GradingShard: a new sharding protocol to improve blockchain throughput. Peer-to-Peer Netw Appl 16(3):1327–1339

    Article  Google Scholar 

  5. Jakobsson M, Juels A (1999) Proofs of work and bread pudding protocols (extended abstract). Secur Inf Netw 23:258–272

    Google Scholar 

  6. King S, Nadal S (2012) PPCoin: peer-to-peer crypto-currency with proof-of-stake. self-published paper 19(1)

  7. Lin Y, Wang Z, Hu G, Cao C, Li L (2023) An improved model on the vague sets-based DPoS’s voting phase in blockchain. IEEE Trans Netw Sci Eng 10:4010–4019

    MathSciNet  Google Scholar 

  8. Ongaro D, Ousterhout JK (2014) In search of an understandable consensus algorithm. draft of October

  9. Castro M, Liskov B (1999) Practical byzantine fault tolerance. ACM

  10. Haytham Q, Jelena M, Vojislav BM, Chang X (2023) A two-stage PBFT architecture with trust and reward incentive mechanism. IEEE Internet Things J 10:11440–11452

    Article  Google Scholar 

  11. Wang P, Wang X, Shen Y, Wang J, Xiong X (2023) PBFT optimization algorithm based on community contributions. Math Biosci Eng 20:10200–10222

    Article  Google Scholar 

  12. Pawan H, Maddikunta PKR (2023) Secure PBFT consensus-based lightweight blockchain for healthcare application. Appl Sci 13:3757

    Article  Google Scholar 

  13. Liu J, Feng W, Zhang Y, He F (2023) Improvement of PBFT algorithm based on CART. Electronics 12:1460

    Article  Google Scholar 

  14. Lei K, Zhang Q, Xu L, Qi Z (2018) Reputation-based byzantine fault-tolerance for consortium blockchain. In: ICPADS 2018, pp 604–611

  15. Wang Y, Cai S, Lin C, Chen Z, Wang T, Gao Z, Zhou C (2019) Study of blockchains’s consensus mechanism based on credit(article). IEEE Access 7:10224–10231

    Article  Google Scholar 

  16. Gao S, Yu T, Zhu J, Cai W (2019) T-PBFT: an EigenTrust-based practical byzantine fault tolerance consensus algorithm. China Commun 16(12):111–123

    Article  Google Scholar 

  17. Du N, Liang Z, Huang Y, Guo Z, Wang S (2020) Performance optimisation method of PBFT consensus for supply chain integration SVM. In: 2020 7th international conference on dependable systems and their applications (DSA)

  18. Almakki R, AlSuwaidan L, Khan S, Baig AR, Basee S, Singh M (2022) Fault tolerance byzantine algorithm for lower overhead blockchain. Secur Commun Netw. https://doi.org/10.1155/2022/1855238

    Article  Google Scholar 

  19. Micali S (2016) Algorand: The efficient and democratic ledger

  20. Huang Q, An Q, Su H (2017) Study and realization of an improved PBFT algorithm as an Ethereum consensus mechanism. Comput Appl Softw 34(10):7

    Google Scholar 

  21. Fan X (2018) Scalable practical byzantine fault tolerance with short-lived signature schemes

  22. Chen Z, Li Q (2019) Improved PBFT consensus mechanism based on k-medoids. Comput Sci 46(12):101–107

    Google Scholar 

  23. Chen J, Xian X, Yang Z, Liu W (2021) Improved practical byzantine fault tolerant consensus algorithm combined with BLS aggregating signature. Appl Res Comput 38(7):5

    Google Scholar 

  24. Gao N, Zhou C, Yang C, Song L, He W (2021) Improved PBFT algorithm based on network self clustering. Appl Res Comput 38(11):7

    Google Scholar 

  25. Xu X, Zhu D, Yang X, Wang S, Qi L, Dou W (2021) Concurrent practical byzantine fault tolerance for integration of blockchain and supply chain. ACM Trans Internet Technol 21(1):1–17

    Article  Google Scholar 

  26. Wang J, Li Q (2023) Improved practical byzantine fault tolerance consensus algorithm based on raft algorithm. J Comput Appl 43(1):122–129

    Google Scholar 

  27. Zhuang Q, Liu Y, Chen L, Ai Z (2019) Proof of reputation: a reputation-based consensus protocol for blockchain based systems, 131–138

  28. Wang H, Guo K, Pan Q (2019) Byzantine fault tolerance consensus algorithm based on voting mechanism. J Comput Appl 39(6):1766

    Google Scholar 

  29. Bugday A, Ozsoy A, Oztaner SM, Sever H (2019) Creating consensus group using online learning based reputation in blockchain networks. Pervasive Mob Comput 59:101056

    Article  Google Scholar 

  30. Li F, Liu K, Liu J, Fan Y, Wang S (2020) DHBFT: Dynamic hierarchical byzantine fault-tolerant consensus mechanism based on credit. In: Aisa-pacific web and web-age information management joint conference on web and big data

  31. Tu Y, Chen Y, Li T, Ren X, Qing X (2021) Improved PBFT scheme based on reputation voting. J Appl Sci 39(1):79–89

    Google Scholar 

  32. Deng X, Li K, Wang Z, Liu H (2022) A novel consensus algorithm based on segmented DAG and BP neural network for consortium blockchain. Secur Commun Netw. https://doi.org/10.1155/2022/1060765

    Article  Google Scholar 

  33. Ren X, Zhang L (2022) Improved multi-primary-node consensus mechanism based on practical byzantine fault tolerance. J Comput Appl 42(5):1500

    Google Scholar 

  34. Chen R, Wang L, Zhu R (2022) PBFT consensus algorithm based on reputation value voting and random number election. Comput Eng 48(6):42–4956

    Google Scholar 

  35. Liu S, Zhang R, Liu C, Xu C, Zhou J, Wang J (2022) Improvement of the PBFT algorithm based on grouping and reputation value voting. Int J Digit Crime Forensics 14(3):1–15

    Article  Google Scholar 

  36. Wang Y, Zhong M, Cheng T (2022) Research on PBFT consensus algorithm for grouping based on feature trust. Sci Rep 12(1):12515

    Article  Google Scholar 

  37. Micali S, Rabin M, Vadhan S (1999) Verifiable random functions. IEEE Comput Soc

Download references

Funding

This work was supported by the National Social Science Fund of China (No.21XTQ015), the Natural Science Foundation of Fujian Province of China under Grant (Nos. 2023J01920, 2020J01905, 2020J01814), and the presidential research fund of Minnan Normal University (No. KJ18024).

Author information

Authors and Affiliations

Authors

Contributions

Yilin Li involved in conceptualization and writing the original draft. Hui Huang involved in methodology and writing—review and editing. Amei Lan involved in curating the software and conducting formal analysis. Zhengjie Huang involved in supervision.

Corresponding author

Correspondence to Hui Huang.

Ethics declarations

Conflict interest

The authors declare that no commercial or related interests conflict with any of the submitted work.

Ethical Approval

Not applicable.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Li, Y., Huang, H., Lan, A. et al. A practical byzantine fault tolerance improvement algorithm based on credit grouping-classification. J Supercomput 80, 20270–20301 (2024). https://doi.org/10.1007/s11227-024-06199-2

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-024-06199-2

Keywords