火星链 火星链
Ctrl+D收藏火星链

BFT:共识算法演变史

作者:

时间:1900/1/1 0:00:00

编者按:本文来自链捕手,作者:本体研究院,Odaily星球日报经授权转载。

共识算法是近年来分布式系统研究的热点,也是区块链技术的核心要素。如何理解共识算法重要性及评价体系?如何认清当前主流的共识算法及背后发展脉络?接下来共识算法发展的趋势与阻碍又是什么?01共识算法及评价体系

共识算法主要是解决分布式系统中多个节点之间对某个状态达成一致性结果的问题。分布式系统都是由多个服务节点共同完成对事务的处理,分布式系统中多个副本对外呈现的数据状态需要保持一致性。但是由于节点的不可靠性和节点间通讯的不稳定性,甚至节点作恶伪造信息进行恶意响应,节点之间就存在数据状态不一致性的问题。通过共识算法,可以实现将多个不可靠的单独节点组建成一个可靠的分布式系统,实现数据状态的一致性,提高系统的可靠性。区块链系统本身是一个超大规模的分布式系统,但又与传统的分布式系统存在明显区别。区块链系统建立在去中心化的点对点网络基础之上,在整个系统中没有中央权威,并由共识算法实现在分散的节点间对交易的处理顺序达成一致,这是共识算法在区块链系统中起到的最主要作用。另外,与企业分布式系统不同,区块链系统中的共识算法还承担着区块链系统中激励模型和治理模型中的部分功能,包括每个区块中对哪些矿工进行激励发放、网络中所有交易手续费的结算和分配、区块链网络共识周期的切换等。共识算法根据容错能力不同,即在考虑节点故障不响应的情况下,再考虑节点是否会伪造信息进行恶意响应,可以分为CFT类和BFT类共识算法。CFT共识算法只保证分布式系统中节点发生宕机错误时整个分布式系统的可靠性,而当系统中节点违反共识协议的时候将无法保障分布式系统的可靠性,因此CFT共识算法目前主要应用在企业内部的封闭式分布式系统中,目前流行的CFT共识算法主要有Paxos算法及其衍生的Raft共识算法。采用BFT共识算法的分布式系统,即使系统中的节点发生了任意类型的错误,只要发生错误的节点少于一定比例,整个系统的可靠性就可以保证。因此,在开放式分布式系统中,比如区块链网络,必须采用BFT共识算法。在区块链网络发展前,BFT共识算法主要为PBFT共识算法,目前部分联盟链采用PBFT共识算法。由于公有链的开放性,任意节点都可以随时参与和退出网络并都有作恶的可能,近两年公有链的快速发展也带动了BFT共识算法的巨大进步。另外,因为共识算法都建立在底层的网络模型基础上,所以从网络同步模型的角度来看,共识算法可以分为三种,即同步共识算法,半同步共识算法,和异步共识算法。同步共识算法要求网络中任一消息能够在已知的限定时间内到达所有的共识节点,因此主要应用在限定规模的网络环境中,大多数联盟链采用同步共识算法。异步共识算法对于消息在网络中的传播延迟没有任何限制,消息可以在无限长时间后才能发送到其他共识节点,由于FLP不可能定理,异步共识算法无法确定性保证共识终局,因此几乎没有高效的全异步共识算法,即使Bitcoin的PoW算法也是基于同步网络保证一致性,基于异步网络保证可用性。半同步共识算法在前两者之间做了权衡,要求网络中消息某限定时间后到达所有共识节点的的概率与时间的关系是已知的,目前主流的区块链共识算法都是基于半同步的网络模型,即半同步共识算法。评价一个区块链共识算法的优劣,可以从以下四个方面进行,即容错性能、终局性性能、扩展性以及网络模型性能。容错性能:指共识算法的容错能力,比如Raft只能支持节点故障错误。而在区块链中,特别公有链中,由于节点间存在利益博弈,同时又是一个非中心化的网络状态,其共识算法必须支持节点作恶的容错,所以区块链的共识算法必然是BFT算法。终局性性能:指区块链网络对一个候选区块完成终局一致性所需要的时间,这对于面向用户的DApp应用是非常重要的参数。扩展性:指随着区块链网络节点数目与共识算法性能的相关关系,比如PBFT算法随着节点数目增加,完成一轮共识需要在网络中传播的消息数目呈平方比例增加,因此PBFT算法的天然特性无法支持大规模网络。共识算法的网络模型性能对其容错性能和终局性能都有很大的影响。在区块链大规模网络条件下,同步共识算法要求所有节点在规定时间内响应对其他节点的消息,否则将被认为是故障节点,因此受网络波动影响较大,从而进一步导致算法容错性能的降低;而由于FLP不可能定理,异步共识算法无法给出确定的终局性性能,所以当前主流区块链共识算法都是基于半同步模型。02当前主流的共识算法

