Choosing a Suitable Consensus Algorithm for Blockchain Applications: A Review of Factors and Challenges
Keywords:
consensus algorithms, blockchain, Byzantine fault tolerance, scalability, performance, security, CAP theoremAbstract
Consensus algorithms are essential for ensuring the security, reliability, and performance of blockchain systems, which are distributed ledgers that store and process transactions among multiple nodes. However, choosing a suitable consensus algorithm for a blockchain application is a challenging task, as different algorithms have different trade-offs and limitations in terms of scalability, performance, and security. This paper reviews and compares various consensus algorithms, such as Byzantine fault tolerance (BFT), practical Byzantine fault tolerance (PBFT), and their improved variants, based on multiple criteria, such as goals, power consumption, cost, CAP theorem, application scenarios, and research directions. The paper provides a comprehensive overview of the current state and future challenges of consensus algorithms for blockchain technology and offers some guidelines and recommendations for selecting the best algorithm for different blockchain applications.
Downloads
References
Arati Baliga. Understanding blockchain consensus models.
Ethan Buchman, Jae Kwon, and Zarko Milosevic. The latest gossip on bft consensus. arXiv preprint arXiv:1807.04938, 2018.
Press Information Bureau. Raksha mantri us secretary of defence to co-chair india-us 2+2 ministerial dialogue hold bilateral talks on november10, 2023. Ministry of Defence, 2023.
Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance.In Proceedings of the Third Symposium on Operating SystemsDesign-and Implementation, page 173–186. USENIX Association, 2001.
Stefano De Angelis, Leonardo Aniello, Roberto Baldoni, Federico Lombardi, Andrea Margheri, and Vladimiro Sassone. Pbft vs proof- of-authority: Applying the cap theorem to permissioned blockchain. In Italian Conference on Cyber Security, 2018.
Diego Geroni. Byzantine fault tolerance - a complete guide. 101 Blockchains, 2021.
Suyash Gupta, Jelle Hellings, Sajjad Rahnama, and Mohammad
Sadoghi. An in-depth look of bft consensus in blockchain: Challenges
and opportunities. In 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC), page 370–377. IEEE, 2019.
Zainab Hussein, Mohamed A Salama, and Sherif A El-Rahman. Evo-lution of blockchain consensus algorithms: a review on the latest milestones of blockchain consensus algorithms. Cybersecurity, 6(30),2023.
Wangxi Jiang, Xiang Wu, Ming Song, Jie Qin, and Zhen Jia. Improved pbft algorithm based on comprehensive evaluation model. Applied
Sciences, 13(2):1117, 2023.
Mohammad Ayoub Khan, Lina Ge, Jie Wang, and Guifen Zhang. Survey of consensus algorithms for proof of stake in blockchain. Security and Communication Networks, 2022:2812526, 2022.
Martin Kleppmann. A critique of the cap theorem. arXiv preprint arXiv:1509.05393, 2017.
Leslie Lamport, Robert Shostak, and Marshall Pease. The byzantine generals problem. ACM Transactions on Programming Languages and
Systems (TOPLAS), 4(3):382–401, 1982.
Leslie Lamport, Robert Shostak, and Marshall Pease. The part-time parliament. ACM Transactions on Computer Systems (TOCS),
(2):133–169, 1998.
Caitie McCaffrey. The verification of a distributed system: A practi-tioner’s guide to increasing confidence in system correctness.
Milvus. Raft or not? the best solution to data consistency in cloud.
https://milvus.io/blog/raft-or-not.md, 2023.
Kara Mostefa, Abdelkader Laouid, Muath Alshaikh, Mohammad Ham- moudeh, Ahc`ene Bounceur, Abdelfattah ammamra, and Brahim Laouid. A compute and wait in pow (cw-pow) consensus algorithm for preserving energy consumption. Applied Sciences, 11, 07 2021.
Diego Ongaro and John Ousterhout. In search of an understandable consensus algorithm. In 2014 USENIX annual technical conference (USENIX ATC 14), pages 305–319, 2014.
Ranjeet Patel. Byzantine fault tolerance (bft) and its significance in blockchain world.
Deepak Puthal, Saraju P Mohanty, Priyadarsi Nanda, Elias Kougianos, and Gautam Das. Proof-of-authentication for scalable blockchain in
resource-constrained distributed systems. IEEE Transactions on Indus- trial Informatics, 16(9):6083–6091, 2020.
Raft. Raft consensus algorithm. https://raft.github.io/, 2013.
Robbert Van Renesse and Deniz Altinbuken. Paxos made moderately
complex. ACM Computing Surveys (CSUR), 47(3):1–36, 2015.
Wenbing Zhao. Building dependable distributed systems. John Wiley & Sons, 2014.
Zibin Zheng, Shaoan Xie, Hongning Dai, Xiangping Chen, and Huaimin Wang. An overview of blockchain technology: Architecture, consensus, and future trends. In 2017 IEEE International Congress on Big Data (BigData Congress), pages 557–564, 2017.
Downloads
Published
How to Cite
Issue
Section
License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
All papers should be submitted electronically. All submitted manuscripts must be original work that is not under submission at another journal or under consideration for publication in another form, such as a monograph or chapter of a book. Authors of submitted papers are obligated not to submit their paper for publication elsewhere until an editorial decision is rendered on their submission. Further, authors of accepted papers are prohibited from publishing the results in other publications that appear before the paper is published in the Journal unless they receive approval for doing so from the Editor-In-Chief.
IJISAE open access articles are licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. This license lets the audience to give appropriate credit, provide a link to the license, and indicate if changes were made and if they remix, transform, or build upon the material, they must distribute contributions under the same license as the original.