基于激励相容的权益分散共识算法

来源:优秀文章 发布时间:2023-02-16 点击:

田有亮,袁延森,高鸿峰,杨旸,熊金波

(1.贵州大学公共大数据国家重点实验室,贵州 贵阳 550025;
2.贵州大学计算机科学与技术学院,贵州 贵阳 550025;
3.贵州大学密码学与数据安全研究所,贵州 贵阳 550025;
4.贵州省密码学与区块链技术特色重点实验室,贵州 贵阳 550025;
5.新加坡管理大学计算机与信息系统学院,新加坡 188065;
6.福建师范大学计算机与网络空间安全学院,福建 福州 350117)

区块链作为比特币[1]等加密货币的底层技术,自问世以来引起广泛的关注。区块链是在分布式、不可信环境中,所有节点通过特定的共识算法就区块链状态的更新达成一致的技术。共识算法为区块链提供了核心功能[2],从根本上决定了整个区块链系统的安全性、可用性等性能[3]。

区块链系统中涉及的数据记录由全网节点进行维护和生成,从而实现了去中心化。由于任何人都可以参与创建和验证区块,因此为防止节点的恶意行为,系统需要参与节点付出一定代价。工作量证明(PoW,proof of work)也叫PoW 共识[1],通过引入节点间的算力竞争来保证数据一致性,使女巫攻击[4]等恶意行为的作恶成本增加。作为成功挖矿的回报,矿工将获得与他们投入的计算能力成比例的奖励。

然而,PoW 共识的安全性存在一些隐患。首先,由于挖矿过程受到计算能力和概率因素的影响,导致单个矿工的期望收入较低,奖励波动较高,因此,矿工通过加入矿池聚合计算能力来稳定收入。虽然矿池对稳定矿工收益有利,但大型矿池对系统来说是有风险的[5-6]。其次,PoW 共识已被证明是激励不相容的[5,7],在某些情况下,矿工的最佳策略是不立即公布他们找到的区块,而是将其保留一段时间,通过偏离协议来获得不成比例的利益,即自私挖矿攻击[8-9]。最后,PoW 共识在不一致的情况下(即区块链中的分叉),系统收敛速度会减缓,浪费大量计算资源[10-11],同时降低发动自私挖矿攻击的算力阈值[5,12],严重危害系统安全性。

针对上述问题,本文提出一种基于搜索空间划分的工作量证明(SSPoW,proof of work based on spatial segmentation)算法。SSPoW 的核心设计是局部解,局部解视为矿工的部分工作量证明,公布该局部解的矿工获得对应的部分收益。同时定义了全局解和局部解的算力值,以此来量化最终区块的聚合算力,并通过在全局解中附加局部解来提高区块算力,以此加快分叉的收敛速度。局部解的引入和附加提高了挖矿的透明度和共识效率。本文主要贡献如下。

1) 改进挖矿算法:基于搜索空间划分引入局部解,激励矿工合作挖矿提高共识效率。

2) 重新设计奖励方案:通过削减奖励差异来提高矿工挖矿积极性,抑制算力中心化。

3) 更改主链选择协议:通过量化最终区块的聚合算力来加快分叉的收敛速度。