声音 | ETCLabs主管:对于公链 PoW是最好的共识算法:ETCLabs主管Darin Kotalik认为,不管PoW还是PoS,不同的共识没有高低之分,重点在于你想要解决什么样的问题。对于公链,PoW是最好的共识算法,毕竟它已经在比特币上运行了10年,得到了验证。DPoS中心化程度比较高,可能相对来说危险一些。[2019/8/25]

在区块链发展初期,主流区块链网络都是基于PoW共识算法,包括Bitcoin,Ethereum,Litecoin,Zcash等。由于PoW存在挖矿的资源浪费问题,2017年后基于PoS的共识算法研究得到了迅猛的发展,并在2018年各种基于PoS共识算法的公有链都逐步上线。对于当前主流共识算法可以采用如下几种方式分类:基于挖矿方式分类:1)PoW:所有节点通过解决某个计算难题参与共识。包括:Bitcoin,Ethereum,Litecoin2)PoS:所有节点通过质押代币的方式参与共识。包括:Ethereum-PoS,Tendermint,Algorand,EOSDPoS,DFINITY,VBFT基于终局性分类:1)GHOST:PoW,Ethereum-PoS2)BFT:Tendermint,EOSDPoS,Algorand,DFINITY,VBFT基于节点选择方式:1)所有节点参与:PoW,EthereumPoS,Tendermint2)随机选择部分节点参与:Algorand,Dfinity,VBFT

声音 | Ripple首席技术官:XRP Ledger的共识算法更适合交叉货币系统:据ambcrypto报道,Ripple公司首席技术官David Schwartz表示,XRP Ledger首先建立了“联邦拜占庭协议模型”,与BTC的工作量证明(PoW)有很大不同,前者适合于交叉加密货币系统。由于交易成本、交易速度和可扩展性等因素,XRP Ledger比BTC的区块链优越。XRP Ledger可以在不到4秒的时间内处理一笔交易,而BTC需要几分钟到几个小时才能完成一笔交易。[2019/3/24]

Table1:主流共识算法比较从上述的分类过程中,我们可以看出当前区块链共识算法在性能、扩展性、去中心化等方向上的演进过程。在Bitcoin创建了区块链技术时,创建了PoW共识算法,通过计算哈希难题和最长链规则,实现去中心化的共识算法。随着Bitcoin网络规模的增大,后续区块在网络中传播延迟的增加,基于最长链规则造成了大量伪分叉,极大的浪费了网络中的算力和PoW共识算法的性能。针对于伪分叉的问题,区块链社区后续提出了通过DAG方式扩展PoW共识算法,比如PHANTOM,Conflux等。但是针对于PoW的算力浪费的问题,区块链社区后续更多转向了基于PoS的共识算法。Ethereum也计划逐渐减少PoW激励,直至最终完全取消对PoW的共识激励,完成到PoS共识算法的切换。同时,也有大多数新兴区块链平台都采用了PoS的共识方式,其中最著名为EOS的DPoS共识算法。与此同时,随着区块链应用的增加,区块链共识算法的扩展性问题也日益凸显。图灵奖获得者Micali教授提出了Algorand算法,提出基于VRF随机选择部分节点参与共识的方式,通过BFT的方式极大降低了共识算法的消息复杂度,在保证去中心化安全性的同时实现共识算法的可扩展性。在此基础之上,VBFT等共识算法增加了基于PoS治理机制,并基于此解决了随机节点选择的抽样陷阱问题,在保证算法扩展性的同时实现优秀的终局性性能。混合共识算法也值得介绍,由于单一共识算法由于其本身具有的局限性,例如PoW共识速度偏慢等,区块链研究者尝试将两种或者多种共识算法融合起来,取长补短,来达到更好的共识特性。一般来说,混合共识有PoW+PoS,PoW+BFT以及PoS+BFT等种类。可以看到新一代的共识算法,比如Algorand,DFINITY,BUMO的BUFirework以及Ontology的VBFT,都属于混合共识算法。03共识算法的发展趋势

