PBFT(拜占庭容错)

    基于拜占庭将军问题,一致性的确保主要分为这三个阶段:预准备(pre-prepare)、准备(prepare)和确认(commit)。流程如下图所示:
其中C为发送请求端,0123为服务端,3为宕机的服务端,具体步骤如下:
1. Request:请求端C发送请求到任意一节点,这里是0
2. Pre-Prepare:服务端0收到C的请求后进行广播,扩散至123
3. Prepare:123,收到后记录并再次广播,1->023,2->013,3因为宕机无法广播
4. Commit:0123节点在Prepare阶段,若收到超过一定数量的相同请求,则进入Commit阶段,广播Commit请求
5.Reply:0123节点在Commit阶段,若收到超过一定数量的相同请求,则对C进行反馈
根据上述流程,在 N ≥ 3F + 1 的情況下一致性是可能解決,N为总计算机数,F为有问题的计算机总数。
由此可以看出,拜占庭容错能够容纳将近1/3的错误节点误差,IBM创建的Hyperledger就是使用了该算法作为共识算法。

PBFT(拜占庭容错)相关推荐

  1. 通俗易懂理解PBFT拜占庭容错的回答

    作者:蒋雨辰 链接:https://www.zhihu.com/question/52254063/answer/322188918 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...

  2. 区块链共识算法 PBFT(拜占庭容错)、PAXOS、RAFT简述

    共识算法 区块链中最重要的便是共识算法,比特币使用的是POS(Proof of Work,工作量证明),以太币使用的是POS(Proof of Stake,股权证明)使得算理便的不怎么重要了,而今PO ...

  3. 理解分布式一致性:拜占庭容错与PBFT

    理解分布式一致性:拜占庭容错与PBFT 拜占庭问题 拜占庭容错BFT PBFT(Practical Byzantine Fault Tolerance) why 3f+1 ? PBFT 的优点 PBF ...

  4. 实用拜占庭容错系统(PBFT)共识算法

    摘拜占庭容错问题简称BFT,实用拜占庭容错系统(PBFT)在区块链中的应用很普遍,简介PBFT算法步骤. 更多区块链技术与应用分类: 区块链应用    区块链开发 以太坊 | Fabric | BCO ...

  5. PBFT实用拜占庭容错算法详解

    分布式架构遭遇的问题 分布式架构会遭遇到以下问题: 1.异构环境的分布式架构首先可能遇到网络传输问题,比如数据丢失.延迟.重复.乱序. 2.欺骗攻击和重播攻击 3.操纵多个失效节点,延迟通讯,制造混乱 ...

  6. 拜占庭容错共识(PBFT)

    文章目录 一.拜占庭容错共识 1. 什么是PBFT 拜占庭将军的问题是什么? pBFT 原理 2. 与最传统的PoW共识机制相比,PBFT优势和劣势 3. BFT共识开发库 Tendermint BF ...

  7. 区块链共识算法:Paxos、Raft以及实用拜占庭容错机制PBFT

    详情参见个人博客: http://brainware360.cn/%E5%8C%BA%E5%9D%97%E9%93%BE%E5%85%B1%E8%AF%86%E7%AE%97%E6%B3%95%EF% ...

  8. 分布式共识算法(拜占庭容错算法)的系列整理一:PBFT、PoW、PoS、DPos

    五篇分布式共识系列文章合集: 分布式共识算法(拜占庭容错算法)的系列整理一:PBFT.PoW.PoS.DPos 分布式共识算法(故障容错算法)系列整理(二):Bully.Gossip.NWR 分布式共 ...

  9. PBFT实用拜占庭容错算法

    PBFT实用拜占庭容错算法原理 本篇文章开启区块链共识算法的普及--我以 PBFT (Practical-Byzantine-fault-tolerant)实用拜占庭容错共识算法打头阵. 为什么先是P ...

最新文章

  1. 阿里发布新工具,直接帮你改代码!网友:工作量又减轻了~
  2. retinaface验证
  3. 于计算机交朋友教案,三年级上册信息技术教案-2与计算机交朋友|人教版 (2)
  4. Servlet学习笔记(七)—— 自己定义过滤器的编写改进:自己定义实现FilterChain...
  5. 网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?
  6. 网页开发浏览器兼容性问题
  7. nginx 一个请求发给多台机器_配置Nginx实现负载均衡
  8. 测试 第七章 循环结构进阶 1205 草稿
  9. c语言输入n打印数字菱形,打印数字菱形,急啊,帮帮小女子啊。。。
  10. 细粒度图像分类_【完结】16篇图像分类干货文章总结,从理论到实践全流程大盘点!...
  11. 宿舍管理系统c语言程序代码,宿舍管理系统(c语言版)
  12. php支付宝接口开发流程,对接支付宝支付接口开发详细步骤(证书签名方式)
  13. 海思Hi3559V200运动相机、流媒体后视镜开发板防雷防静电推荐图
  14. 【Lorenz混沌】基于FPGA的Lorenz混沌系统verilog实现
  15. 我眼中的Java大牛之孤尽老师
  16. 绩效管理工具OKR与GRAD
  17. 如何在graphpad表示出正负误差_正负公差表示方法
  18. 国产单片机GD32系列开坑,带你零死角玩转GD32 第六章
  19. Debian 查看与修改IP,设置多ip,network与networkManager配置
  20. php网站加广告位,织梦广告位的添加调用

热门文章

  1. 字节码是什么?字节码增强有哪些?
  2. 怎么用python画指北针?
  3. java实训感想6000字_JAVA论文6000字:无线校园
  4. 东大22春政治学概论X《政治学概论》在线平时作业2_100分满分非答案
  5. 搭建CA认证中心及搭建https实战
  6. 关于考研的几个潜规则
  7. px4官网调参指南 多旋翼无人机PID调参指南
  8. php获取访客精确ip,PHP获取访客IP、地区位置等技巧分享
  9. 账号已被停用,请咨询系统管理员
  10. geohash网格图_Geohash 网格聚合