共识协议PBFT实用拜占庭容错

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了共识协议PBFT实用拜占庭容错相关的知识,希望对你有一定的参考价值。

1. PBFT实用拜占庭容错(Practical Byzantine Fault Tolerance)

1.1 BFT算法(Byzantine Fault Tolerance)
3f 个节点中最多f 个代表不诚实

1.2 3种身份

Client:客户端节点,负责发送交易请求。
Primary: 主节点,负责将交易打包成区块和区块共识,每轮共识过程中有且仅有一个Primary节点。
Replica: 副本节点

1.3 3个阶段:pre-prepare,prepare, commit

step1. client发送请求给主节点
step2. 主节点广播请求给其它节点,节点执行PBFT算法的三阶段共识流程。
step3. 节点处理完三阶段流程后,返回消息给client。
step4. client收到来自 f+1 个节点的相同消息后,代表共识已经正确完成。

  • checkpoint 周期检查协议
    定期地处理日志、节约资源并及时纠正服务器状态

  • View Change protocol 视图转换协议
    副本节点i检测出主节点作恶或者下线,会产生超时机制,启动视图更换,并将视图编号v变更为v+1,同时不再接受除检查点消息(checkpoint)、视图更换消息(view-change) 和新视图消息(new-view)外的其他消息请求。

以上是关于共识协议PBFT实用拜占庭容错的主要内容,如果未能解决你的问题,请参考以下文章

区块链分布式共识协议

共识专栏Quorum机制与PBFT

区块链共识算法 PBFT(拜占庭容错)PAXOSRAFT简述

一文读懂实用拜占庭容错(PBFT)算法

基于实用拜占庭共识算法(PBFT)的区块链模型的评估

共识机制是什么?