PBFT 为什么PBFT 需要2次Prepare

主题:“PBFT” 对于区块链从业者而言都很是耳熟能详的名词了,大家也都知道PBFT是拜占庭容错算法

但是有没有人想过为什么PBFT 需要2次Prepare?

对于 这个知识点,我们需要了解PBFT pre_ prepare和 prepare是干嘛的.

先用一个例子解释PBFT工作原理

故事:某公司远程开会,需要投票表决某一个事项,但是开会的成员不一定在听,投票表决只有Yes和No,那么假设有b(bad boy)个人没有认真听,那么需要多少人投票表决才可以算通过呢?计算过程:先假定人数n,我们看看n至少是多少。那么正常的收到消息n-b,判断标准,我们至少需要b+1 个人通过(b+1说明,在以知的b个拜占庭节点后,还收到b+1个一致的节点,说明这个消息是正确的),但是不确定里面的n-b个人是不是也是有没有认真听的人,所以我们最终的结论是:n-b-b>b,所以,n>3b, 这也就是为什么pbft需要保证。

那为什么需要pre_prepare 和 prepare 这两次呢?

那就需要了解pre_prepare和prepare是干嘛的和整个算法有什么关联就好了。

先看看pre_prepare:

pre_prepare 工作:  

      leader节点:向所有节点发出pre_prepare消息,进入prepare阶段。

      普通节点:收到Pre_prepare消息,进入prepare阶段

再看看prepare阶段:

      所有节

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值