文献[13]利用不可伪造的时间戳提出了新鲜度首选(FP,freshness preferred)策略,优先选择较新的区块,降低保留区块的竞争力从而降低自私挖矿的收益能力,然而,这种方法需要一个可信的时间戳机构来生成不可伪造的时间戳,并要求诚实的矿工记录所有最近的时间戳发布日志。因此,文献[14]利用工作量证明的泊松性质提出了一种无时间戳防御策略Zeroblock,通过设置区块的最大接受时间来限制自私挖矿,但由于哈希率波动,区块的预期时间可能会出现高方差,使有效区块失效。文献[15]引入区块的“真实状态”概念,通过为每个交易分配一个预期的确认高度,以检测网络中的自私挖矿行为,但网络中诚实区块传播的意外时延会导致交易实际高度增大,反而会有利于自私的矿工。文献[16]引入透明度并激励参与者尽快公布区块来避免自私挖矿,但是诚实矿工的算力仍会被大量浪费。同时在奖励机制设计方面,文献[17]证明当可用费用不足时,理性矿工会避免挖矿,并会倾向于加入自私挖矿矿池。文献[18]提出一种奖励共享方案(RSS,reward sharing scheme),通过适当激励参与者,实现效率和安全性的均衡,但是存在富者愈富的现象。文献[19]基于以太坊提出权益证明检查点协议Casper,其结果表明该协议通过激励相容确保了区块链系统的活性,同时提供了比标准工作量证明协议更好的安全保证。在分叉处理方面,文献[20]提出了一种概率验证方案PvScheme,可以有效降低区块传播时延,从而避免区块链分叉的发生,但安全设计增加了系统的时延,随着验证度的提高,分叉概率也呈现出递增的趋势。上述方案均存在一些缺陷,本文针对现有共识算法存在的激励不相容等问题,设计一种基于激励相容的共识算法,在保证挖矿参与者的积极性的同时,提高共识效率,且可更快地进行分叉处理以及对抗自私挖矿攻击,对区块链技术的发展具有重要意义。

2.1 PoW 共识算法

区块链系统中PoW 共识算法的常见形式为

其中,param 表示与区块头部信息相关的数据,nonce 表示随机数,Target 表示目标值(由网络中当前难度值决定)。由哈希函数的性质可知,想要找到符合条件的nonce 就必须通过穷举的方法来实现。最先求得满足式(1)的nonce 值的矿工获得记账权,其余矿工仅需将各参数代入即可验证其正确性。PoW 算法通信复杂度为O(n),节点数可扩展,参与过程不需要身份验证。但是,PoW 算法浪费算力资源,效率较低,且容易导致算力中心化。

同时,区块链网络的整体哈希率和挖矿难度决定了整个网络生成一个新区块的时间(区块间隔)。以比特币为例,为了将区块间隔稳定在10 min 左右,以适应不断变化的总挖矿能力,比特币网络每隔2 016 个区块(即一个难度窗口)就会根据式(2)调整目标Target,即

其中,Timei表示过去第i个块的生成时间,i∈ [1,2016]。如果平均区块间隔超过10 min,目标值就会增加,即难度降低。

2.2 自私挖矿攻击

PoW 共识算法并不总是激励相容的。通过偏离协议和战略性地扣留发现的区块,拥有总计算能力比例α的矿工可能会占据区块链上超过α的区块,因此获得与其算力份额不成比例的高回报[21-22]。更具体地说,只要区块链处于比当前主链分支多一个或多个区块的有利位置,攻击者就试图通过对发现的区块保密来创建一条私有链。只有当主链几乎赶上时,他才会公布他的私有链,从而使公有链和诚实的矿工所做的一切努力失效,这种攻击被称为自私挖矿。当一个自私矿工的计算能力超过一定的阈值(约33%)[5]时,会更有效率。因此,如果算力足够分散,自私挖矿攻击对比诚实挖矿将无效率优势。

2.3 矿池和算力中心化

由于PoW 共识的挖矿收益取决于算力,因此矿工倾向于集中计算资源以获取更高收益。挖矿是零和博弈,只有竞争成功得到记账权的幸运矿工才会得到奖励,而其他为创造区块贡献计算资源但未得到记账权的矿工则完全无收益。因此矿工会激烈地竞争区块记账权,导致计算能力有限的矿工获得的回报出现极高的差异,单独的矿工可能需要等待极长时间才能得到回报。基于上述情况,矿工聚合计算资源形成矿池以提高获得记账权的概率,并根据矿工的算力贡献来分享奖励。以比特币为例,截至2022 年4 月,全球最大的3 个矿池占据了整个网络50%以上的算力。矿池不仅破坏了区块链的去中心化特性,还引发了各种池内或跨池安全问题[23-24]。

