会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 资料储存系统 / 工作量证明 / 一种基于权重的区块链共识计算方法与系统

一种基于权重的区块链共识计算方法与系统

阅读:1203发布:2020-07-27

IPRDB可以提供一种基于权重的区块链共识计算方法与系统专利检索,专利查询,专利分析的服务。并且本发明公开了一种基于权重的区块链共识计算方法与系统,针对目前区块链网络中以工作量证明(POW)为主的共识计算方法及网络终端存在的能源浪费严重、算力集中在少数大型矿场、普通用户参与算力挖矿困难等问题。本方法与系统通过对矿工区块链帐户权重的统计来调节其挖矿难度系数,等价地增加其区块封装算力。通过本方法与系统使矿工通过增加帐户权重实现区块封装算力的提升,在避免能源浪费的条件下,等价地提升区块链网络的整体区块封装难度,既实现了绿色挖矿,让区块链网络获得更大的分布性,并通过矿工帐户权重所等价增加的区块封装算力,有效防止大型传统算力矿场对规模较小、算力有限的行业性、区域性或处于启步阶段的区块链网络的算力攻击。,下面是一种基于权重的区块链共识计算方法与系统专利的具体信息内容。

1.一种基于权重的区块链共识计算方法,其特征在于三个关键步骤:(1)区块链矿工(区块封装者)在基于工作量证明(POW)进行区块封装时,进行持续哈希计算找到一个随机数(nonce),该随机数与区块头、区块的其它数据的集合的哈希计算值将小于一个长整数Hd,而该长整数Hd的值由区块网络中所设定的最大值Mv与第j个区块的区块封装难度值所决定,即:Hd>H(Ω(nounce,Header,...))     (1)Hd=Mv/dj        (2);

(2)查询矿工在区块链网络中所登记的权重(如其区块链帐户余额)PB,以PB的值去除以当前区块封装难度值dj,并将计算结果赋给dj,即:dj=dj/PB         (3);

使用新获得的dj,计算新的Hd,从而使新的Hd为原Hd的1/PB,即nonce在第j个区块时的计算难度为原计算难度的1/PB,等价于在封装第j个区块时基于权重的算力为原来单纯的POW算力的PB倍,即:NEWcp=PB×Origcp      (4);

(3)区块链网络上的其它节点对区块进行验证时,验证区块难度时将查询封装区块的矿工权重(如该矿工的区块链帐户余额),同样按前述(1)、(2)、(3)、(4)公式核实区块难度是否符合条件,若符合通过验证,若不符合该区块无效。

2.如权利要求1所述的一种基于权重的区块链共识计算方法,其特征在于:矿工在j区块的封装算力等于该时刻其POW算力乘以其算力权重,即:Pj=P(j)pow×p(j)PB            (5);

矿工可通过两种方式来增加其区块封装算力,其一为增加其计算设备的计算能力,其二为增加其区块链算力权重(如增加其区块链帐户余额)。

3.如权利要求1所述的一种基于权重的区块链共识计算方法,其特征在于:矿工在现有计算条件下若要增加其区块封装算力,可通过增加其区块封装算力权重(如增加其区块链帐户余额)来实现,新的算力为原算力的m倍,m为:m=NEWPB/OrigPB           (6);

公式(5)中NEWPB为新的算力权重,OrigPB为原算力权重。

4.如权利要求1所述的一种基于权重的区块链共识计算方法,其特征在于:权重分散的矿工,可将其算力权重集中到某一矿工帐户,形成基于权重的算力池,算力池的总体算力等于其POW算力之和与集中权重之和之乘积,即:Poolcp=∑pow×∑PBPoolcp         (7)

5.一种基于权重的区块链共识计算系统,其特征在于,所述共识计算系统包括有如下模块:(1)矿工算力权重统计模块;(2)区块封装难度调节模块;(3)区块哈希值计算模块;

(4)区块随机数计算模块;(5)区块封装模块;(6)已封装区块难度值验证模块。

说明书全文

一种基于权重的区块链共识计算方法与系统

技术领域

[0001] 本发明涉及区块链技术领域,尤其涉及区块链共识机制中的共识计算领域。

背景技术