动态 | YEE公链共识算法Tetris论文正式被arXiv学术平台收录:YEE公链共识算法Tetris论文已于今日通过审核,正式被arXiv收录。arXiv是一家具有全球影响力的专门收录物理学、数学、计算机科学与生物学等学科论文的学术网站。Tetris共识算法论文从数学理论角度详细论证了YEE公链全新共识算法。YEE团队将以arXiv收录为契机,邀请全球顶尖科学家共同探讨Tetris共识算法。[2018/11/22]

总体来看,目前主流共识算法逐渐由PoW转向PoS共识算法,并且采用VRF随机选择节点的方式实现算法的扩展性,即使Ethereum后续的宁静版本,也将是基于PoS的共识算法,并在其信标链中实现VRF随机选择验证者节点。另外,Avalanche共识算法也是采用随机选择节点的方式实现区块链共识算法的扩展性,不过目前还没有上线的区块链采用此共识算法。随着区块链社区对区块链共识算法的研究,技术社区已经发现在Internet规模的网络中可达到的性能上限不仅取决于共识算法的性能参数,更取决于在此规模的网络中完成消息传播的时间延迟等物理上限。因此,主流区块链的研究团队都将下一步区块链网络性能扩展方向投向了分片技术、状态通道和二层网络等方向。

声音 | 左鹏:区块链大规模应用的障碍是缺乏可商用的共识算法:据洞察网报道,金丘区块链CEO左鹏近日表示, 区块链大规模的应用目前主要的技术障碍是缺乏一个可商用的共识算法。在不可能三角形中:比特币Security最安全,但是POW算法对于全球电力能源消耗严重,2017年消耗电力30.27TWH相当于4个核电厂;以太坊是去中心化较好的,但是性能较低,且智能合约还很雏形;EOS以牺牲去中心化的方式追求高TPS背离区块链本质。[2018/9/30]

VBFT共识算法7节点测试TPS达5300 公链中较高:开源中国技术社区发布Ontology VBFT共识算法性能测试报告。报告显示,在没有加入分片、并行处理和FPGA硬件加速的前提下,使用7个节点测试,TPS达到了5300以上,在公链中处于较高水准。[2018/6/14]

标签:区块链POWBFTPOS有人靠区块链4天就挣了30万吗Power LedgerBFT价格cpos币在哪个交易所

以太坊价格今日行情热门资讯
区块链:星球日报 | 比特大陆回应“吴忌寒创办新公司”系谣言;蚂蚁金服区块链公司落地上海;平安壹账通预计下半年赴港IPO

头条世界黄金协会报告:比特币不足以成为黄金替代品,加密货币不适合作为避险资产近日,世界黄金协会发布了一份报告,调查了2018年所有主要市场的情况,其中包括黄金和加密货币.

1900/1/1 0:00:00
区块链:摩根大通推出“摩根币“,支持旗下支付业务

译者|秦晓峰编辑|卢晓明据CNBC2月14日报道,美国银行巨头摩根大通在美国银行业率先推出了自己的加密货币——JPMCoin,用于支持客户的即时支付业务.

1900/1/1 0:00:00
HER:波场“联姻”Tether ,互补短板

编者按:本文来自蜂巢财经News,作者武旭升,Odaily星球日报经授权转载。3月5日凌晨,波场创始人孙宇晨在推特上宣布,TRON基金会与稳定币USDT的母公司Tether达成合作,USDT将于.

1900/1/1 0:00:00
ODA:?决战丰水期:大批矿工迁往云贵川

四川大山深处的条条江河已经波涛涌动,再过3个月,它们迎来丰水期,水电成本将不超过两毛。王胜利早就算好了时间,此刻他已经动身,要在四川丰水期水电到来之前,抢得属于自己的一块地盘。他是比特币矿工.

1900/1/1 0:00:00
GRIN:Grin爆红:一场密码朋克的复兴,一次自发性的炒作

编者按:本文来自链捕手,作者:胡韬,编辑:龚荃宇,Odaily星球日报经授权转载。在经历长时间的萎靡不振、消沉疲软后,区块链行业在19年之初终于迎来了兼具话题性与创新性的新项目是Beam和Gri.

1900/1/1 0:00:00
ADR:“加拿大门头沟”案出现剧情反转,调查显示Quadrigacx使用过多重签名技术

上述声明并没有将没找到QuadrigaCX冷钱包的私钥,归因于GerryCotten的过世,但这一点在同一天晚些时候GerryCotten的遗孀JenniferRobertson的宣誓书中有所说.

1900/1/1 0:00:00