2.4 最长链原则和分叉

最长链原则指网络中最长的链被定义为正确链(即主链),要求矿工在主链上挖矿。矿工在接收一个新区块时,必须停止当前挖矿过程,验证新区块是否有效,否则无法保证自己始终在主链上工作。借助最长链原则,保证每个新区块均被诚实矿工承认。然而,由于网络时延等问题,偶尔会出现分叉现象,即在某个区块高度,多名矿工同时挖出区块,导致矿工对最新区块链状态做出不同判断。虽然基于区块确认机制,上述冲突最终会被解决(仅剩一个分支被承认,其他竞争失败的分支链被废弃),但是由于区块具有相同的算力权重,难以进行量化比较,导致分叉收敛过程较缓慢。因此从系统一致性角度考虑,区块算力的量化具有重要意义。

3.1 设计概述

基于PoW 的挖矿并不是透明的,在产生区块前很难快速评估不同矿工的算力。以比特币为例,由于生成区块的平均时间是10 min,且每个区块的隐含计算能力接近相等。因此,出现分叉问题时,比特币采用最长链原则来解决,而该过程相对耗时,且会造成自私挖矿等问题。理想情况下,恶意隐藏区块应该受到惩罚,然而在实际情况下难以检测和证明一个区块是否被隐藏。通过鼓励矿工公布当前自身计算状态可以显著增加挖矿透明度。例如,通过给予公布计算状态的矿工一定奖励,并要求最终区块包含更多的计算结果来变相增强自己的算力。随着时间的推移,其他矿工可能会创造出具有更高算力的区块,从而给刻意隐藏区块的恶意矿工带来较大的风险,这将激励矿工立即公布他们的最终区块。此外,基于零和博弈的奖励方案会导致矿工间进行激励竞争,所引发的矿池问题会影响算力分布,进而违背区块链的去中心化特性。为避免此问题,本文重新设计了奖励方案。通过引入局部解机制,鼓励矿工间相互合作从而达到激励相容,同时消除中心化风险。

SSPoW 系统模型如图1 所示,整个区块链网络共有n个矿工{P1,P2,P3,···,Pn},基于矿工数将整个随机数搜索空间划分为N份 {S1,S2,S3,···,SN},每个空间大小为k。每位矿工选择一定数量的搜索空间进行随机数Nonce 的哈希计算,相当于整个系统中的矿工合作进行挖矿。为保证挖矿透明性,矿工间交换各自的搜索结果,从而快速排除无用搜索空间,避免重复计算。

图1 SSPoW 系统模型

本文方案中,矿工对搜索空间内的随机数Nonce进行计算验证,并将未找到正确Nonce 值的搜索空间作为局部解公布。该局部解为矿工已付出算力的工作量证明,同时避免了其余矿工的重复无效计算。找到正确Nonce 值的矿工可将其他矿工已发布的局部解包含至全局解(最终区块)中,从而更好地反映当前区块的聚合算力。当发生分叉时,包含更多算力的区块所在分支将被规定为主链。

此外,本文基于局部解重新设计奖励方案,旨在杜绝零和博弈。全局解若包含局部解,则公布该局部解的矿工将获取一定比例的奖励,此奖励的大小取决于所有局部解的算力贡献程度。局部解的奖励并不会影响出块矿工的奖励,这将有利于矿工公布区块时包含更多的局部解,以此来增强自身区块的聚合算力。

3.2 详细设计

3.2.1区块结构

在本文方案中,区块由交易列表、局部解列表和全局解头部组成,其中全局解头部负责验证交易和局部解列表。区块头部字段组成如表1 所示。本文根据Coinbase 字段对应的地址奖励局部解的公布者(详见第3.2.4 节)。因为所有奖励都是由头部信息决定的,所以交易列表中不再需要Coinbase 交易。为验证局部解的正确性,本文为局部解引入Addresses 字段代表局部解对应的搜索空间起始地址。由于局部解并不包含交易信息,因此局部解删除了MerkleRoot 字段。局部解作为区块的组成部分,需在矿工间进行交换,本文利用哈希函数的抗碰撞性来确保所有相关局部解的完整性,如式(3)所示。

