区块链权益证明共识机制综述*
2021-08-30柏语蔓于莲芝
柏语蔓,于莲芝
(上海理工大学 光电信息与计算机工程学院,上海 200093)
0 引 言
2008年,中本聪发表了《比特币:一种点对点的电子现金系统》[1],其采用的区块链技术开始获得大众的关注。因区块链技术具有去中心化、不可篡改以及可溯源等特性,受到了各界关注。随后,出现了如以太坊[2]、Monero[3]与IOTA[4]等各类加密货币,带来了诸如智能合约、环签名以及有向无环图结构等功能性、安全性以及结构性创新,区块链技术发展进入了新阶段。而在区块链技术中,共识机制是其重要组成部分。区块链网络通过共识机制,即节点间运行共识协议,实现了在节点之间建立“信任”网络,体现了区块链去中心化等特性。同时,共识机制也决定了网络的中心化程度、安全性和可扩展性。其中权益证明(PoS)机制作为能耗较低、性能较高的新型共识机制,意在取代传统的工作量证明(PoW)机制,是目前区块链领域的重要研究方向,学界与业界均对其开展深入研究。
在国内研究方面,袁勇[5]等人深入探讨了主流共识机制中的共识算法;刘懿中[6]等人将共识机制划分为对经典分布式共识机制和区块链共识机制,并进行了详细分析;刘汉卿[7]等人探讨了区块链系统中容易面临的攻击状况;吴狄[8]等人则针对基于区块链的法定数字货币以及原型系统进行了综述。
在国外研究方面,Khan[9]等人对主流加密货币的共识机制进行了对比研究;Wang[10]等人分析了主流加密货币的共识机制与挖矿策略;Du[11]等人对工作量证明、权益证明、委托权益证明以及传统分布式共识机制等共识算法进行了分析;Nguyen[12]等人对基于权益证明的部分共识机制进行了讨论。
本文主要从以下几点展开研究:第一,概述了区块链的背景,简要概述了共识机制的原理,对工作量证明与权益证明进行了对比分析;第二,按照系统结构将Ouroboros[13]、Algorand[14]、Tendermint[15]、Casper[16]与 LaKSA[17]等 5 种基于权益证明的共识协议划分为基于链结构的共识机制与基于图结构的共识机制,并分析了各个协议的特点、流程、安全性以及性能;第三,阐述了权益证明机制面临的无利害关系攻击、研磨攻击、长程攻击、变节攻击和51%攻击等安全威胁以及其应对措施;第四,总结权益证明的发展和展望权益领域的未来研究方向。
1 共识机制概述
共识机制的研究起源于1975年 Akkoyunlu[18]等人提出的“两军问题”,指出了在不可信的信道中通信无法保证一致性。随后Lamport[19]等人提出了“拜占庭将军问题”,主要研究在存在一定故障节点或者恶意攻击时诚实节点如何实现共识的问题。在2008年发布的比特币白皮书[1]中,中本聪将共识机制应用到加密货币系统以及其使用的区块链技术中,以完成交易的验证和确认。
共识机制可分为经典分布式机制和区块链共识机制。经典分布式机制有PBFT[20]、SBFT和Paxos[21]等。区块链共识机制根据应用场景的不同可以分为两种:一种是授权共识机制,该网络中的节点想要参与共识过程需要通过公钥进行身份认证;另一种是非授权共识机制,该网络中的节点可以随意加入和退出网络,在目前主流的共识机制中,工作量证明和权益证明都属于非授权共识机制。
在区块链系统中,共识机制的基本工作流程如下:选举出块者、生成区块和节点验证更新区块。安全性、交易吞吐量、可拓展性、交易确认时间、去中心化程度和能源消耗等是衡量区块链共识机制的标准。接下来将从以上几个方面阐述目前主流的共识机制:工作量证明 (Proof-of-Work,PoW) 与权益证明 (Proof-of-Stake,PoS)。
1.1 工作量证明机制
工作量证明是1992年由Dwork等人共同提出[22],用来防止垃圾邮件。随着比特币的诞生,基于工作量证明的共识机制正式进入了公众的视野。在基于PoW机制中,节点是通过不断的单向哈希(Hash)计算寻找一个随机数(nonce)的过程来达成共识,最先算出nonce值的节点即被选为出块者,这也就意味着算力越大的节点越有可能成为出块者。由于哈希函数的特性,只能通过反复尝试不同的nonce值来找到满足输出哈希值前n位为零的值,其中n的值关系到哈希计算难度的大小,通过PoW机制的难度调整机制,保证数字货币不论在何种算力之下,其出块速度在一定速度范围内波动。
在PoW机制中,参与者互相竞争,第一个找到正确nonce的参与者就可以获得记账的权利。在这个搜寻随机数的过程中,参与者拥有的算力越多,就越有可能获得记账权。参与者为了提高获得记账权的概率,会不断提高算力,在这种计算模式下,导致了PoW共识机制在挖矿过程中需要消耗大量的能源。此时,算力较低的参与者因其获得奖励的概率相对较低,可通过加入矿池等措施,以期获得一定的收入。矿池是由大量的参与者组成,由于其拥有巨大的计算资源,将会有更多的机会来获得记账权。
比特币和以太坊目前使用工作量证明作为共识机制。在PoW机制中,各节点需投入大量计算资源用以挖矿,即通过进行Hash运算来争夺记账权。但挖矿计算无实际意义,将造成大量计算资源浪费,并且PoW机制性能较低,如比特币每分钟仅支持7笔交易,以太坊每分钟仅支持15笔交易。同时,随着矿池算力的增加,特别是针对挖矿算法而研发的ASIC矿机出现,导致基于PoW机制的加密货币受到了“中心化”的挑战。此外,PoW机制主要面临的安全隐患有日蚀攻击、双花攻击和自私挖矿等。
1.2 权益证明机制
PoS机制解决了PoW机制拓展性差和能源消耗大的问题,该机制不依赖计算哈希问题,仅依据节点所持有的权益大小(即节点在区块链网络中投入或存储的数字资产总额)决定新区块的记账归属。因此,在PoS机制中不需要堆积算力,仅需在区块链网络中投入权益即可参加记账权的竞争,以此解决了PoW机制的能源消耗问题。
综上所述,从PoW机制到PoS机制,共识机制向着更加节能、安全、高效的方向发展。表1是两种共识机制在出块者选择、能源消耗、区块生成时间、交易确认速度、设备要求、安全隐患和应用这几个方面的比较。
表1 共识机制的比较
2 基于权益证明的机制
自King提出点点币(PPCoin)后,首次将PoS机制引入加密货币系统中[23],PoS机制因其具有能耗较低与性能较高的特性,获得广泛关注。随后,各界分别针对性能与安全性等方面提出了大量基于PoS机制的共识协议。而在基于PoS的共识机制中,可根据采用该机制的区块链系统结构,将其分为基于链结构的共识机制和基于图结构的共识机制。以下从共识特点、共识流程、安全性分析以及性能等方面分别对基于链结构的Ouroboros、Algorand、Tendermint和Casper协议与基于图结构的LaKSA协议进行介绍。
2.1 Ouroboros协议
Ouroboros是由Kiayias等人提出的基于权益证明的共识协议[13],是第一个可证明安全性的基于PoS的共识机制。
(1)共识特点
Ouroboros协议将时间划分为几个时期,每个时期由多个轮组成,每轮产生的区块数最多为1,若该轮的出块者不在线或者未及时将创建的区块广播到网络中,则本轮将不产生区块。在Ouroboros协议中,每一个时期节点的权益值是由该时期开始时各节点的历史权益值来计算,若权益值发生改变,不影响当前时期出块者的选择,并且Ouroboros要求相连几个时期,节点的权益值变化不能过大。在每个时期开始时,有一个创世区块记录了该时期出块者候选人和第一轮的随机种子,由该种子通过FTS(Followthe-Satoshi)算法选出第一轮的出块者即为该轮的领导者,节点是否被选为领导者由其拥有的权益值决定,拥有的权益值越高,被选为领导者的可能性就越大。其中每一轮都通过安全多方协议产生随机数,选取出该轮的出块者。在Ouroboros协议中,选择该轮领导者的同时,还要选出交易验证者。在协议执行过程中,领导者只是创建一个空区块,交易是由验证者确认并将交易添加到区块中。建立区块所获得的奖励将分给领导者和验证者,以此来激励更多的人参与到共识机制中。
(2)共识流程
①用FTS算法选取领导者和验证者;
②领导者创建空区块;
③验证者确认交易并将交易添加到区块中;
④领导者和验证者划分奖励。
Ouroboros协议工作流程如图1所示。
图1 Ouroboros协议工作流程
(3)安全性分析
与其他基于PoS机制的协议相比,Ouroboros在提出时就已通过安全性证明,并且具有较强的激励兼容性。但是,Ouroboros只能证明在敌手股份少于51%时整个网络是安全的,该协议依旧无法承受51%攻击。同时在Ouroboros协议中,由于领导者的身份是公开的,增加了敌手发动贿赂攻击的可能性。针对这一问题,David等人提出了 Ouroboros Praos[24],在建块成功之前将领导者的身份隐藏,以此有效地降低了敌手发动贿赂攻击的可能。
PoS机制通过检查点机制来应对新加入的节点易受到长程攻击的情况,但由于检查点机制是通过选取一个信任节点的方式来确认正确的区块节点,有可能会导致中心化。Badertscher等人舍弃检查点机制,提出了Ouroboros Genesis[25],为新加入网络的节点设计了自启过程,新节点对比不同链,选出与其他链有共同前缀并且最长的链为正确的区块链,以此来解决PoS机制易于受到长程攻击的问题。
(4)性能
Ouroboros目前已经被 Cardano、Sp8de等加密货币方案使用。相较于其他区块链协议,Ouroboros的优势是交易确认时间短,约为2 min,交易吞吐量高,为250 tx/s,同时其也具备权益证明共识机制所具备的优势,Ouroboros的能量损耗小。
2.2 Algorand协议
Algorand是在2016年由SilvioMicali等人共同提出的区块链协议[14]。Algorand的提出是为了建立耗能更低、拓展性更好、更加去中心化的分布式账本。
(1)共识特点
Algorand的共识过程主要是随机选择出块者和形成共识,其中Algorand中提出了一种新的共识协议 BA*(Byzantine Agreement)。BA*与Ouroboros相似,Algorand也是以委员会的形式运作。但是,Algorand选择领导者和委员会成员的方式不是FTS算法,而是密码学加密抽签的方式。由于区块生成者节点由加密抽签后伪随机算法决定,因此不会让对手预先知道攻击目标。加密抽签是一种可验证随机函数(VRF),用共识节点的私钥和种子作为输入,其中种子是随机生成的并且每一轮都会重新创建,接着输出哈希值和用于公共验证的证明。每一个节点可以分得一个与其权益值成比例的哈希值范围,如果节点哈希值在分配的共识节点范围内,则该节点会被选中,其选中概率与其权益值成正比。
(2)共识流程
①用密码学加密抽签算法选取领导者和验证者;
②领导者创建区块;
③验证者运行BA*协议进行交易验证。
Algorand协议工作流程如图2所示。
图2 Algorand协议工作流程
(3)安全性分析
在Algorand中,只要诚实节点控制的权益超过总权益的51%,就可以保障此协议安全。被选中参与投票的节点均秘密知道其身份,其身份在投票后被公布。因此,即使敌手攻击这些节点,但节点发送的消息已经无法撤销,用于签名的一次性临时密钥也会被立刻丢弃,使敌手无法以此生成合法信息。并且BA*协议每次循环过程都会选择新的验证者,大大降低了验证者联合攻击网络的风险。
(4)性能
Algorand的交易吞吐量可以达到875 tx/s,相对于其他协议而言,每秒钟的交易吞吐量较高,它的平均交易确认时间是20 s。Algorand可快速确认交易,并且出现分叉的概率很小,不会因为用户的增多而影响交易的确认速度。正是因为这些优点,目前Algorand已经被多家加密货币公司所采用。
2.3 Tendermint协议
Tendermint是Kwon开发,由Buchman在博士论文中提出的分布式平台[15],其包含了共识协议、实现代码、接口以及管理工具,旨在解决数字货币等分布式系统存在的共识问题。为方便讨论,本文以Tendermint指代其共识协议。
(1)共识特点
Tendermint属于拜占庭容错算法,它针对传统的实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)共识算法做了优化,使用BFT投票协议确认区块,并且需要两轮投票才可达成共识,这两个阶段分别是预投票(prevote)和预提交(pre-commit)。在Tendermint协议中的节点被称为验证人。与其他协议类似,验证者通过在系统中存款获得投票权,这些验证者轮流成为每一个区块的提议者。提议者提议出一个区块,同时由验证者进行预投票签名,接着由验证者预提交,当超过2/3的验证者将区块预提交到系统中,此块才能上链,并在链上占据一定的“高度”。提交块存在失败的可能,如果失败,协议会进行下一轮提交,会有新的提议者提出那个高度的区块,并由验证者去提交。
(2)共识流程
①用加密抽签算法选出验证者,并在其中选出提议者;
②提议者创建新区块;
③验证者对新区块进行预投票签名;
④验证者对新区块进行预提交;
⑤奖励验证者和提议者。
Tendermint协议工作流程如图3所示。
图3 Tendermint协议工作流程
(3)安全性分析
当诚实节点持有权益大于或等于总权益的2/3时,可保障Tendermint协议安全。由于网络的延时性,两轮投票可能出现在一个高度的不同轮提交两个区块的情形,Tendermint引入了锁机制,使验证者只能在锁定高度预提交区块。Tendermint可以在多个机器上一致地复制同一应用,每一个工作节点都会有相同的交易日志,这一优点对提高分布式系统的容错性能起到重要作用。正是其同步一致的特性,使Tendermint没有分叉问题,所以可以排除与分叉相关的攻击。虽然Tendermint已经被证明可以抵御多种攻击,但是此协议缺乏形式定义和理论背景,并且轮流担任提议者会给网络带来安全隐患。
(4)性能
Tendermint在创建之初,其开发团队就致力于实现快速的交易处理速度,其交易吞吐量最高为 800 tx/s,交易确认的平均时间是 1 s。
2.4 Casper协议
Casper是由Buterin和Criffith共同提出的用于以太坊网络的共识算法[16],该算法是PoW机制和PoS机制的结合,是以太坊抛弃高耗能PoW机制逐渐向PoS机制过渡的产物。
(1)共识特点
Casper依旧是由PoW算法选取出块者,但是它加入了动态委员会机制,每间隔50个区块选取验证者检查出块是否合理。此时,Casper协议中的节点想要成为验证者参与共识过程需要交保证金,被选为验证者的概率与缴纳的保证金数成正比。同时若是验证人做出了危害协议的行为,其保证金就会被系统扣除,并且剥夺其参与共识的权利。这就为网络中的节点提供了识别当前情况下合法链的方法,只要获取当前锁定保证金的验证者列表,即可推断出合法最长链,这在某种程度上有效解决了“长程攻击”的问题。
Casper的投票过程满足下注共识,该共识要求验证者将缴纳的保证金中的一大部分拿来下注候选区块,当验证者和其他大部分验证者选择同一块区块时,即为下注成功,验证者可以取回保证金和交易费用,可能还有新发的货币作为奖励;若是验证者和大部分验证者的选择结果没有快速达成一致,验证者就不能取回全部的保证金。在几次投注之后,验证者的投注就会收敛;若是验证者在多轮投注中,投注目标改变较大,验证者就会受到惩戒,以此来保证验证者下注收敛于一个结果。当绝大多数验证者下注这个区块时,这一区块会成为链中一部分,而不包含这个区块的分叉会被排除,在一定程度上提高了整个链的安全性。
(2)共识流程
①节点通过PoW机制创建一个区块;
②参与验证的节点缴纳保证金,选取验证者;
③验证区块,验证者下注候选区块;
④若候选区块成功上链,验证者划分奖励。
Casper协议工作流程如图4所示。
图4 Casper协议工作流程
(3)安全性分析
如上文所述,Casper投票机制的验证者都是公开可查的,同时该机制针对离线节点提出处罚机制,让更多的节点保持在线,综上得出,此协议可以在一定程度上避免“长程攻击”。并且只要验证有2/3的投票权由诚实节点控制,整个协议就是安全的。Casper在投票过程中的下注机制,可以保证更多的参与者遵守协议,解决“无利害攻击”的问题。但是Casper运行在PoW机制上,该协议同样无法逃避51%攻击。
(4)性能
Casper运行在PoW机制上,虽然PoW机制保证Casper一定的安全性,但是Casper的性能是由PoW机制决定,所以该机制的交易确认速度会低于上述的其他机制。
2.5 LaKSA协议
LaKSA是由Reijsbergen等人提出的新型PoS协议[17],用以解决传统PoS机制中存在的激励中心化、长程攻击以及无利害攻击等问题,并且避免了部分PoS协议中出现的委员会机制内类BFT共识通信过于复杂的问题。
(1)共识特点
LaKSA采用基于概率统计的区块提交规则。节点在选择区块时,分别计算各个区块被撤回的概率,选择提交区块推翻概率低于阈值的区块。在结构方面,LaKSA改进了GHOST*协议,将系统从链型结构拓展为图结构(树式结构),区块可引用因争夺记账权失败而出现分叉区块,使得分叉中交易可被确认,有效提高交易吞吐量。
(2)共识流程
LaKSA共识机制分为投票者选举与领导者选举两个阶段。
①根据投票者权益比例与该轮伪随机信标对所有权益进行抽样,得出该轮的投票者抽样子集;
②节点分别检查是否当选为投票者,若是,则计算可投票数并进行投票;
③投票者节点分别广播投票结果,结束投票者选举阶段;
④根据领导者权益比例与该轮伪随机信标对所有权益进行抽样,得出该轮的领导者抽样子集;
⑤节点分别检查是否当选为领导者,若是,则构建区块;
⑥领导者节点广播区块,结束领导者选举阶段,共识结束。
LaKSA协议工作流程如图5所示。
图5 LaKSA协议工作流程
(3)安全性分析
通过采用概率性区块选择规则,LaKSA实现了基于概率的安全性保障,且通过对可接受的区块推翻概率的阈值进行修改可以较好地抵抗长程攻击。此外,LaKSA协议中的投票者选举阶段与领导者选举阶段可能遭受拒绝服务攻击,可通过采用如Dandelion等技术对节点进行保护,防御拒绝服务攻击。
(4)性能
得益于其基于概率的提交规则与树形结构,LaKSA具有较高的吞吐量。Reijsbergen等人公布的测试结果表明,当存在100个节点的模拟环境下,LaKSA吞吐量最高为1300 tx/s。
各协议的结构、交易确认、敌手容量、交易确认时间、交易速度、安全隐患和应用如表2所示。
表2 基于PoS机制的区块链协议比较
3 权益证明机制的攻击和应对措施
权益证明受到的安全威胁主要有无利害关系攻击、研磨攻击、长程攻击、变节攻击和51%攻击等攻击,下面对以上5种主要攻击方式进行阐述,并给出应对措施。
3.1 无利害关系攻击
无利害关系攻击是PoS机制上较为常见的攻击方式。正因为在PoS机制中,生成新区块所需要付出的代价很小,并且验证区块还能获得币作为奖励,所以部分验证者为了让自己的利益最大化,会在不同的分链上去验证新的区块,当这些分链发布到网上,无论哪一条分链胜出,验证者都会获得奖励。在此情况下,区块链更容易产生分链,使得区块链更容易受到双花攻击。
为了应对无利害关系攻击,PoS机制共识机制让参与验证的节点向系统缴纳押金,以此获得验证权。当系统检测出验证人出现双签的情况时,该验证人在系统中的押金就会被扣除,并且押金数额会远高于获得惩罚数额,同时撤销该节点验证者的身份。
3.2 研磨攻击
研磨攻击主要发生在PoS机制选择领导者的过程中。攻击者通过攻击领导者选举函数,影响函数中种子的随机性,使领导者的选择向着有利于敌手控制的节点方向发展,使这些节点有更高的概率被选为领导者,以此让区块链更有可能受到攻击。针对这一攻击,Kiayias等人提出了委员会的概念,由委员会成员共同算出下一轮的种子,以此保障领导选举函数的随机性。
其中币龄攻击就是研磨攻击的一种,币龄这一概念是在PPCoin上提出来的,节点拥有越多的币,并且拥有币的时间越长,就越有可能被选为出块者,所以攻击者只需要不断积累自己的币龄,就越有可能在下一轮被选为出块者,也就是说节点会随着时间的增长被选为出块者的概率就会越高,攻击者会通过不断积累时间的方式,来让选中的概率提升。主要的解决方案是设置币龄的最大上限或者币龄不作为领导选举函数的参数,目前权益证明在很多情况下已经去除了币龄这一概念,从而解决了币龄攻击这一问题。
3.3 长程攻击
长程攻击是PoS机制系统最大的威胁之一,攻击者创建一条从创世链开始的长区块链分叉,以此替换合法主链。区块链系统中最易受到长程攻击的是新加入节点和长期离线节点,这些节点具有弱主观性,当这类节点进入网络时,它们会接收到区块链上所有公开分叉,并且不能分辨出哪些分叉属于主链。
相较于PoS机制,PoW机制不易受到长程攻击,由于PoW机制受算力的影响很大,所以攻击者想要创建一条非法的分支链来代替主链,首先需要获得50%以上的算力来创建一条分链,同时想要分链的长度达到主链的长度,需要大量的算力来作为支撑,这对攻击者而言是得不偿失的。PoS机制中不依靠算力来创建新的区块,所以攻击者创建新链的代价相对较小,PoS机制也就更容易受到长程攻击的威胁。
目前针对长程攻击的应对措施主要为移动检查点、情境感知交易和经济惩罚。
移动检查点是所有PoS机制协议中都会用到的保护措施。移动检查点的意义在于网络中区块链只有末端的x个区块可以被重组,可能被重组的区块数目x取决于协议实施的不同。正因为移动检查点规定了攻击者的攻击范围,使攻击者无法做到从创世区块开始生成一条私链来代替主链。
情境感知交易是在每个交易中加入上一个区块的哈希值,因此,每一笔交易都与特定的区块和分支联系起来。通过情境感知交易,保存在当前分支中的一个交易将不会被复制到其他分支中,也就是说,攻击者无法将主链上的交易复制到这条私链上,所以攻击者只能被迫创造一条完全不一样的历史交易数据,这大大提高了攻击的难度。
在经济惩罚中,若验证者被检测到存在不正当的行为,即为在相同的区块高度中该验证者验证了不同的区块,则该验证者在网络中存入的货币就会被扣除,并且有可能撤销验证者的身份。当然经济惩罚也存在一定的局限性,若该验证者只参加了私链的验证,将无法查出其具备不当行为,无法给予惩罚。
3.4 变节攻击
变节攻击是指攻击者通过购买、行贿或破解的方式获得旧验证人私钥,通过这些旧验证人私钥去签署以往区块,以此来达到攻击者快速完成较长链的目的。
要解决变节攻击的问题,可以使用密钥演进加密技术(Key-Evolving Cryptography,KEC)的方式动态生成签名私钥,使攻击者无法获得有效私钥。除此之外,密钥演进加密技术和前文中提到的移动检查点技术也可解决变节攻击的问题。
3.5 51%攻击
当攻击者拥有网络中大多数的权益时,尤其是攻击者的权益超过51%时,攻击节点被选为当前这一时段领导者可能性的概率会很高,并且该攻击节点有被持续选为出块者的可能,创造一条私链代替原来的主链就变得很容易。由于PoS机制没有算力成本,攻击成本也相对较低,导致PoS机制共识机制会存在让富者控制区块链的风险。
目前并没有合适的方法去应对51%攻击,但是对于拥有51%权益的节点而言,攻击系统有可能导致整个系统陷入风险中,因此影响到攻击者自身的利益,所以于这样的节点而言,攻击区块链反而得不偿失。
4 权益证明机制的发展和展望
自权益证明机制被提出以来,因其具有较低能耗与较高性能的特点,并且与现实中企业决策架构较为类似,一直受到学界与业界的广泛关注,出现了大量改进方案,并持有一定的研究热度。以下对权益证明机制的发展进行总结,并对权益证明机制的未来进行展望。
4.1 权益证明机制的发展
为了解决工作量证明机制带来的资源浪费问题,同时满足日益增长的交易吞吐量需求,权益证明这一机制被提出。自King等人提出权益证明机制后,学界与业界涌现出大量的解决方案,其中尤为出名的是Casper FFG、Ouroboros以及Algorand等协议,分别通过结合工作量证明、微型区块以及委员会机制等方法在降低能耗的同时实现较高的交易吞吐量,一定程度上解决了传统工作量证明中存在的问题,提高了区块链系统性能。但是,权益证明机制存在受到无利害攻击、长程攻击及研磨攻击等安全威胁,并且这一机制中的激励模式仍存在鼓励中心化的问题,可能出现诚实节点收益低于恶意节点收益的情况。总而言之,权益证明机制具有较低能耗与较高吞吐量等优点,部分解决了工作量证明机制中存在的问题,具有较为广阔的发展前景。
4.2 权益证明机制的展望
权益证明共识机制作为接替工作量证明机制的主要共识机制之一,在实际应用过程中依旧存在一些不足,未来对于权益证明共识机制的研究主要有以下几个方面。
(1)安全方面:目前PoS机制依旧面临无利害攻击、长程攻击及研磨攻击等威胁,如何在不违背区块链去中心化初衷的前提下,提出更为安全的权益证明共识机制方案是未来研究者探索的主要方向之一。
(2)扩容方面:采用PoS机制虽然可减少PoW机制所需的大量计算资源,但由于PoS机制仍需通过投票等流程决定记账权,投票流程对吞吐量造成一定的影响。并且,在争夺记账权的过程中,容易造成部分交易未被包含在胜选者所打包的区块中而被丢失,从而影响交易性能,在效率上仍然有待提高。对此,可采取优化投票流程、将区块链扩展为树结构或图结构等方法进行扩容。
(3)激励方面:解决奖励收益过于集中化、领导者获取绝大多数奖励的现状,重新划分奖励分配比例,制定合理的奖励和惩戒机制,让作恶收益少于激励收益,促使更多的用户以诚实的态度加入到共识机制的运行中。
5 结 语
权益证明机制是区块链共识机制中重要的一员,具有效率较高与能源消耗较低等优点,拥有广泛的应用前景。当前,对权益证明机制的研究处于快速发展阶段,学界与业界出现了大量改进方案与应用实例。本文通过对比工作量证明机制,细致分析权益证明机制的特点、模型、结构、交易流程与安全性。并从安全、扩容、激励机制这三个方面,对权益证明机制未来发展提出了展望。