[0002] 区块链的共识机制,即决定区块链网络中哪个矿工取得下一个区块的封装权,是区块链的核心工作机制,是区块链取得去中心化特征,从而构建具有分布式安全和数据可信网络的关键所在。自比特币诞生到当前的主流区块链网络如以太坊,均以工作量证明(POW)作为取得共识的核心算法,该算法通过对区块头、区块数据及其它区块相关数据和一个随机数据组成的数据体进行哈希计算,要求哈希计算的结果小于某一个长整数,而这个长整数通过对该区块生成时网络中的区块封装难度系数来调节,这样,当网络中区块封装难度系数越大,则这个长整数越小,区块数据体的哈希值要小于这个长整数的几率就越小,因而遍历随机数的次数就要求越多,在确保计算时间相对稳定的条件下对矿工的计算设备的计算能力要求就越高。
[0003] 在前述共识机制条件下,矿工要有更大机率获得区块封装权,其唯一路径就是不断增加其计算设备的计算能力,因此这就有我们所看到的在中国西部偏远地区的小水电站附近大量的专门用于POW挖矿的所谓区块链矿场的出现,当前仅用于维持比特币网络算力的电力消耗就相当于整个爱尔兰相应时间的电力消耗。这些电力消耗实际上是在POW机制下区块封装权竞争的结果,除了不断推高网络整体的区块封装难度,从而使单一组织更难以控制整个网络外,实质上并无其它任何价值,反而由于不断升高的电力消耗带来了巨大的能源浪费。
[0004] 在认识到了POW共识机制所存在的不利后果之后,业界已在纷纷寻找能取代POW的新的共识机制,其中最受关注的机制就是权益证明(POS)。有关权益证明(POS)的机制和方法种类繁多,各不相同,如以太坊采用基于投注合约让权益方参与区块验证,从而获得新增区块的部分奖励的机制;部分区块链网络采用基于用户币龄获得区块封装权的机制。
[0005] 纵观这些POS机制,要么机制过于复杂,在实际部署实施时将困难重重,要么因单纯的强调POS机制,又带来网络算力的不足从而使区块链网络的分布性受到极大的影响。

发明内容

[0006] 有鉴于此,本发明设计了一种基于权重的区块链共识计算方法与系统,通过使用本方法与系统,有机融合POW与POS挖矿二者的共同优点,使矿工在保持POW共识计算整体机制不变的前提下,通过增加帐户权重来调节矿工区块封装难度系数,从而实现区块封装(挖矿)算力的提升,可在避免大量能源浪费的条件下,等价地提升区块链网络的整体区块封装难度,既实现了绿色挖矿(矿工通过普通计算机就可以参与挖矿),让区块链网络获得更大的分布性,并通过矿工帐户权重所等价增加的区块封装算力,有效防止大型传统算力矿场对规模相对较小、算力相对有限的行业性、区域性或处于启步阶段的区块链网络以取得网络控制权为核心的算力攻击。为实现上述目的,本发明的技术方案是这样实现的:
[0007] 如图1所示,设计一种基于权重的区块链共识计算方法,包括三个关键内容:
[0008] 第一,区块链矿工(区块封装者)整体上仍基于工作量证明(POW)进行区块封装,其计算内容主要为:进行持续哈希计算找到一个随机数(nonce),该随机数与区块头、区块的其它数据的集合的哈希计算值将小于一个长整数Hd,而该长整数Hd的值由区块网络中所设定的最大值Mv与在第个j区块时的区块封装难度值所决定,即:
[0009] Hd>H(Ω(nounce,Header,...))  (1)
[0010] Hd=Mv/dj  (2);
[0011] 第二,查询矿工在区块链网络中所登记的权重(如其区块链帐户余额)PB,以PB的值去除以当前区块封装难度值dj,并将计算结果赋给dj,即:
[0012] dj=dj/PB  (3);
[0013] 使用新获得的dj,计算新的Hd,从而使新的为原Hd的1/PB,即nonce在第j个区块时的计算难度为原计算难度的1/PB,等价于在封装第j个区块时基于权重的算力为原来单纯的POW算力的PB倍,即:
[0014] NEWcp=PB×Origcp  (4);
[0015] 第三,如图2所示,区块链网络上的其它节点对区块进行验证时,验证区块难度时将查询封装区块的矿工权重(如该矿工的区块链帐户余额),同样按前述(1)、(2)、(3)、(4)公式核实区块难度是否符合条件,若符合通过验证,若不符合该区块无效。
[0016] 特别说明的是,矿工在j区块的封装算力等于该时刻其POW算力乘以其算力权重,即:
[0017] Pj=P(j)Pow×P(j)PB  (5);
[0018] 因而矿工实际可通过两种方式来增加其区块封装算力,其一为增加其计算设备的计算能力,其二为增加其区块链算力权重,比如增加其区块链帐户的余额来增加其算力权重。矿工在现有计算条件下若通过增加其区块封装算力权重(如增加其区块链帐户余额)来实现,新的算力为原算力的m倍,m为:
[0019] m=NEWPB/OrigPB  (6);
[0020] 公式(5)中NEWPB新的算力权重,OrigPB为原算力权重。
[0021] 如图3所示,权重分散的矿工,可将其算力权重集中到某一矿工帐户,形成基于权重的算力池,算力池的总体算力等于其POW算力之和与集中权重之和之乘积,即:
[0022] Poolcp=∑pow×∑PB  (7)
[0023] 通过设立算力池,不具有算力条件的矿工可以将其算力权重(如其区块链帐户余额)委托给第三方,并通过其委托权力权重占第三方算力权重的比例取得相应比例的区块封装奖励收益。
[0024] 如图4所示,本共识计算系统包括有如下功能模块:(1)矿工算力权重统计模块;(2)区块封装难度调节模块;(3)区块哈希值计算模块;(4)区块随机数计算模块;(5)区块封装模块;(6)已封装区块难度值验证模块。