表1 区块头部字段

利用OP_RETURN 操作来存储聚合局部解头部的哈希值,该哈希值作为数据项存储于区块中,其中,headeri是一个指向前一个全局解头部的局部解头部。与全局解区块头相比,局部解区块头并不用于验证交易,包含局部解的主要目的是反映集中在区块链某个分支上的聚合算力。SSPoW 区块链的片段如图2 所示。每个区块包含一个单一的全局解头部、交易列表和聚合局部解的哈希值。在收到一个新区块时,矿工通过检查以下内容来验证该区块(见算法 4 中的validateB lock())。

图2 区块链结构

1) 全局解头部哈希值满足要求,并指向之前的全局解头部。

2) 头部字段值正确,即版本、目标和时间戳等都设置正确。

3) 所有包含的交易均正确,即MerkleRoot 验证正确,且聚合局部解的哈希值验证正确。

4) 所有包含的局部解都是正确的:a) 局部解nonce 值计算出的头部哈希值符合要求;
b) 局部解的PreHash 字段指向前一个全局解头部;
c) 局部解的版本、目标和时间戳均正确。如果验证成功,该区块被追加上链。

3.2.2挖矿算法

与PoW 共识算法相同,在SSPoW 中,矿工将交易收集到区块中进行验证。竞争新区块的记账权时,每个矿工试图通过自身算力对同一哈希难题进行穷举求解,算法1 中的 mineBlo ck()函数对SSPoW中的挖矿过程进行了简化描述。矿工通过修改区块Nonce 字段不断改变区块头部header,当一个头部的哈希值h=H(header)小于目标值Target,即h< Target 时,相应的区块会被公布到网络上,其他矿工验证通过后,将更新本地区块链状态,同时启动下一轮挖矿。

算法1挖矿算法

当矿工在搜索空间Si上进行挖矿后并未发现正确的nonce 时,则可以公布关于该搜索空间的局部解,如算法2 所示。局部解仅包含头部,不包含区块体(交易列表),局部解头部需要提供该搜索空间上的最小头部哈希值min(hi)(i∈ [a,a+k],a为该搜索空间起始地址)以及min(hi)对应的Nonce。当矿工公布一个局部解时,除了将其添加到本地局部解列表中,还将在区块链网络中广播该局部解。每个矿工对收到的局部解进行验证(见算法 3 中onRecvLoca lBlock()函数),并检查该局部解是否指向当前最后一个区块的头部,及其他字段是否正确。另外,本文方案不限制附加的局部解数量,但同一矿工在同一搜索空间的局部解仅会被附加一次。

算法2局部解生成算法

算法3局部解验证算法

算法4全局解验证算法

3.2.3分叉处理

通过在区块中引入局部解,区块能更精确地反映聚合挖矿能力。每个区块包含多个局部解,这些局部解对区块的聚合算力有贡献。在分叉的情况下,本文方案依赖于最强链原则,即拥有最高聚合算力的分支链被选定为主链。每条分支链的聚合算力根据算法5 中的 chain PoW()函数计算。每条链上的每个区块都会被解析,每个区块的聚合算力分为两部分。

2) 所有相关局部解头部的聚合算力。每个局部解头部的算力受搜索空间影响,计算式为,其中,N为划分的搜索空间数量,γ为相对影响因子,表示局部解的权重。

