Skip to main content
QUICK REVIEW

[论文解读] Revisiting hBFT: Speculative Byzantine Fault Tolerance with Minimum Cost

Nibesh Shrestha, Mohan Kumar|arXiv (Cornell University)|Feb 25, 2019
Distributed systems and fault tolerance参考文献 5被引用 5
一句话总结

本文揭示了 hBFT 中一个关键的安全违规问题,hBFT 是一种声称仅需 3f + 1 个副本即可实现两步共识的拜占庭容错共识协议。作者通过一个形式化场景证明,一个拜占庭主节点可通过伪造 PREPARE 消息,导致冲突的承诺,从而违反 FaB Paxos 所确立的 5f + 1 个副本下限,破坏共识安全性。

ABSTRACT

FaB Paxos sets a lower bound of 5f + 1 replicas for any two-step consensus protocols tolerating f byzantine failures. Yet, hBFT promises a two-step consensus protocol with only 3f + 1 replicas. As a result, it violates safety property of a consensus protocol. In this note, we review the lower bound set by FaB Paxos and present a simple execution scenario that produces a safety violation in hBFT. To demonstrate the scenario, we require a relatively simple setup with only 4 replicas and one view-change.

研究动机与目标

  • 分析 hBFT 的安全性保证,hBFT 是一种声称实现 3f+1 副本效率的两步拜占庭容错共识协议。
  • 挑战在拜占庭故障下仅用 3f+1 个副本即可实现两步共识的说法。
  • 展示一个具体执行场景,其中 hBFT 因拜占庭主节点而违反共识安全性。
  • 表明当副本发送冲突值且不存在提交证书时,hBFT 的视图变更协议无法保留已提交的值。
  • 强化两步拜占庭共识协议中 5f + 1 个副本的理论下限。

提出的方法

  • 构建一个包含 4 个副本(其中 1 个为拜占庭主节点,f=1)的最小系统,以测试 hBFT 的安全性。
  • 设计一个双视图执行流程:视图 1 中,主节点 i1 发送针对值 a 和 b 的冲突 PREPARE 消息。
  • 在视图 1 中,副本 i2 和 i3 在收到 2f+1(即 3 个)COMMIT 消息后提交值 a;i4 提交值 b。
  • 在视图 2 中触发视图变更,主节点 i2 收集到 2f+1(即 3 个)VIEW-CHANGE 消息:i2(值 a)、i4(值 b)、i1(伪造的 b)。
  • 使用 hBFT 的视图变更逻辑:因有 f+1(即 2 个)投票支持 b 且无提交证书,故选择值 b。
  • 表明在视图 2 中,所有正确副本(i2、i3、i4)均提交值 b,与之前对值 a 的承诺相矛盾。

实验结果

研究问题

  • RQ1在拜占庭故障下,hBFT 能否安全地仅用 3f + 1 个副本实现两步共识?
  • RQ2当不存在提交证书时,hBFT 的视图变更协议是否能正确保留先前已提交的值?
  • RQ3拜占庭主节点伪造 PREPARE 消息对共识安全性有何影响?
  • RQ4hBFT 是否违反了 FaB Paxos 为两步拜占庭共识所确立的 5f + 1 个副本理论下限?
  • RQ5能否仅用四个副本和一次视图变更就演示出安全违规?

主要发现

  • 在 hBFT 中,单个拜占庭主节点可通过消息伪造,导致同一序号下提交两个不同值(a 和 b)。
  • 在 f=1 的 4 副本系统中,hBFT 的视图变更协议基于 f+1 张选票(2 张)选择值 b,尽管值 a 已被 2f+1 个副本(3 个副本)提交。
  • 视图变更消息中缺少提交证书,使得新主节点可选择冲突值,从而违反共识安全性。
  • hBFT 未能保留值 a 的提交状态,尽管该值已被 3 个正确副本(i2、i3 和 i1)接受,导致安全违规。
  • 该协议违反了 FaB Paxos 所确立的 5f + 1 个副本下限,证明在拜占庭故障下,仅用 3f + 1 个副本实现两步共识是不安全的。
  • 安全违规并非发生在正常执行过程中,而是在视图变更期间发生,原因是基于票数统计选择值,而未进行证书验证。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。