当前位置: 首页 > news >正文

【PBFT算法】

口信消息型拜占庭问题之解的局限

该算法存在两个主要问题:

  • 消息复杂度高:将军数为n、叛将数为f时,算法需要递归协商f+1轮,消息复杂度为O(n^(f+1))。例如叛将数为64时,消息数量远超int64表示范围。
  • 理论化严重:算法仅关注忠将达成共识,不关心共识结果是否合理(如适合进攻时可能达成撤退共识)。

PBFT算法的核心原理

PBFT通过签名约束恶意节点行为,基于三阶段协议和大多数原则(2f+1)实现共识:

三阶段协议

  1. 预准备阶段:主节点广播预准备消息给备份节点。
  2. 准备阶段:备份节点广播准备消息,确认收到一致的指令。需收到2f个一致消息才进入下一阶段。
  3. 提交阶段:节点广播提交消息,收到2f+1个验证通过的消息后执行指令。

关键点

  • 签名机制:防止伪造消息,确保消息来源和内容可信。
  • 客户端验证:客户端需收到f+1个相同响应才确认共识达成。
  • 视图变更:主节点作恶时,通过轮换机制选举新主节点。

消息复杂度优化

PBFT将消息复杂度从O(n(f+1))降至O(n2),但仍需较多消息。例如13节点集群(f=4)需237条消息,适用于中小型系统。

适用场景

  • 联盟链:如Hyperledger Sawtooth、Zilliqa。
  • 相对可信环境:能容忍(n-1)/3个恶意节点,不依赖算力(与PoW对比)。

思考题答案

客户端需收到f+1个响应才能确保至少一个来自忠将。若仅收f个响应,可能全来自叛徒,导致错误共识。

对比其他算法

  • Raft:不适用恶意节点场景。
  • PoW:消耗算力,PBFT更高效但规模受限(O(n^2)复杂度)。

通过PBFT,苏秦可确保忠将们一致执行指令,即使存在叛徒干扰。

http://www.jsqmd.com/news/89673/

相关文章:

  • 对等保2.0的理解
  • C++的第十五天笔记
  • MouseTester:专业鼠标性能测试工具完整指南
  • [Linux] 手写轻量C++函数性能探查器:CPU占用率耗时
  • MsgViewer:解锁邮件查看新体验的跨平台神器
  • 突破极限!让Umi-OCR在Windows 7上重获新生的完美方案
  • 函数指针与指针函数
  • 固定Shape场景下Ascend C算子Tiling实现详解
  • 从零部署 OpenKM 文档管理系统:企业级文档管理实战指南
  • docker容器通过host.docker.internal访问宿主机的注意事项
  • [dx12显示图片] ImGui Learn Data Day 3
  • Nugget下载工具完整指南:极简高效的命令行文件获取方案
  • GridPlayer多视频同步播放器:新手快速上手指南
  • iStore插件中心终极指南:OpenWRT新手轻松安装与管理插件
  • 【PoW算法】
  • 原神帧率同步机制深度解析与性能优化实践
  • springboot整合kafka connect
  • 【专业指南】BetterNCM安装器完整教程:如何轻松管理网易云音乐插件生态
  • 智能防走失定位工具,核心功能,绑定家人手机,实时查看位置,设置安全区域,如小区,超出区域自动提醒,支持一键求救,应用场景,预防老人痴呆患者走失,家人随时掌握位置,放心又安心。
  • 【大模型预训练】19-分布式集群架构:GPU、TPU集群的拓扑结构与通信优化
  • 【ZAB协议】
  • 告别单选困境:Layui多选下拉框的优雅解决方案
  • tinySubFinder字幕下载
  • 基于SSM的在线药品销售系统【源码+文档+调试】
  • Mammoth.js实战指南:轻松实现Word转HTML的完整解决方案
  • DOCX.js终极指南:在浏览器中生成Word文档的完整解决方案
  • 两次数字电路模拟程序+课堂测验
  • 深圳|广州|东莞|昆明-茶饮培训课程哪家好|茶饮培训机构怎么选|新中式茶饮培训哪家好|茶饮技术培训|新式茶饮培训|中式茶饮培训课程——圣旺水吧 - 老百姓的口碑
  • 抖音无水印视频下载器:5分钟掌握高清保存技巧
  • 时序数据库