该分支链的聚合算力被表示为其所有区块的算力之和。通过比较各链的聚合算力,将具有最大聚合算力的链确定为主链。假设一个区块C0包含x个局部解,同时存在包含y个局部解的区块C1,那么如果x>y,该矿工将选择C0而不是C1。如图3所示,在区块链分叉时,拥有C0和C1区块的矿工将立即决定跟随C0区块,因为C0比C1区块聚合了更多的算力。上述规则激励矿工尽快公布他们的计算结果,避免随着时间的推移,竞争区块算力更高导致自身区块被废弃。

图3 分叉示例

算法5聚合算力计算算法

3.2.4区块奖励

SSPoW 共识算法的奖励分配由算法6 中的rewardBl ock()函数实现。在PoW 共识中,只有成功出块的矿工才能获得全额奖励,而在本文方案中,所有为区块的生成做出贡献的矿工(发布局部解的矿工也被包括在内)都将获得与其所提供的算力相称的奖励。一个局部解的公布者获得全额出块奖励R的一部分,即,作为其相应的局部解对特定分支总算力的贡献奖励,其中γ为相对影响因子,其大小影响局部解的奖励权重。本文方案不限制局部解的奖励数量,矿工针对同一区块可获得其发布的多个不同局部解的奖励,因此奖励方案不是零和博弈,出块矿工无法通过舍弃其他矿工的局部解来增加自己的奖励;
相反,若舍弃其他局部解,将导致自身区块的聚合算力减少,从而影响自身收益。

算法6奖励分配算法

基于局部解的机制使诚实矿工收入趋于稳定,降低了因竞争记账权的不确定性所带来的收益波动,使系统算力更加分散。基于上述情况,同一区块中所有不同局部解均被奖励,且局部解求解速度与矿工自身算力成正比。为了保证出块矿工的积极性,将区块交易费(B.TxFees)归于全局解头部的公布者(他也获得了全部的奖励R)。在本文奖励方案中,新铸币的数量恒定为R,且货币的总供应量没有上界。

区块链分叉、算力中心化以及自私挖矿对区块链系统的安全性造成了极大的危害,本节根据算法特性对上述问题的解决过程进行详细阐述与解释。

4.1 区块链分叉

采用SSPoW 共识算法的挖矿时间相比于PoW共识更短,导致分叉概率上升。因此本文引入了聚合算力的概念,当出现2 个或多个分叉时,矿工优先选择在聚合算力最高的分支链上进行挖矿。PoW共识则选择最长链,如图3 所示,区块链在C处出现分叉,若采用PoW 共识,新区块D则会在C0和C1之中任选一个作为父区块。由于没有具体的量化指标,区块链最多需要6 个区块的时间进行收敛。如图4 所示,区块C1经过后续6 个区块的确认保证其不可更改,因此fork2被选定为主链,而fork1上的区块则会成为孤块,这将导致巨大的资源浪费。如果采用本文所提的SSPoW 算法,当出现分叉时,由于C0的聚合算力大于C1,因此后续的区块D会立即选择C0作为父区块,for1k 会被选定为主链,分叉解决仅需一个区块的生成时间,避免重复无意义挖矿过程所造成的资源浪费。

图4 分叉展示

4.2 算力中心化

矿池导致的算力中心化问题在很大程度上可归因于单独挖矿的高奖励差异。因此,将单个矿工的奖励差异保持在较低水平是本文的核心设计目标。设拥有全网α算力的独立矿工P,记M1为采用PoW 共识进行挖矿后每个区块奖励值的随机变量,M2为采用SSPoW 共识进行挖矿后每个区块奖励值的随机变量。定义随机变量X~B(1,α)为

可得E(X)=α和D(X)=α(1 -α),其中,E 和D分别表示随机变量X的期望和方差。在PoW 共识中,出块矿工获得固定的控矿奖励R以及交易手续费,用随机变量T表示交易手续费,定义T~U(a,b),可得

对式(5)求方差可得

由于XR和XT不独立,可得

将式(7)代入式(6)可得

设Y为事件X的示性函数,定义为

代入XT=Y(X=1)T,可得

将式(10)代入式(8)得

