——Part4?拜占庭容错算法——
▲PBFT
实用性拜占庭容错算法,是一种在信道可靠的情况下解决拜占庭将军问题的实用方法。拜占庭将军问题最早由LeslieLamport等人在1982年发表的论文提出,论文中证明了在将军总数n大于3f,背叛者为f或者更少时,忠诚的将军可以达成命令上的一致,即3f+1<=n,算法复杂度为O(n^f+1)。随后MiguelCastro和BarbaraLiskov在1999年发表的论文中首次提出PBFT算法,该算法容错数量也满足3f+1<=n,算法复杂度降低到了O(n2)。
下面介绍PBFT算法的核心共识流程,如图4所示。
图4.三阶段共识
在请求request阶段,客户端发起请求,主节点收到客户端的请求后,将触发核心共识流程。算法的核心共识流程分为三个阶段:pre-prepare阶段,prepare阶段,commit阶段。其中,节点在prepare阶段和commit阶段各进行了一轮投票,分别对消息的合法性与待执行进行了确认。图中,c代表客户端,0、1、2、3代表节点的编号,在视图为0的情况下,节点0是主节点,节点1、2、3为从节点。打叉的3号代表拜占庭节点,这里表现的恶意行为就是对其它节点的请求无响应。
稳定币crvUSD科普创新清算机制LLAMMA,可在抵押品价格下跌时逐步替换为稳定币:1月17日消息,Curve官方科普其稳定币crvUSD创新的清算机制LLAMMA,解释了LLAMMA通过AMM的特性进行针对债务人更友善的清算方式,让抵押品在价格下跌时逐渐转移成稳定币,让原本要清偿的债务有一定程度的稳定币可以偿还,同时在价格回稳时再逐渐把稳定币换回抵押品,而不是直接的触发清算导致债务人的亏损。
此前报道,2022年11月23日,去中心化交易平台CurveFinance开发者发布Curve即将推出的去中心化Stablecoin“crvUSD”的官方代码和白皮书。[2023/1/17 11:17:13]
pre-prepare阶段:主节点在收到客户端的请求后,会主动向其它节点广播pre-prepare消息,其中,v为当前视图,n为主节点分配的请求序号,D(m)为消息摘要,m为消息本身。从节点在收到pre-prepare消息之后,会对该消息进行合法性验证,若通过验证,那么该节点就会进入pre-prepared状态,表示该请求在从节点处通过合法性验证。否则,从节点会拒绝该请求,并触发视图切换流程。
欧易OKEx将于3月18日推出DeFi系列科普视频:据欧易OKEx官方消息显示,欧易OKEx将正式推出DeFi系列科普视频《欧易DeFi20讲》,本系列节目由欧易OKEx亚太区CEO马克金主讲。该视频首期将于3月18日11:00(HKT)推出,用户可以在欧易OKEx官方学院、金色财经观看。
《欧易DeFi20讲》主要包含DeFi入门指南、全景解读DeFi生态及如何参与DeFi三个篇章,可以轻松使用户了解DeFi原理,洞察DeFi价值,掌握DeFi热点,更多详情请关注欧易OKEx官方学院。[2021/3/18 18:55:59]
prepare阶段:当从接到进入到pre-prepared状态后,会向其它节点广播prepare消息,其中,i为当前节点标识序号。其他节点收到消息后,如果该请求已经在当前节点进入pre-prepared状态,并且收到2f条来自不同节点对应的prepare消息(包含自身发出的以及主节点的pre-prepared消息),那么该请求就进入到prepared状态。
动态 | 报告:区块链等热点词促使童书科普百科类成交额同比增速最高:近日,京东图书与艾瑞咨询联合发布了《2019中国图书市场报告》。报告指出,AI、5G、区块链、机器人、VR、智能家居、AR这些热点词,不断点燃科技热潮,科技在改变大众生活的同时,也吸引了越来越多家长的关注,从小培养孩子对科技的兴趣和热爱。因此童书中科普百科类成交额同比增速最高,占比将近40%。[2020/1/8]
commit阶段:当请求在当前节点进入prepared状态后,本节点会向其它节点广播commit消息。如果该请求已经在当前节点达到prepared状态,并且收到2f+1条来自不同节点对应的commit消息(包含自身),那么该请求就会进入到committed状态,并可以进行执行。执行完毕后,节点会将执行结果反馈给客户端进行后续判断。
——Part5?新型共识算法——
▲HotStuff
HotStuff是一个建立在部分同步模型上的拜占庭容错协议。HotStuff具有线性视图变更的特性,把轮换主节点融入了常规共识流程中,切换主节点无需增加其他协议和代价,且系统在此期间还能继续对外提供服务。该特性解决了PBFT最棘手的视图变更问题,包括实现复杂度高、完成时间不确定以及整个过程系统不能正常对外提供服务等。此外,HotStuff还将共识流程的通信复杂度降低至O(n)。
动态 | 浙江卫视节目科普支付宝区块链防伪溯源产品:昨日,在浙江卫视播出的科普综艺栏目《智造将来》现场,支付宝首次展示了支付宝区块链防伪溯源产品,以接地气的方式公开向大众展示区块链在生活中的应用。[2019/3/4]
HotStuff的基础共识流程围绕一个核心的三轮共识投票展开,在该过程中,视图以单调递增的方式不断切换。在每个视图内,都有一个唯一主节点负责打包区块、收集和转发消息并生成QC。整个过程包括5个阶段,准备阶段、预提交阶段、提交阶段、决定阶段和最终阶段。主节点想要提交某个分支,需要在PREPARE、PRE-COMMIT和COMMIT这三个阶段收集n-f个共识节点的带签名的投票消息,并利用门限签名算法把他们合成一个证书,随后广播给从节点。
图5.BasicHotStuff共识流程
Basic-HotStuff各个阶段的流程高度相似,HotStuff作者便提出Chained-HotStuff来简化Basic-HotStuff的消息类型,并允许Basic-HotStuff的各阶段进行流水线处理。流程如图6所示:
科普时报:区块链与云计算长期发展目标不谋而合:据《科普时报》今日报道,区块链与云计算两项技术的结合,从宏观上来说,一方面,利用云计算已有的基础服务设施或根据实际需求做相应改变,实现开发应用流程加速,满足未来区块链生态系统中初创企业、学术机构、开源机构、联盟和金融等机构对区块链应用的需求。另一方面,对于云计算来说,“可信、可靠、可控制”被认为是云计算发展必须要翻越的“三座山”,而区块链技术以去中心化、匿名性,以及数据不可篡改为主要特征,与云计算长期发展目标不谋而合。[2018/5/4]
图6.Chained-HotStuff是Basic-HotStuff的流水线形式,v表示视图view,圆角矩阵表示一个node
▲HoneyBadgerBFT
FLP定理从理论上证明了在纯异步环境下不可能存在一种确定性的共识协议。后世的研究者们为了绕过这个定理,不得不在两个方向上进行妥协:要么加强对网络的假设,要么引入随机源。HoneyBadgerBFT协议,这是一个完全异步的共识协议,它不依赖于任何关于网络环境的时间假设。异步共识协议则完全不需要考虑timer的设置。为了保证协议的活性,异步协议需要引入随机源,简单来说就是当协议无法达成共识的时候,借助上帝抛骰子的方式随机选择一个结果作为最终结果。
HoneyBadgerBFT通过模块化的方式解决了拜占庭环境下的原子广播问题,即如何保证在异步和拜占庭环境下,各个节点按相同顺序收到相同的消息。HoneyBadgerBFT首先将ABC分解成一个核心模块,异步共同子集。之后将ACS分解成了RBC(ReliableBroadcast)和ABA(AsynchronousBinaryAgreement)两个子模块。整体的算法分为三个步骤:
1)每个节点交易随机选择一些交易,所有节点的总交易个数是B。每个节点的交易进行加密生成x。
2)通过ACS协议将每个节点加密的交易进行广播,以及形成统一交易序列。
3)解密交易生成区块。
——Part6?总结——
上述介绍的共识机制有着各自的优缺点,对于不同的区块链系统,我们需要结合实际使用场景与网络规模,采用不同的共识算法。下面我将以表格的形式对目前各平台使用的共识机制进行简要的对比与总结:
作者简介
袁超趣链科技基础平台部共识算法研究小组
参考文献
LamportL,ShostakR,PeaseM.TheByzantinegeneralsproblem//Concurrency:theWorksofLeslieLamport.2019:203-226.
CastroM,LiskovB.PracticalByzantinefaulttolerance//OSDI.1999,99(1999):173-186.
CastroM,LiskovB.PracticalByzantinefaulttoleranceandproactiverecovery.ACMTransactionsonComputerSystems(TOCS),2002,20(4):398-461.
IttaiAbraham,GuyGueta,DahliaMalkhi,LorenzoAlvisi,RamakrishnaKotla,andJean-PhilippeMartin.Re-visitingfastpracticalbyzantinefaulttolerance.CoRR,abs/1712.01367,2017.
MillerA,?XiaY,?CromanK,etal.TheHoneyBadgerofBFTProtocols//AcmSigsacConferenceonComputer&CommunicationsSecurity.ACM,2016:31-42.
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。