QUICK REVIEW
[论文解读] Correctness Analysis of IBFT
Roberto Saltini, Hyland-Wood, David|arXiv (Cornell University)|Jan 22, 2019
Distributed systems and fault tolerance参考文献 21被引用 14
一句话总结
本文正式分析了伊斯坦布尔拜占庭容错(IBFT)共识协议,并在最终同步网络模型下识别出其在持久性和活性保证方面的关键缺陷。本文提出了两种协议修改方案——分别受PBFT和Tendermint启发——以恢复IBFT的拜占庭容错持久性和活性,确保私有及联盟区块链中的正确最终性。
ABSTRACT
In this paper we analyse the correctness of Istanbul BFT (IBFT), which is a Byzantine-fault-tolerant (BFT) proof-of-authority (PoA) blockchain consensus protocol that ensures immediate finality. We show that the IBFT protocol does not guarantee Byzantine-fault-tolerant consistency and liveness when operating in an eventually synchronous network, and we propose modifications to the protocol to ensure both Byzantine-fault-tolerant consistency and liveness in eventually synchronous settings.
研究动机与目标
- 在分布式环境中正式验证IBFT共识协议的正确性。
- 识别并分析IBFT在最终同步网络模型下持久性和活性保证中的失败场景。
- 提出协议修改方案,以恢复IBFT的拜占庭容错持久性和活性。
- 评估两种不同的架构方法——PBFT类与Tendermint类——在增强IBFT容错能力方面的表现。
- 提供形式化验证且可实现的IBFT修改方案,确保在生产环境的私有及联盟区块链网络中实现正确最终性。
提出的方法
- 使用进程代数符号对IBFT进行形式化建模,以精确描述协议行为和消息流。
- 识别在存在网络延迟或拜占庭提议者的情况下,IBFT无法维持一致性(持久性)或进展(活性)的失败场景。
- 提出一种类PBFT的解决方案,通过扩展的Pre-Prepare消息(包含锁定轮次值)及重锁定逻辑,以提升活性和最终性。
- 设计一种类Tendermint的解决方案,基于重锁定机制,允许验证者通过具有匹配锁定轮次的法定人数Prepare消息和Pre-Prepare消息,在更高轮次重新锁定。
- 规定五项协议修改,以确保拜占庭容错持久性,包括消息验证和状态追踪机制的增强。
- 从通信效率、往返性能以及对提议者故障或网络延迟的鲁棒性等方面,对比两种解决方案的优劣。
实验结果
研究问题
- RQ1IBFT是否在最终同步网络模型下保证拜占庭容错持久性?
- RQ2IBFT是否在最终同步网络模型下保证拜占庭容错活性,即使仅发生崩溃故障?
- RQ3IBFT协议是否可被修改,以在最终同步条件下同时保证持久性和活性?
- RQ4基于PBFT和Tendermint的修改方案在性能和正确性方面如何比较?
- RQ5为恢复IBFT的容错能力,需要哪些具体协议变更,同时保持与现有实现的向后兼容性?
主要发现
- IBFT在最终同步网络模型下无法保证拜占庭容错持久性,意味着诚实节点可能在区块链状态上产生分歧。
- IBFT在最终同步网络模型下无法保证拜占庭容错活性,即使仅存在崩溃故障,也因消息延迟和提议者故障而受到影响。
- 类PBFT的解决方案在当前提议者诚实且消息在轮次定时器内送达时,可在一个轮次内完成决策,从而在理想条件下提升活性。
- 类Tendermint的解决方案在轮次切换期间相比类PBFT方案减少了整体带宽使用,因此在高延迟环境中具备更好的可扩展性。
- 当不存在拜占庭验证者且网络延迟超过轮次定时器时,类PBFT的解决方案可在两个通信阶段(Pre-Prepare和Prepare)内实现最终确定。
- 所提出的修改,特别是结合锁定轮次追踪的重锁定机制,对于恢复活性和防止共识无限停滞至关重要。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。