The Hermes BFT for Blockchains
Document Type
Article
Publication Date
1-1-2022
Abstract
The performance of partially synchronous BFT-based consensus protocols is highly dependent on the primary node. All participant nodes in the network are blocked until they receive a proposal from the primary node to begin the consensus process. Therefore, an honest but slack node (with limited bandwidth) can adversely affect the performance when selected as primary. Hermesdecreases protocol dependency on the primary node and minimizes transmission delay induced by the slack primary while keeping low message complexity and latency with high scalability. Hermes achieves these performance improvements by relaxing strong BFT agreement (safety) guarantees only for a specific type of Byzantine faults (also called equivocated faults). Interestingly, we show that in Hermes equivocating by a Byzantine primary is expensive and ineffective. Therefore, the safety of Hermes is comparable to the general BFT consensus. We deployed and tested Hermes on 190 Amazon $EC2$EC2 instances. In these tests, Hermes's performance was comparable to the state-of-the-art BFT protocol for blockchains (when the network size is large) in the absence of slack nodes. Whereas, in the presence of slack nodes Hermes outperforms the state-of-the-art BFT protocol significantly in terms of throughput and latency.
Publication Source (Journal or Book title)
IEEE Transactions on Dependable and Secure Computing
First Page
3971
Last Page
3986
Recommended Citation
Jalalzai, M., Feng, C., Busch, C., Richard, G., & Niu, J. (2022). The Hermes BFT for Blockchains. IEEE Transactions on Dependable and Secure Computing, 19 (6), 3971-3986. https://doi.org/10.1109/TDSC.2021.3114310