一种区块链共识算法中主节点选取的方法和装置制造方法及图纸

技术编号:24946226 阅读:27 留言:0更新日期:2020-07-17 22:56
本发明专利技术提供一种区块链共识算法中主节点选取的方法和装置,其中该方法包括:获取各节点的算力,确定满足预设标准算力的至少一个节点;获取至少一个节点的积分增长率,其中积分增长率表示对区块链系统的贡献量化值;获取至少一个节点的得票数;根据至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点。本发明专利技术通过获取的节点的算力、节点积分增长率、节点得票数三项指标来制衡投票所决定的全部选举权,让每一个候选节点更加公平的去竞选主节点,让更有能力的节点成为区块生产者,这样记账节点的产生方式更加公平,降低了选举过程中,贿选的作用。

【技术实现步骤摘要】
一种区块链共识算法中主节点选取的方法和装置
本专利技术涉及区块链领域,尤其涉及一种种区块链共识算法中主节点选取的方法和装置。
技术介绍
区块链节点就是我们俗称的矿工。每个矿工的不同算力,决定了它能分配到多少记帐权,收获多少奖励。在区块链网络中的矿工,就像传统的银行,都是为用户的交易提供记帐服务的。由于所有的公有链都是社区自治,没有中心领导来决策,为了维护公有链,必须多数社区用户达成一致意见。而如何达成,就是利用共识机制。区块链就是一个大型的公共账本,当整个系统要达到传说中的每秒百万级的tps,就必须要减少节点说,然而过少的节点又会对整个网络的安全性造成影响。EOS设计者提出的“21个超级节点”的解决方案正好可以平衡去中心化程度和出块率。所谓超级节点就是指区块链网络中,那些收集交易信息并打包到区块里的节点,也称作“区块生产者”。传统的DPoS共识算法机制中,区块链生产者节点(主节点)是直接通过选举产生的。整个网络的票最高的2n+1个节点,将负责出块。该算法纯粹依靠投票来选举节点,在实际运行过程中,存在投票率低,选举舞弊等可能性,影响了算法的公平性。
技术实现思路
为了解决现有技术中节点选举靠投票的方式带来了投票率低,选举舞弊可能性,影响了算法的公平性的问题,本专利技术提供一种区块链共识算法中主节点选取的方法和装置。第一方面,本专利技术提供一种区块链共识算法中主节点选取的方法,该方法包括:获取各节点的算力,确定满足预设标准算力的至少一个节点;获取至少一个节点的积分增长率,其中积分增长率表示对区块链系统的贡献量化值;获取至少一个节点的得票数;根据至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点。进一步地,根据至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点包括:根据至少一个节点的算力、积分增长率、得票数,评分模型,确定评分模型所得数值排名靠前的奇数个节点;根据奇数个节点以及共识机制,确定最终的主节点。进一步地,评分模型利用下式表示:其中,C表示节点算力;I表示节点的积分增长率;V表示节点的得票数;分别表示各个节点的算力权重值、积分增长率权重值、得票数权重值,γ,η,μ,ρ是评分模型R训练后确定的固定系数值,其中ρ<1且ρ≠0。进一步地,根据奇数个节点以及共识机制,确定最终的主节点包括:根据节点的标识符、预设的参数设置窗口和区块链钱包状态指示对奇数个节点进行选举,得到能参与共识机制算法的节点;将能参与共识机制算法的节点与共识机制结合,确定最终的主节点。第二方面,本专利技术提供一种区块链共识算法中主节点选取的装置,该装置包括:获取节点算力模块,用于获取各节点的算力,确定满足预设标准算力的至少一个节点;获取节点积分增长率模块,用于获取至少一个节点的积分增长率,其中积分增长率表示对区块链系统的贡献量化值;获取节点得票数模块,用于获取至少一个节点的得票数;最终的主节点确定模块,用于根据至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点。进一步地,最终的主节点确定模块包括:确定排名靠前的奇数个节点单元,用于根据至少一个节点的算力、积分增长率、得票数,评分模型,确定评分模型所得数值排名靠前的奇数个节点;确定最终主节点单元,用于根据奇数个节点以及共识机制,确定最终的主节点。进一步地,评分模型利用下式表示:其中,C表示节点算力;I表示节点的积分增长率;V表示节点的得票数;分别表示各个节点的算力权重值、积分增长率权重值、得票数权重值,γ,η,μ,ρ是评分模型R训练后确定的固定系数值,其中ρ<1且ρ≠0。进一步地,确定最终主节点单元包括:确定参与共识机制算法的节点单元,用于根据节点的标识符、预设的参数设置窗口和区块链钱包状态指示对奇数个节点进行选举,得到能参与共识机制算法的节点;与共识机制结合单元,用于将能参与共识机制算法的节点与共识机制结合,确定最终的主节点。第三方面,本专利技术提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面提供的区块链共识算法中主节点选取的方法的步骤。第四方面,本专利技术提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面提供的区块链共识算法中主节点选取的方法的步骤。本专利技术通过获取的节点的算力、节点积分增长率、节点得票数三项指标来制衡投票所决定的全部选举权,让每一个候选节点更加公平的去竞选主节点,让更有能力的节点成为区块生产者,这样记账节点的产生方式更加公平,降低了选举过程中,贿选的作用。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的区块链共识算法中主节点选取的方法流程示意图;图2为本专利技术实施例提供的区块链节点池选取方法流程示意图;图3为本专利技术实施例提供的区块链共识算法中主节点选取的装置框图;图4为本专利技术实施例提供的电子设备框图。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。传统的DPoS共识算法机制中,区块链生产者节点(主节点)是直接通过选举产生的,该算法纯粹依靠投票来选举节点,在实际运行过程中,存在投票率低,选举舞弊等可能性,影响了算法的公平性。为了解决上述问题,本专利技术实施例提供一种区块链共识算法中主节点选取的方法,该方法包括:步骤S101,获取各节点的算力,确定满足预设标准算力的至少一个节本文档来自技高网
...

