PBFT是2f+1还是3f+1?

首发于个人博客
PBFT (Practical Byzantine Fault Tolerance) 共识算法中的 f+1, 2f+1 和 3f+1 是指与系统中可容忍的拜占庭故障节点数量 F 相关的重要参数。

f+1

这表示在网络中至少需要 f+1 个诚实(非故障)节点来保证系统的安全性。换句话说,只要有超过 f 个诚实节点,系统就能抵御 f 个拜占庭故障节点的攻击。

2f+1

这个数字表示在进行共识时需要的最小响应数。为了达成共识,系统需要至少收到 2f+1 个节点的响应。这保证了即使在最坏的情况下(f 个节点是恶意的),仍然有 f+1 个诚实节点的响应,足以超过半数并达成共识。

3f+1

这是 PBFT 系统中总节点数量的最小要求。为了容忍 f 个拜占庭故障节点,系统中至少需要 3f+1 个总节点。这个数字的推导基于以下考虑:

  • 需要 f+1 个诚实节点来形成多数(保证安全性)
  • 需要另外 f 个节点来应对网络延迟或分区(保证活性)
  • 最后 f 个节点可能是拜占庭故障节点

总结

这些参数的设置确保了 PBFT 算法能够在存在一定数量的拜占庭故障节点的情况下仍然保持正确运行。

f 通常被设置为总节点数量的 1/3 左右,因为 PBFT 最多可以容忍不超过总节点数量 1/3 的拜占庭故障节点。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值