Multi-objective optimization of committee selection for hierarchical Byzantine fault tolerance-based consensus protocols
DOI:
https://doi.org/10.15276/hait.06.2023.3Keywords:
Distributed ledger technology, decentralized system, blockchain, consensus protocol, Byzantine fault toleranceAbstract
Decentralized platforms like blockchain have been attracting significant attention in recent years, especially in the context of financial and payment systems. They are designed to provide a transparent, secure, and reliable environment for digital transactions without the need for a central authority. The core of a decentralized platform like blockchain is a consensus layer that allows all participants (called Workers), who properly operate and follow all network protocols and have access to the same state of the distributed ledger, to coordinate their actions and arrive at the same decisions. However, some Workers may be temporarily offline at their own discretion, without any confirmation, or their work may be faulty due to technical circumstances, resulting in unpredictable behavior. The goal of this article is to present an approach for multi-objective optimizing of Byzantine fault tolerance (BFT)-based consensus protocols, to reduce the impact on the network of faulty participants. Two criteria were considered – minimization of the number of sent service messages, and maximization of the mathematical expectation of the number of produced blocks. The result is a method to determine the optimal committee size and distribution of Workers, depending on their total number in the network and the expected proportion of Byzantine faulty nodes. All protocol amendments presented in this work are tested with corresponding simulation models and have demonstrated notable enhancements in the performance of the system and decreased the load on network nodes. These improvements will be implemented to the consensus protocol Gozalandia on the Waterfall platform, enhancing its overall reliability, performance, and security. In addition, the presented optimizing algorithm can be applied to a wide range of consensus protocols in blockchains, where blocks must be signed by randomly selected committees to confirm their validity