在SSPoW 中,假设区块中包含了L个局部解,随机变量L~P(λ),随机变量Xi~B(1,α)。为便于与 PoW 共识进行比较,本文引入缩放常数c(0<c< 1),以确保区块总奖励保持不变。可得

当交易手续费用T与挖矿奖励R相比较小时,式(19)将简化为

显然,D(M2) <D(M1),SSPoW 算法降低了奖励的差异,因此,在采用本文算法的区块链系统中,矿工加入大型矿池的动机会降低,对系统的算力去中心化有积极影响。

4.3 虚假局部解

与PoW 共识不同的是,SSPoW 算法中系统奖励公布局部解的矿工,因此存在着恶意节点公布虚假局部解的行为。本节将通过分析针对局部解的攻击来论述该算法的安全性。

4.4 自私挖矿

SSPoW 的另一特点是抑制了自私挖矿攻击。在自私挖矿中,当恶意矿工优先于诚实矿工挖出区块时,恶意矿工不立即将挖掘到的区块公布到区块链网络中,而是选择隐瞒。当诚实矿工在原有链上挖到新的区块时,恶意矿工突然释放之前所保留的区块,增加链的长度,使区块链网络出现分叉,根据最长链原则,诚实矿工挖出的区块无效,从而浪费了大量的算力资源。与此同时,恶意矿工创造的分支链成为最长链,诚实矿工最终也会趋向于在自私链上进行挖矿,严重破坏了区块链系统的安全性。

通过分析得知,自私挖矿是针对区块链最长链原则的攻击,而在SSPoW 中引入了基于局部解的新挖矿策略,主链选择的并非最长链,而是基于聚合算力的最强链。由于更改了链选择协议,同时通过奖励方案激励矿工尽早公布计算结果,提高了挖矿过程的透明度。因此如果恶意矿工不公布任何新发现的局部解(“隐蔽”挖矿),推迟发布新区块或拒绝包含其他矿工的局部解(“恶意”挖矿),那么在前一种情况下,恶意矿工将无法获得局部解的收益;
而在后一种情况下,若诚实矿工公布的区块聚合算力较高,恶意节点将面临着自身区块被废弃的风险。综上所述,这些策略都会给恶意矿工带来利益损失,极大地抑制自私挖矿。

本文仿真实验主机配置如下。CPU 为Intel Core i5-9500,内存为8 GB,操作系统为Window 10 企业版。实验选用Python3.8 为主要编程语言,并使用其Matplotlib3.5.2 模块实现数据的可视化。

5.1 性能指标

因为SSPoW 算法是一个划分搜索空间的合作挖矿,所以除了核心的挖矿模块和通信模块,还需要有划分搜索空间模块。为了简化实验,仿真实验指定了各个节点的搜索空间。实验主要比较SSPoW与PoW 的算法效率和挖矿奖励差异。算法效率通过对比吞吐量和时延进行衡量,奖励差异则通过对比挖矿奖励的离散系数进行衡量。离散系数c是度量数据离散程度的相对统计量,用于比较不同样本数据的离散程度,定义为标准差σ与平均值μ之比,表示为

在本文算法中,挖矿奖励的离散系数越大,说明挖矿奖励的差异程度也越大。吞吐量指单位时间内区块链网络中的交易从产生到被打包并写入区块链中的交易总数,本文使用每秒交易数(TPS,transaction per second)来表示吞吐量,表示为

其中,Time 为交易产生到区块被确认的时间间隔,NumofTxs 为在时间间隔Time 内被确认区块中包含的交易总数。算法的吞吐量越高,则表明算法的性能效率越高。

5.2 吞吐量对比

