欢迎莅临 IEEE HotICN 中文社区,IEEE HotICN 国际学术会议网站: https://hoticn.com, https://hoticn.cn。

Fast-HotStuff: A Fast and Robust BFT Protocol for Blockchains

区块链 韦帆

在区块链系统中,共识协议决定了整个网络的性能、安全性和扩展能力。近年来,HotStuff 被认为是拜占庭容错(BFT)共识领域的重要突破,并被 Facebook 的 DiemBFT、Flow 等区块链系统采用。然而,尽管 HotStuff 在设计上非常优雅,它仍然存在一些性能上的局限。

该研究提出的 Fast-HotStuff,在保持 HotStuff 安全性的前提下,大幅降低了共识延迟,并增强了系统抵抗攻击的能力。

一、HotStuff:区块链共识的重要突破

HotStuff 是近年来非常重要的 BFT 共识协议,其最大贡献在于同时实现了两个关键特性。

首先是“响应性”(Responsiveness)。在很多传统共识协议中,系统需要假设一个最大网络延迟 Δ,即使网络实际非常快,也必须等待这个上界时间。而 HotStuff 不同,它的共识速度只受真实网络延迟影响,也就是说网络越快,共识越快。

第二个重要特性是“线性视图切换”(Linear View Change)。在早期 BFT 协议(例如 PBFT)中,当系统需要更换 leader 时,通信复杂度可能达到 O(n³)。随着节点规模扩大,系统性能会迅速下降。HotStuff 将这一复杂度降低到了 O(n),使得系统可以更频繁地轮换 leader,同时保持较高性能。

正因为这些优点,HotStuff 成为了许多区块链系统的核心共识协议。

二、HotStuff 的两个局限

虽然 HotStuff 的设计非常优秀,但它仍然存在两个重要问题。

1. 共识延迟较高

Fast-HotStuff: A Fast and Robust BFT Protocol for Blockchains插图

HotStuff 使用一种被称为“三链提交规则”(three-chain commit rule)的机制。简单来说,一个区块要被最终提交,需要经过三轮连续的共识阶段。

举个简单的例子:

当区块 Bv 被提出后,系统必须继续生成 Bv+1、Bv+2,并在后续区块出现之后,才能最终确认 Bv。这意味着提交一个区块需要三轮网络通信。

这种设计保证了安全性,但同时也增加了共识延迟。

2. Fork 攻击问题

Fast-HotStuff: A Fast and Robust BFT Protocol for Blockchains插图1

HotStuff 使用流水线(pipeline)机制来提高吞吐量。新的区块可以在前一个区块还未提交时继续提出。

这种机制虽然提高了效率,但也可能带来一个问题:恶意 leader 可以制造分叉(fork)。

例如,一个恶意节点可能故意让新区块指向更早的区块,而不是当前链的最新区块,从而覆盖诚实节点提出的区块。这种攻击会导致:

  • 已经生成的区块被回滚
  • 交易需要重新打包
  • 系统吞吐量下降

因此,在存在恶意节点时,HotStuff 的性能可能会明显下降。

三、Fast-HotStuff 的核心思想

Fast-HotStuff 的目标非常明确:在保证安全性的前提下,把 HotStuff 的三轮共识减少到两轮。

实现这一目标的关键在于一个新的机制:Proof of highQC。

简单来说,Fast-HotStuff 要求 leader 在提出新区块时,必须证明这个区块是建立在“多数节点已确认的最新区块”之上的。这个证明会附带在区块中,所有节点都可以验证。

如果 leader 尝试扩展一个过旧的区块,其他节点就会拒绝投票。这样一来,系统就可以避免恶意 leader 利用旧区块制造分叉。

四、两轮提交机制

Fast-HotStuff: A Fast and Robust BFT Protocol for Blockchains插图2

在 Fast-HotStuff 中,区块提交只需要两轮通信。

在 HotStuff 中:

区块 Bv 需要等待 Bv+1、Bv+2、Bv+3 出现后才能提交。

而在 Fast-HotStuff 中:

只要形成两层区块链结构,例如 Bv → Bv+1 → Bv+2,节点就可以安全地提交 Bv。

因此,Fast-HotStuff 将提交延迟从三轮通信降低到了两轮通信,大幅减少了交易确认时间。

五、防止 Fork 攻击

Fast-HotStuff 还通过新的证明机制防止分叉攻击。

在该协议中,leader 提出的每个区块都必须包含一个证明,表明它扩展的是多数节点看到的最新区块。如果 leader 试图使用旧的共识证书(QC)来扩展新区块,其他节点会检测到这一点并拒绝投票。

因此,恶意节点无法再通过使用旧区块来制造分叉,从根本上解决了 HotStuff 中的 fork 攻击问题。

六、性能与鲁棒性提升

Fast-HotStuff: A Fast and Robust BFT Protocol for Blockchains插图3

首先是更低的共识延迟。由于提交只需要两轮通信,交易确认速度明显提高。

其次是更强的抗攻击能力。由于必须证明新区块建立在最新区块之上,恶意 leader 无法轻易制造分叉。

此外,在 leader 正常工作的情况下,系统的视图切换开销非常小。当 leader 发生故障时,Fast-HotStuff 仍然能够通过聚合签名机制高效完成视图切换。

Fast-HotStuff 的意义不仅在于性能优化,更在于理论上的突破。

过去很多研究认为,为了保证安全性和活性,响应式 BFT 协议必须使用三轮提交机制。而 Fast-HotStuff 证明,通过适当的证明机制,两轮提交同样可以保证系统安全。

这一结果为未来区块链共识协议的设计提供了新的思路。

喜欢 (0)