- N +

猎犬币数字币区块链共识算法的发展现状与展

猎犬币数字币区块链共识算法的发展现状与展望

  链技术的核心要素共识算法是区块,理和讨论了区块链发展过程中的 32 种重要共识算法也是近年来分布式系统研究的热点▽△. 本文系统性地梳,式共识领域的里程碑式的重要研究和结论介绍了传统分布式一致性算法以及分布-●,一种基础模型和分类方法提出了区块链共识算法的,发展脉络和若干性能指标并总结了现有共识算法的,和区块链技术的发展提供参考以期为未来共识算法的创新★□◁.

  算机科学等领域的经典问题共识问题是社会科学和计=◇,的文献至少可以追溯到 1959 年已经有很长的研究历史. 目前有记载■★,的“Consensus of subjective probabilities▼▼: the Pari-Mutuel method兰德公司和布朗大学的埃德蒙· 艾森伯格 (Edmund Eisenberg) 和大卫· 盖尔 (David Gale) 发表△●■,个特定的概率空间主要研究针对某▪▼△,主观的概率分布时一组个体各自有其,布的问题[1]. 随后如何形成一个共识概率分=◆△,、 特别是计算机科学等各学科领域的广泛研究兴趣共识问题逐渐引起了社会学、 管理学=▽、 经济学.

  研究一般聚焦于分布式一致性计算机科学领域的早期共识,完全相同并且能够对某个提案达成一致的问题即如何保证分布式系统集群中所有节点的数据,onsistency) 在很多文献和应用场景中被认为是近似等价和可互换使用的是分布式计算的根本问题之一. 虽然共识(Consensus) 和一致性 (C,侧重于分布式节点达成一致的过程及其算法但二者涵义存在着细微的差别: 共识研究,共识过程最终达成的稳定状态而一致性研究则侧重于节点●◁□;外此☆▽☆,多不考虑拜占庭容错问题传统分布式一致性研究大■□,和伪造数据的拜占庭节点即假设不存在恶意篡改,一段时间里因此在很长◁•,有限且相对可信的分布式数据库环境. 与之相比传统分布式一致性算法的应用场景大多是节点数量,为复杂、开放和缺乏信任的互联网环境下区块链系统的共识算法则必须运行于更★◆,恶意拜占庭节点◇=. 因此节点数量更多且可能存在,)和 Paxos 等许多分布式一致性算法早在上世纪 80年代就已经提出即使 Viewstamped replication(以下简称 VR■○,-●▪、 设计简便易行的分布式共识算法但是如何跨越拜占庭容错这道鸿沟,算领域的难题之一仍然是分布式计●☆.

  0 月 31 日2008 年 1,n: a peer-to-peer electronic cash system[2]一位化名为“ 中本聪 的研究者在密码学邮件组中发表了比特币的奠基性论文□▼◇“ Bitcoi,此拉开序幕★★☆. 从分布式计算和共识的角度来看基于区块链 (特别是公有链) 的共识研究自,一类实用的、 互联网规模的拜占庭容错算法比特币的根本性贡献在于首次实现和验证了,块链新时代的大门从而打开了通往区.

  而言一般,自治性、 开放可自由进出等特性区块链系统的节点具有分布式、 ▷○▲,r-to-peer network因而大多采用对等式网络 (Pee□•,P 网络中的每个节点均地位对等且以扁平式拓扑结构相互连通和交互P2P 网络) 来组织散布全球的参与数据验证和记账的节点●●▲.P2,特殊节点和层级结构不存在任何中心化的=•◁,系统采用特定的经济激励机制来保证分布式系统中所有节点均有动机参与数据区块的生成和验证过程每个节点均会承担网络路由◇◁、 验证区块数据、 传播区块数据、 发现新节点等功能•…. 区块链,共识过程所产生的数字加密货币按照节点实际完成的工作量分配,链•=◇. 以比特币为代表的一系列区块链应用的蓬勃发展并通过共识算法来选择特定的节点将新区块添加到区块,的重要性与应用价值彰显了区块链技术,的研究热点 [3][4][5]区块链系统的共识也成为一个新.

  为止迄今,领域做了大量研究工作研究者已经在共识相关,算机学科通常称为共识算法或者共识协议不同领域研究者的侧重点也各不相同.计,为共识机制◇▽◁. 细究之下管理和经济学科则通常称,组顺序敏感的指令集且有明确的输入和输出这些提法存在细微的差异: 算法一般是一;敏感的规则集. 就区块链领域而言而协议和机制则大多是一组顺序不,等可认为是底层协议或机制本文认为比特币和以太坊◁•-,规则▼●△、 区块构造规则、 交易验证规则、 账本维护规则等集合其详细规定了系统或平台内部的节点交互规则、数据路由和转发;oof-ofWork而工作量证明 (Pr,roof-of-StakePoW)■▽▪、 权益证明 (P,或机制基础上▼▽、 可灵活切换的算法PoS) 等则是建立在特定协议◇■▼,播与验证、 主链选择与更新等若干类顺序敏感的指令集合-=. 因此其规定了交易侦听与打包、 构造区块、 记账人选举、 区块传★=,用共识算法的提法本文后续叙述均采▷☆.

  以分为算法共识和决策共识两个分支现有文献研究的共识问题实际上可,网络模型和故障模型前提下前者致力于研究在特定的,的分布式网络中确保一致性如何在缺乏中央控制和协调,“ 机器共识其实质是一种;究无中心的群体决策中后者则更为广泛地研,策达成一致的问题如何就最优的决,问题和分叉问题的社区讨论与路线选择例如关于比特币系统扩容 [6] ,别在于: 前者是机器间的确定性共识其实质是“ 人的共识=◁□. 二者的区,杂性为主以工程复;theloop) 的复杂系统为特点的不确定性共识而后者则是以“ 人在环路中 (Human-in-,算法研究应属于算法共识分支的子集以社会复杂性为主. 区块链共识◇▲,工智能□★、 多智能体等研究领域而决策共识则大多见于分布式人.

  分布式共识的基础拜占庭将军问题是…●,占庭将军问题有两个交互一致性条件也是上述两个研究分支的根源. 拜, 由于大多数情况下即一致性和正确性.,的主观价值判断正确性涉及到人,分布式节点上很难施加到,Degraded correctness)因此算法共识采用的是“ 降级的正确性 (,的 降级为…△□“ 正确地表达即从“ 表达的内容是正确●-,共识实际上是一种机器共识这就导致区块链的拜占庭◆▷,表达 (不篡改消息)•◁. 与之相对的是其本身等价于分布式一致性 + 正确,认为是人的共识决策共识可以,求一致性不仅要☆▼△,“ 表达的内容是正确的而且要求所有节点相信,求内容的客观一致性因而决策共识不仅要,的主观正确性. 由此可见而且还要求其在共识节点间,是客观的二值共识算法共识处理的, 和错 (所有错误的账本)即对 (唯一正确的账本),是主观的多值共识而决策共识处理的,所属群体)、……、 意见 N(及其所属群体)即意见 1(及其所属群体)▪◆●、 意见 2(及其,协作过程收敛到唯一意见(共识)各节点最终通过群体间的协调和,败 (不收敛)而此过程可能失▽□◆.

  论区块链发展过程中的共识算法本文致力于按时间顺序梳理和讨,节安排如下■…: 首先简要介绍了分布式共识领域重要的里程碑式的研究和结论以期为未来共识算法的创新和区块链技术的发展提供参考. 本文的后续章,问题和FLP 不可能定理包括两军问题、 拜占庭△▲,分布式一致性算法并介绍了传统的;的一种基础模型和分类方法然后提出了区块链共识算法,链共识算法进行了分析并对当前主流的区块;算法的发展和研究趋势最后总结了区块链共识▪○◇.

  5 年197□-◆,traints and tradeofis in the design of network communications 中首次提出了计算机领域的两军问题及其无解性证明 [7]纽约州立大学石溪分校的阿克云卢(E•◁. A△◇▷. Akkoyunlu)、 埃卡纳德汉姆 (K. Ekanadham) 和胡贝尔 (R. V. Huber) 在论文“ Some cons●…,命名为“ 两军问题[8]△★△. 两军问题表明著名的数据库专家吉姆· 格雷正式将该问题,过通信达成一致共识是不可能的在不可靠的通信链路上试图通□▪▷,题. 两军问题对计算机通信研究产生了重要的影响这被认为是计算机通信研究中第一个被证明无解的问▲…★,为解决两军问题不存理论解而诞生的简单易行•◆▼、猎犬币数字币 成本可控的“ 工程解互联网时代最重要的TCP/IP 协议中的“ 三次握手 过程即是.

  斯塔克(Robert Shostak) 和莱斯利· 兰伯特 (Leslie Lamport) 提出 [9]分布式计算领域的共识问题于 1980 年由马歇尔· 皮斯 (Marshall Pease)、 罗伯特· 肖▽◆…, 通过点对点消息通信的独立处理器网络中该问题主要研究在一组可能存在故障节点◁▼▲、△…,值达成一致共识▼•.1982年非故障节点如何能够针对特定▲△…,命名为“ 拜占庭将军问题[10]作者在另一篇文章中正式将该问题,解决该问题. 拜占庭假设是对现实世界的模型化提出了基于口头消息和基于签名消息的两种算法来,络拥塞或断开以及遭到恶意攻击强调的是由于硬件错误=◇◁、 网,不可预料的行为▷•★. 此后计算机和网络可能出现的★▷,法可以分为两类分布式共识算, 早期共识算法一般为非拜占庭容错算法即拜占庭容错和非拜占庭容错类共识.,库的 VR 和 Paxos例如广泛应用于分布式数据■□•,联盟链和私有链目前主要应用于;8 年末200,有链诞生后比特币等公,获得实际应用●●. 需要说明的是拜占庭容错类共识算法才逐渐◇=•,链技术核心思想的根源拜占庭将军问题是区块□◇,共识算法的设计和实现直接影响着区块链系统,体系中具有重要意义因而在区块链技术.

  5 年198,文•◁◆“ Impossibility of distributed consensus with one faulty process[11]. 这篇文章证明: 在含有多个确定性进程的异步系统中迈克尔· 费舍尔 (Michael Fisher)、南 希 · 林 奇 (Nancy Lynch) 和 迈 克 尔 ·帕 特 森 (Michael Paterson) 共 同 发 表 了 论-▽▪,程可能发生故障只要有一个进,有进程达成一致○=•. 按照作者姓氏的首字母那么就不存在协议能保证有限时间内使所★-,FLP 不可能定理该定理被命名为 ,域的经典结论之一是分布式系统领,指出了存在故障进程的异步系统的共识问题不存在有限时间的理论解并由此获得了 Dijkstra 奖.FLP 不可能定理同样,的“ 工程解. 为此因而必须寻找其可行■▷,型来规避FLP 不可能定理研究者们只能通过调整问题模◁◁,、 增加时间等例如牺牲确定性;步性) 和时间假设来规避 FLP 不可能性加密货币则是通过设定网络同步性 (或弱同★=,可以快速同步例如网络节点,入有限时间和资源等且矿工在最优链上投.

  算法.与目前主流的区块链共识算法相比早期的共识算法一般也称为分布式一致性,库操作○-、 且大多不考虑拜占庭容错问题分布式一致性算法主要面向分布式数据△▼,机和网络故障等非人为问题即假设系统节点只发生宕…□▪,据等问题.1988 年而不考虑恶意节点篡改数○▽-, 和芭芭拉· 里斯科夫 (Barbara H. Liskov麻省理工学院的布莱恩· 奥奇 (Brian M. Oki),灵奖得主) 提出了 VR一致性算法著名计算机专家◇▪-、 2008 年图▼★▼,mary-backup) 模式采用主机 - 备份 (Pri◆▽,都必须通过主机进行规定所有数据操作,致性 [12].1989 年然后复制到各备份机器以保证一,e part-time parliament 中提出 Paxos 算法莱斯利· 兰伯特 (Leslie Lamport) 在工作论文▼•“ Th△▪,事风格且内容过于艰深晦涩由于文章采用了讲故事的叙•▼,mputer systems 期刊上 [13].Paxos 是基于消息传递的一致性算法直到 1998 年才通过评审、 发表在 ACM transactions on co◁◆,一致的问题◇▪▲. 随着分布式共识研究的深入主要解决分布式系统如何就某个特定值达成,学术界和工业界的广泛认可Paxos 算法获得了,、Byzantine paxos 和 Disk paxos 等变种算法并衍生出 Abstract paxos、 Classic paxos,要的算法家族 [14].实际上成为解决异步系统共识问题最重,上也是一类Paxos 算法□-. 需要说明的是Liskove 等提出的 VR 算法本质,假设系统中不存在拜占庭故障节点VR 和 Paxos 算法均,算法. 除以上共识算法外因而是非拜占庭容错的共识•☆,段提交 (Three-phase commit)算法◁▽★、 Zab、 Zyzzyva、Kafka 等获得较多研究关注的早期共识算法还有两阶段提交 (Two-phase commit) 算法▽▽○、 三阶-▷▼,幅不加详述本文限于篇.

  3 年199■-,thia Dwork) 首次提出了工作量证明思想 [15]美国计算机科学家、 哈佛大学教授辛西娅· 德沃克 (Cyn,某个数学难题的答案来证明其确实执行了一定程度的计算工作用来解决垃圾邮件问题△…. 该机制要求邮件发送者必须算出,者的成本.1997 年从而提高垃圾邮件发送,哈希现金 (Hash cash) 的工作量证明机制 [16]■•. 哈希现金也是致力于解决垃圾邮件问题英国密码学家亚当·伯克 (Adam Back) 也独立地提出★□、 并于 2002 年正式发表了用于☆▪,日期在内的特定数据的 SHA-1 哈希值其数学难题是寻找包含邮件接受者地址和当前,前导零★▷.1999 年使其至少包含20 个,量证明 概念 [17]. 这些工作为后来中本聪设计比特币的共识机制奠定了基础马库斯· 雅各布松 (Markus Jakobsson) 正式提出了☆□▪“ 工作.

  0 年200,的特邀报告中提出了一个猜想: 分布式系统无法同时满足一致性 (Consistency)、 可用性(Availability) 和分区容错性 (Partition tolerance)加利福尼亚大学的埃里克· 布鲁尔(Eric Brewer) 教授在 ACM symposium on principles of distributed computing 研讨会,其中两个-▲. 其中最多只能同时满足,数据备份在同一时刻保持同样的值一致性是指分布式系统中的所有•○▲;部分节点出现故障时可用性是指集群中,理客户端的更新请求集群整体是否还能处;是否允许数据分区分区容忍性则是指,法互相通信.2002 年不同分区的集群节点之间无★●,奇 (Nancy Lynch) 在异步网络模型中证明了这个猜想塞斯· 吉尔伯特 (Seth Gilbert) 和南希· 林,使得分布式网络研究者不再追求同时满足三个特性的完美设计使其成为 CAP 定理或布鲁尔定理 [19]▼◇…. 该定理,其中做出取舍而是不得不在●◇,结构设计带来了影响和限制这也为后来的区块链体系.

  年 10 月2008 ○△○,文所提到的传统分布式一致性算法大多应用于相对可信的联盟链和私有链中本聪发表的比特币创世论文催生了基于区块链的共识算法研究■▪◇. 前,oW★□▽、 PoS 等一系列新的拜占庭容错类共识算法而面向比特币★▷▪、 以太坊等公有链环境则诞生了 P•★●.

  保证比特币网络分布式记账的一致性比特币采用了 PoW 共识算法来-•,特币系统的各节点 (即矿工) 基于各自的计算机算力相互竞争来共同解决一个求解复杂但是验证容易的 SHA256 数学难题 (即挖矿)这也是最早和迄今为止最安全可靠的公有链共识算法.PoW 的核心思想是通过分布式节点的算力竞争来保证数据的一致性和共识的安全性. 比◇•☆,成的比特币奖励.PoW 共识在比特币中的应用具有重要意义最快解决该难题的节点将获得下一区块的记账权和系统自动生,货币发行、 流通和市场交换等功能其近乎完美地整合了比特币系统的,性和去中心性. 然而并保障了系统的安全,存在着显著的缺陷PoW 共识同时=☆▽,要是电力消耗) 历来为人们所诟病其强大算力造成的资源浪费 (主,其相对不适合小额交易的商业应用.[3而且长达 10 分钟的交易确认时间使]

  年 7 月2011 ,者 在 比 特币 论 坛(首次提出了权益证明 PoS共识算法 [20]. 随后一 位 名 为 Quantum Mechanic 的 数 字 货 币 爱 好 , 8 月发布的点点币 (PeercoinSunny King 在 2012 年,具有最高权益而非最高算力的节点获得记账权PPC) 中首次实现.PoS 由系统中,特定数量货币的所有权其中权益体现为节点对,PC 将PoW 和 PoS两种共识算法结合起来称为币龄或币天数 (Coin days).P, Token 相对公平地分配给矿工初期采用 PoW 挖矿方式以使得,矿难度增加后期随着挖, 一定程度上解决了 PoW 算力浪费的问题系统将主要由 PoS 共识算法维护.PoS•☆,成共识的时间并能够缩短达▽•,币都采用 PoS 共识算法因而比特币之后的许多竞争▽○•.

  年 8 月2013 ,) 项目提出了一种新的共识算法比特股 (Bitshares☆…,ted Proof-of-Stake即授权股份证明算法 (Delega▷★,识的基本思路类似于“ 董事会决策DPoS)[22].DPoS 共,的股份权益作为选票授予一个代表即系统中每个节点可以将其持有,前 N 个节点将进入“ 董事会获得票数最多且愿意成为代表的,如果说 PoW 和 PoS 共识分别是■★▷“ 算力为王 和▽-◆“ 权益为王 的记账方式的话按照既定的时间表轮流对交易进行打包结算★☆=、 并且签署 (即生产) 新区块 [3]. , 民主集中式 的记账方式DPoS 则可以认为是“▼-,和联合挖矿对系统的去中心化构成威胁的问题其不仅能够很好地解决 PoW 浪费能源,益的参与者未必希望参与记账的缺点也能够弥补PoS 中拥有记账权, 最高效、最去中心化和最灵活的共识算法其设计者认为 DPoS 是当时最快速、□=★.

  和区块链技术的发展随着比特币的普及▲★…,使读者更为深刻地理解不同的共识算法越来越多的新共识算法被提出. 为,个主流模型. 需要说明的是本节给出区块链共识过程的一,非通用模型该模型并…▼,有种类的共识过程可能无法涵盖所,流共识算法的核心思想但是可以体现大多数主.

   P2P 网络之上区块链系统建立在,集合可记为 P其全体节点的,或者交易的普通节点一般分为生产数据, 更新上链等挖矿操作的-●“ 矿工 节点集合 (记为 M)以及负责对普通节点生成的数据或者交易进行验证、 打包▼▽★、◁=▷,能会有交集两类节点可;全体参与共识竞争过程矿工节点通常情况下会▲★☆,•-△、 代替他们参加共识过程并竞争记账权在特定算法中也会选举特定的代表节点,的集合记为 D这些代表节点; A. 共识过程按照轮次重复执行通过共识过程选定的记账节点记为◁-•,新选择该轮的记账节点每一轮共识过程一般重◇●.

  主 和“ 记账 两部分共识过程的核心是“ 选◁◇,eration)、 验证 (Data validation) 和上链 (Chain updation在具体操作过程中每一轮可以分为选主 (Leader election)、 造块 (Block gen▲★=,段●●.如图 1 所示即记账) 四个阶,生成和验证后的交易或数据共识过程的输入是数据节点…▲◇,后的区块链. 四个阶段循环往复执行输出则是封装好的数据区块以及更新,生成一个新区块每执行一轮将会.

  选主是共识过程的核心第一阶段•-: 选主●•. , A 的过程◆◇-:我们可以使用公式 f(M)即从全体矿工节点集 M 中选出记账节点!示选主过程A 来表,的具体实现方式◇■▼. 一般来说其中函数 f 代表共识算法,j=1jA,的矿工节点来记账即最终选择唯一.

  当前时间段内全体节点 P 生成的交易或者数据打包到一个区块中第二阶段: 造块…○. 第一阶段选出的记账节点根据特定的策略将▼▼,者数据通常根据区块容量▷▲、 交易费用、 交易等待时间等多种因素综合排序后并将生成的新区块广播给全体矿工节点 M 或其代表节点 D. 这些交易或,略是区块链系统性能的关键因素依序打包进新区块. 造块策,矿等矿工策略性行为的集中体现也是贪婪交易打包、 自私挖.

  或者代表节点 D收到广播的新区块后第三阶段: 验证. 矿工节点 M ▽△,理性-◆•. 如果新区块获得大多数验证/代表节点的认可将各自验证区块内封装的交易或者数据的正确性和合,一区块更新到区块链则该区块将作为下▷•◇.

  账节点将新区块添加到主链第四阶段: 上链. 记, 更长的链条. 如果主链存在多个分叉链形成一条从创世区块到最新区块的完整的•▷□、□▪◆,规定的主链判别标准则需根据共识算法◁•▲,当的分支作为主链来选择其中一条恰☆▽◇.

  方式和一致性程度等多个维度加以分类. 例如区块链共识算法可以根据其容错类型、 部署,错类型根据容●●,占庭容错和非拜占庭容错两类可以将区块链共识算法分为拜;署方式根据部,识•=、 联盟链共识和私有链共识三类可以将区块链共识算法分为公有链共;致性程度根据一,性共识等. 本文提出一种按照共识过程的选主策略的新分类方法还可以将区块链共识算法分为强一致性共识和弱 (最终) 一致,法的核心机理■•. 具体来说其优点在于便于刻画共识算,算法分为选举类、 证明类=★▲、 随机类、 联盟类和混合类共五种类型可根据选主策略 (即函数 f 的具体实现方式) 将区块链共识△○:

  过“ 投票选举 的方式选出当前轮次的记账节点选举类共识: 即矿工节点在每一轮共识过程中通,矿工节点将会获得记账权首先获得半数以上选票的;布式一致性算法多见于传统分◆◁○, 和 Raft等例如 Paxos.

  Proof of X 类共识证明类共识: 也可称为“ ,必须证明自己具有某种特定的能力即矿工节点在每一轮共识过程中▽▷,某项难以解决但易于验证的任务证明方式通常是竞争性地完成☆▷▪,工节点将获得记账权在竞争中胜出的矿▪★;于矿工的算力或者权益来完成随机数搜索任务例如 PoW 和 PoS 等共识算法是基,争记账权以此竞.

  随机方式直接确定每一轮的记账节点随机类共识◇•…: 即矿工节点根据某种•☆△,联盟类共识: 即矿工节点基于某种特定方式首先选举出一组代表节点例如下文将要提到的Algorand 和 PoET 共识算法等.,账权=•. 这是一种以“ 代议制 为特点的共识算法而后由代表节点以轮流或者选举的方式依次取得记,PoS 等例如 D★…☆.

  种共识算法的混合体来选择记账节点混合类共识: 即矿工节点采取多,识、 DPoS+BFT 共识等例如 PoW+PoS 混合共.

  14 年起自 20,技术快速进入公众视野随着比特币和区块链□◁☆,并研究区块链技术许多学者开始关注,共识算法在这段时间被提出○★. 它们或者是原有算法的简单变种共识算法也因此进入快速发展、 百花齐放的时期. 许多新,面性能而做出的微创新或者是为改进某一方,重大改进的新算法. 需要说明的是或者是为适应新场景和新需求而做出,由于提出时间晚这些共识算法,令人信服的实践验证目前大多尚未获得,是科研设想有些甚至只•★;有明显的创新之处但这些算法均具▽◇,规模应用的前景具有一定的大▲◆◇,出来以飨读者因此我们写,后续的创新研究并期待能够启发.

   PoS 算法的有机结合研究者基于 PoW 和▪…▽,of of Stake Velocity相继提出了权益 - 速度证明 (Pro◇◆, (Proof of BurnPoSV)[25]▲…、 燃烧证明,roof of ActivityPoB)[26]、 行动证明(P,2-hop)[28]共识算法PoA)[27] 和二跳 (□□▲,在的能源消耗与安全风险问题◆△▪.2014 年 4 月致力于取长补短…▽、 解决 PoW 与 PoS 存,eddcoin 白皮书中提出了 PoSV 共识算法拉里· 雷恩 (Larry Ren) 在蜗牛币 R-•◆,的线性函数这一问题进行改进针对 PoS 中币龄是时间, 算法前期使用 PoW 实现代币分配致力于消除持币人的屯币现象▽-.PoSV★◇◁, PoS中币龄和时间的线性函数修改为指数式衰减函数后期使用 PoSV 维护网络长期安全▲★.PoSV 将…=,◇◆. 因此新币的币龄比老币增长地更快即币龄的增长率随时间减少最后趋于零□■•,上限阈值直到达到,月发行的 Slimcoin 借鉴了比特币和点点币的设计这在一定程度上缓和了持币者的屯币现象◆☆◁.2014 年 5,提出了 PoB 共识算法. 其中基于 PoW 和 PoS 首创,产生初始的代币供应PoW 共识被用来,间增长随着时,了足够的代币时区块链网络累积,有的 Slimcoin 发送至特定的无法找回的地址 (燃烧) 来竞争新区块的记账权系统将依赖 PoB 和 PoS 共识来共同维护.PoB 共识的特色是矿工通过将其持▪▼,2 月提出的 PoA 共识也是基于 PoW 和 PoS燃烧的币越多则挖到新区块的概率越高■◆.2014 年 1,以抽奖的方式分发给所有活跃节点其中采用 PoW挖出的部分代币,正比□…. 二跳共识于 2017 年 4 月提出而节点拥有的权益与抽奖券的数量即抽中概率成,潜在的 51% 算力攻击问题其设计初衷是为解决 PoW ,的基础上引入 PoS 权益解决思路是在 PoW 算力,资源 (算力+权益) 的基础上. 换句话说使得区块链安全建立在诚实节点占有大多数联合,以上的算力和 51% 以上的权益拜占庭节点必须同时控制 51% , 51% 攻击才能成功实施,了区块链的安全性这无疑极大地提高◇☆◆.

   有 的 “ 无 利 害 关 系 (Nothing at stake) 问 题原 生 PoS 共 识 算 法 的 改 进 目 标 主 要是 解 决 其 固,os[32] 和Honeybadger[33] 等新共识算法. 原生 PoS 共识一般假设系统中的对等节点都是静态和长期稳定的形 成 了 Tendermint[29] 以 及 由 其衍生出的Casper[30]◁▪、 Ouroboros[31]、 Tez, 的重大突破是使用区块、 哈希链接=★、 动态验证器集合和循环的领导者选举这在区块链环境中并不现实▪◆. 2014 年提出的 Tendermint,S 共识算法□…. 为解决无利害关系问题实现了第一个基于PBFT 的 Po, 节点需要缴纳保证金Tendermint,ermint 是一种拜占庭容错的共识算法如果作恶则保证金就会被没收. Tend,攻击的鲁棒性具有抵御双花,三分之一的破坏者的攻击并且可以抵御网络中至多.

  r 共识是首个实用的异步拜占庭容错共识协议2016 年提出的 HoneyBadge,veness). 该共识基于一种可实现渐进有效性的原子广播协议可以在没有任何网络时间假设的前提下保证区块链系统的活性 (Li◇•,uroboros 共识是首个基于 PoS 并且具有严格安全性保障的区块链协议能够在广域网的上百个节点上处理每秒上万笔交易.2017 年 8 月提出的 O,机制来驱动 PoS共识过程其特色是提出了一种新的奖励,构成一个近似纳什均衡使得诚实节点的行为▲…-,由于矿工的策略性行为而导致的安全攻击可以有效地抵御区块截留和自私挖矿等◁◇△.

  特币扩容或者降低其能耗.2016 年 3 月原生 PoW 共识算法的改进目标主要是实现比,一种新的共识算法 BitcoinNG[36]康奈尔大学的 Ittay Eyal 等提出,同的区块: 用于选举领导者的关键区块和包含交易数据的微区块•□=. 关键区块采用比特币 PoW 共识算法生成将时间切分为不同的时间段○□. 在每一个时间段上由一个领导者负责生成区块▲•、 打包交易. 该协议引入了两种不,itcoinNG 可在不改变区块容量的基础上通过选举领导者生成更多的区块然后领导者被允许小于预设阈值的速率 (例如 10 秒) 来生成微区块.B,共识算法借鉴了Bitcoin-NG 这种领导者选举和交易验证相互独立的设计思想从而可辅助解决比特币的扩容问题. 同年 8 月提出的 ByzCoin[37] ☆=,展拜占庭容错算法是一种新型的可扩,保持强一致性的同时可使得区块链系统在•□-,的 Elastico[38] 共识机制通过分片技术来增强区块链的扩展性达到超出 Paypal 吞吐量的高性能和低确认延迟.2016 年提出,方式隔离为多个分片 (Shard)其思路是将挖矿网络以可证明安全的,co 是第一个拜占庭容错的安全分片协议□▽◇.2017 年这些分片并行地处理互不相交的交易集合.Elasti◆▷,ByzCoin 和 Elastico 共识OmniLedger[39] 进一步借鉴 ●••,niLedger 通过并行跨分片交易处理优化区块链性能设计并提出名为ByzCoinX 的拜占庭容错协议.Om▪◇-,长期安全性和去中心性的分布式账本架构是第一种能够提供水平扩展性而不必牺牲.

  的效率 (能耗) 和公平性为改进 PoW 共识算法△●, 明 (Proof of Elapsed Time研 究 者 相 继 提 出 了 消 逝时 间 证□☆…, 明 (Proof of LuckPoET)[40] 和 运 气 证,境 (Trusted execution environmentsPoL)[41].PoET 和 PoL 均是基于特定的可信执行环•-◆,EET,级账本 HyperLedger 的锯齿湖 Sawtooth 项目采用的共识算法例如基于 Intel SGX 技术的 CPU) 的随机共识算法◇△.PoET 是超,据预定义的概率分布生成一个随机数其基本思路是每个区块链节点都根,间-◁. 每当一个新区块提交到区块链系统后来决定其距离下一次获得记账权的等待时○▽…,块、 生成该等待时间的证明SGX 即可帮助节点创建区,义在于使得区块链系统不必消耗昂贵算力来挖矿、 从而提高了效率而这种证明易于被其他 SGX 节点验证.PoET 共识的意,U 一票 的公平性●◇▷. 类似地同时也真正实现了“ 一 CP,生成器来选择每一轮共识的领导者 (记账人)PoL 共识也采用 TEE 平台的随机数, 实现可忽略的能源消耗和真正公平的分布式挖矿从而可降低交易验证延迟时间和交易确认时间□■=、…◁○.

  大多是非拜占庭容错的传统分布式一致性算法●=, (特别是公有链). 为此因而难以应用于区块链场景,eland) 等结合 Raft 和 PBFT 算法的优势克里斯托弗· 科普兰 (Christopher Cop,4].Tangaroa 继承了 Raft简洁和容易理解的优势于 2014 年提出拜占庭容错的 Tangaroa 算法[4,错性和活性. 受 Tangaroa 共识启发同时在拜占庭错误环境下也能够维持安全性、 容,o 项目提出一种拜占庭容错的 Raft 算法2016 年 Github 平台的 Jun,leBFT[45] 的专用拜占庭容错协议此后该算法演变为一种称为 Scalab,a 和 Juno 更好的性能能够实现比 Tangaro-●▪.

  了恒星共识协议 (Stellar Consensus Protocol2015 年首 席 科 学 官 David Mazieres 教授提出,议和 Ripple 协议的基础上演化而来的SCP)[46]▷▲◇. SCP 在联邦拜占庭协,安全的共识机制是第一个可证明,任和渐进安全四个关键属性★▪. 同年具有分散控制、 低延迟-•◁、 灵活信○▪,ple 和 SCP 共识相结合超级账本的锯齿湖项目将 Rip□-▽,um voting) 共识算法提出了法定人数投票 (Quor,性的应用场景▷◆▲. 2016 年以应对那些需要即时交易最终,出一种改进的拜占庭容错算法 dBFT中国区块链社区NEO(原名小蚁) 提,上借鉴了 PoS 设计思路该算法在 PBFT 的基础,权益来选出记账人首先按照节点的★▼,法改进了 PoW 和 PoS 缺乏最终一致性的问题然后记账人之间通过拜占庭容错算法来达成共识. 该算◇•,适用于金融场景使得区块链能够.

  6 年201,47] 的快速拜占庭容错共识算法-=. 该算法利用密码抽签技术选择共识过程的验证者和领导者图灵奖得主、 MIT 教授 Sivio Micali提出了一种称为 AlgoRand[,共识. AlgoRand 只需极小计算量且极少分叉并通过其设计的 BA* 拜占庭容错协议对新区块达成,效的分布式账本共识技术被认为是真正民主和高☆☆=.

  7 年201, [48]●•. 这种共识针对的是互联网环境下大规模的共识节点中可能多数都处于离线状态康奈尔大学提出了一种称为 Sleepy Consensus(休眠共识) 的新算法,程的实际情况. 该研究证明仅有少数节点在线参与共识过,共识的安全性. 而采用休眠共识算法传统共识算法无法在这种环境下保证,量超过故障节点的数量只要在线诚实节点的数,全性和鲁棒性即可保证安□◇.

  所述综上■□▷,进历史如图 2所示区块链共识算法的演◁▲,容错性能、 基础算法以及具有代表性的应用系统或平台表 1 则给出了每一种共识算法的提出时间、 拜占庭☆★.

  系统的关键要素之一共识算法是区块链-…■,2 种主流区块链共识算法进行了系统性的梳理与分析. 需要说明的是已成为当前信息领域的一个新的研究热点. 本文对目前已经提出的 3,算法研究发展较快由于近年来共识◁△▽,为实际共识算法的一个子集本文讨论的共识算法可能仅,众的共识算法未加以讨论尚存在若干新兴或者小▲…▪,本文工作可望为后续的研究与应用提供有益的启发与借鉴同时一些较新的共识算法仍在不断试错和优化阶段◁★. .

   [49] [50]以目前的研究现状而言,算法 - 激励机制的适配优化、 以及新型区块链结构下的共识创新三个方面区块链共识算法的未来研究趋势将主要侧重于区块链共识算法性能评估◆-、 共识.

  先首,百花齐放式的探索和创新之后区块链共识算法在经历过一段,能评估和标准化方面的研究. 目前势必会趋向于收敛到新共识算法的性,评价指标各异共识算法的,度的公平性和去中心化程度但一般均侧重于社会学角,本与参与者的激励相容性经济学角度的能耗、 成■◆-,容错性和安全性等. 如何结合具体需求和应用场景 [51][52]以及计算机科学角度的可扩展性 (交易吞吐量☆◇、 节点可扩展等)、 ,目标的共识机制设计与算法优化自适应地实现针对特定性能评价,究的热点之一将是未来研◇○.

  次其,是紧密耦合、 不可分割的整体区块链的共识算法与激励机制,本安全性、 一致性和活性而必须遵守的行为规范和行动次序同时二者互有侧重点: 共识算法规定了矿工为维护区块链账;、 高效的验证区块链账本数据而发行的经济权益激励机制则规定了在共识过程中为鼓励矿工忠实,易费定价机制 [53]等. 从研究角度来看通常包括代币发行机制、 代币分配机制、 交,矿池的大群体博弈过程 [54] 的话如果将区块链系统运作过程建模为矿工和,将决定矿工和矿池在博弈树中每个叶子结点的收益◇-.因此那么共识算法将决定其博弈树的结构和形状、 激励机制,仅各自存在独立优化的必要性区块链共识算法和激励机制不▪▽,的联合优化、 实现共识与激励的“ 适配更为重要地是共识 - 激励二元耦合机制,等策略性行为、 保障区块链系统健康稳定运行的关键问题这是解决区块链系统中不断涌现出的扣块攻击●◇▷、 自私挖矿,来研究的跟进迫切需要未.

  后最,据层的技术和底层拓扑结构的不断创新随着区块链技术的发展、 特别是数,的区块“ 链 数据结构目前已经涌现出若干新兴■-=,畴拓展为基于图结构的区块“ 链 或分布式账本. 例如适用于物联网支付场景的数字货币IOTA 即采用称为“ Tangle (缠结) 的 DAG 拓扑结构例如有向无环图(Directed acyclic graph) 和哈希图 (HashGraph)等. 这些新数据结构将以单一链条为基础的区块链技术的范,(而非区块) 为粒度其共识过程以交易 ○•,合法性、 形成 DAG 网络每个交易都引证其他两个交易的,lockless) 共识因而可以实现无区块 (B▲▽◆;h共识则更进一步HashGrap,ssip 协议和虚拟投票等技术基于 Gossip of go,为粒度以交易,□★■. 这些新型区块拓扑结构及其共识算法是未来发展趋势之一在特定的 DAG 结构上实现公平和快速的拜占庭容错共识,识算法也值得深入研究.返回搜狐建立在这些新型数据结构之上的共◁…,看更查多

  狗狗币有销毁机制吗

(责任编辑:狗狗币今日价格)
返回狗狗币未来达到100元列表
上一篇:狗狗币最新价格纪念币有收藏价值和升值空间
下一篇:狗狗币历史价格最低瑞波价值几何?