附图说明

[0025] 图1基于权重的共识计算区块封装流程
[0026] 图2基于权重的共识计算区块验证流程
[0027] 图3基于权重的共识计算矿池结构图
[0028] 图4基于权重的共识计算系统

具体实施方式

[0029] 下文中,以基于POW共识机制的以太坊中加入POS机制为例详细描述本发明的实施原理与优选实施例。
[0030] 在以太坊的POW共识机制中,区块的主要结构如下:
[0031]
[0032] 其中区块头的主要结构为:
[0033]
[0034] 以太坊矿工挖矿就是要通过循环搜索,找到Header结构中的随机数Nonce,使其满足如下条件:
[0035] Hash(Header,DAG,Nonce)<2256/Header.Difficulty  (8)
[0036] 即,由区块头Header、无向环数据DAG、持续搜素获得的随机数Nonce所构成的联合数据体的哈希计算值要小于2256这个大数除以区块头当前的难度系数Header.Difficulty。显然,Header.Difficulty越大,寻找Nonce和哈希计算的次数就会越多,计算难度也就越大。
[0037] 我们将权重引入以太坊共识计算,即是要基于权重调整这个Header.Difficulty。由于矿工在以太坊中的帐户余额某种程度上就代表了矿工在以太坊网络中的权重,因此我们通过查询矿工的当前帐户余额,即可获得其权重信息:
[0038] PB=eth.getBalance(coinbase)  (9)
[0039] 以所查询到的PB,在矿工每次挖矿时,调整难度系数:
[0040] Header.Difficulty=Header.Difficulty/PB  (10)
[0041] 这样,使该矿工的难度值降低为原来的1/PB倍,等价于提升其算力PB倍,由此实现矿工基于其帐户权重调整其算力的目的。在其它节点对区块进行验证时,采用前述同样的算法,从而使基于权重的区块通过验证并能编入主链。
[0042] 以前述算法为基础,在以太坊技术构架的基础上实现如上共识算法,构建基于权重的共识计算系统,需要重构如下模块:(1)矿工帐户查询模块GetBalance;(2)区块封装难度调整模块DiffcultyAdjust;(3)区块哈希值计算模块Hashmoti;(4)区块随机数计算模块NonceCompute;(5)区块封装模块BlockSeal;(6)已封装区块难度值验证模块BlockVerify。
[0043] 综上所述,本发明所设计的一种基于权重的区块链共识计算方法与系统,通过对参与挖矿的矿工区块链帐户权重的统计,基于帐户权重来调节其挖矿难度系数,从而等价地增加矿工区块封装算力。基于本方法与系统使矿工通过增加帐户权重实现区块封装(挖矿)算力的提升,可在避免当前区块链区块封装采用POW所存在的大量能源浪费的前提下,等价地提升区块链网络的整体区块封装难度,一方面实现了绿色挖矿(矿工通过普通计算机就可以参与挖矿),另一方面可以让区块链网络获得更大的分布性。同时,通过矿工帐户权重所等价增加的区块封装算力,将能有效防止大型传统算力矿场对规模相对较小、算力相对有限的行业性、区域性或处于启步阶段的区块链网络的算力攻击。
[0044] 以上所述仅为本发明的实施例说明,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用