在区块链系统中还需考虑算法的使用规模,使用规模指算法在系统中运用后所能承载的网络节点数量。本文分别测试了PoW 和SSPoW 这2 种共识算法在不同节点数量下的吞吐量。为避免误差,实验结果取算法运行10 次的平均值,如图5 所示。通过调整系统的节点数量来测试不同的使用规模对算法吞吐量的影响。由图5 可知,在同一测试平台下,SSPoW 算法的吞吐量接近400 tps,而PoW 共识的吞吐量只有100 tps。但是随着节点数量的增多,吞吐量大小存在着较大的波动。这是因为区块中额外引入了局部解,导致SSPoW 区块大小相比PoW 算法有所提高,节点之间的通信开销也会增大,所以随着节点数量的增多,受网络因素的影响也会增大。

图5 算法吞吐量对比

5.3 奖励差异对比

由于本文算法为局部解提供一定比例的奖励,为模拟不同区块链网络下算法的奖励分配情况,本节通过在不同节点规模下进行挖矿,测试节点奖励的离散系数并以此来评估奖励差异情况。在同一测试平台下,每个节点规模挖矿100 次,设置搜索空间数N=256,相对影响因子γ=1,表示每个搜索空间对应的局部解奖励之和与全局解奖励相等。每组实验结束后,统计每个节点获得的奖励,并由式(21)计算出该组奖励的离散系数。由图6 可知,随着节点规模的增大,PoW算法的奖励离散系数急剧增大,说明随着网络规模的增大,节点的奖励将会出现较大的差异,因此矿工加入矿池的意愿也会更强烈。而SSPoW 算法的离散系数上升则较缓慢,说明本文算法削减了节点的奖励差异,在一定程度上降低了算力中心化风险。

图6 算法奖励差异对比

5.4 时延对比

SSPoW 算法通过引入局部解提高了共识效率,与此同时,额外字段的引入也会增加通信开销,因此本节通过测试算法的时延来评估通信开销。本节实验对比选用8 台主机,并在同一测试平台上分别运行PoW 和SSPoW 算法来测试挖矿的时延,评估指标为50 次挖矿的时间开销。由图7 可知,在同一实验环境下,SSPoW 算法的时延明显低于PoW算法。同时,本节实验也计算了2 种算法挖矿50 次的平均时延,SSPoW 算法的平均时延显著低于PoW算法,说明本文算法在提高共识速度的同时并未带来过大的通信开销。

图7 算法时延对比

对于PoW 共识而言,高奖励差异带来的中心化问题以及自私挖矿等问题是危害区块链系统安全的关键因素,因此,本文设计并提出了一种新的工作量证明算法——基于PoW共识的SSPoW算法。本文算法引入局部解,并基于局部解重新设计奖励方案,减少了矿工加入矿池的意愿,从而降低了因算力中心化导致的风险,对区块链的安全属性有积极贡献。最后,理论分析与实验结果表明,相比于传统PoW 共识算法,本文算法的共识效率和安全性均有提高。未来,笔者希望通过使用新颖的框架和工具来扩展本文工作。

猜你喜欢 挖矿算力矿工 算力盗用:一种新型财产侵害*政法论丛(2022年3期)2023-01-08中科曙光:联合发布全国首个“一体化算力交易调度平台”现代经济信息(2022年26期)2022-11-18中国电信董事长柯瑞文:算力成为数字经济的主要生产力现代经济信息(2022年22期)2022-11-13合力攻坚 全面治理高校“挖矿”中国教育网络(2022年6期)2022-09-28多措并举 全流程整治“挖矿”中国教育网络(2022年6期)2022-09-28算力网络场景需求及算网融合调度机制探讨信息通信技术(2022年2期)2022-05-31金牌挖矿工小哥白尼(趣味科学)(2021年4期)2021-07-28矿工金秋(2021年24期)2021-04-01挖矿木马的攻击手段及防御策略研究无线互联科技(2018年8期)2018-12-24老矿工的家国情怀中国盐业(2018年16期)2018-12-23推荐访问:相容 共识 算法
上一篇:基于电磁表面的阵列天线及应用概述
下一篇:制浆造纸废水氨氮检测纳氏试剂法探讨

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有