首先需要声明的是Liveness的问题是搬运github上面的帖子
链接在这里
Title:Istanbul-BFT Consensus Algorithm
Contents
Abstract and Introduction
Istanbul-BFT是集成在Quorum中的可选算法之一,是一种基于拜占庭容错(Byzantine Fault Tolerance)的共识算法,它的提出是为了进一步保证联盟链(Consortium Chain)共识的安全性。当然Quorum中也提供了Raft共识算法和QuorumChain一种基于合约的投票模型作为共识算法的可选项,这种模块化的共识算法对企业特别的友好,可以根据企业自身需要进行随意切换。最近也在研究Raft共识算法,针对其LeaderElection过程中的一系列问题提出了基于区块链应用场景下的解决方案,希望感兴趣的小伙伴可以与我多多交流。
总结来看,Quorum在工业化应用方面,提供了模块化共识算法的同时,针对公有链(Public Chain)中的数据隐私保护也提出了解决方案,利用Constellation构造的privateTX保护,是一种十分巧妙的隐私保护思路,有兴趣的小伙伴可以自己查阅一下相关材料,原理十分简单。总结来看,Quorum将Ethereum的商业化应用付诸实践,是一个十分不错的开源项目,后续我也会针对这个项目做更多更深的研究和实践。
Istanbul-BFT Consensus Algorithm
术语介绍
- Validator:提供验证共识的作用
- Proposer:Proposal的提议者,Proposal中包含了block等信息,也属于Validator,只是功能不同
- Round:开始于Proposal的提出,结束于block的提交或者进入下一轮(一轮提交没成功)
- Proposal:提案
- Sequence:提案的