【技术保护点】
1.一种区块链共识算法中主节点选取的方法,其特征在于,所述方法包括:/n获取各节点的算力,确定满足预设标准算力的至少一个节点;/n获取所述至少一个节点的积分增长率,其中所述积分增长率表示对区块链系统的贡献量化值;/n获取所述至少一个节点的得票数;/n根据所述至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点。/n

【技术特征摘要】
1.一种区块链共识算法中主节点选取的方法,其特征在于,所述方法包括:
获取各节点的算力,确定满足预设标准算力的至少一个节点;
获取所述至少一个节点的积分增长率,其中所述积分增长率表示对区块链系统的贡献量化值;
获取所述至少一个节点的得票数;
根据所述至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点。


2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个节点的算力、积分增长率、得票数,评分模型以及共识机制,确定最终的主节点包括:
根据所述至少一个节点的算力、积分增长率、得票数,评分模型,确定评分模型所得数值排名靠前的奇数个节点;
根据所述奇数个节点以及共识机制,确定最终的主节点。


3.根据权利要求1所述的方法,其特征在于,所述评分模型利用下式表示:



其中,C表示节点算力;I表示节点的积分增长率;V表示节点的得票数;分别表示各个节点的算力权重值、积分增长率权重值、得票数权重值,γ,η,μ,ρ是评分模型R训练后确定的固定系数值,其中ρ<1且ρ≠0。


4.根据权利要求2所述的方法,其特征在于,所述根据所述奇数个节点以及共识机制,确定最终的主节点包括:
根据节点的标识符、预设的参数设置窗口和区块链钱包状态指示对所述奇数个节点进行选举,得到能参与共识机制算法的节点;
将所述能参与共识机制算法的节点与共识机制结合,确定最终的主节点。


5.一种区块链共识算法中主节点选取的装置,其特征在于,所述装置包括:
获取节点算力模块,用于获取各节点的算力,确定满足预设标准算力的至少一个节点;
获取节点积分增长率模块,用于获取所述至少一个节点的积分增长率,其中所述积分增长率表示对区块...

【专利技术属性】
技术研发人员:方玉书
申请(专利权)人:上海玳鸽信息技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1