一种区块链的记账节点选择方法及装置制造方法及图纸

技术编号:27745680 阅读:9 留言:0更新日期:2021-03-19 13:40
本发明专利技术提供一种区块链的记账节点选择方法及装置,所述方法包括:确定M个A类代理节点,所述A类代理节点为区块链论坛中的观点领袖节点;确定N个B类代理节点,所述N个B类代理节点分别属于N个不同阶层;从所述A类代理节点和所述B类代理节点中选出下一个区块的记账节点;在执行记账操作过程中,将下一个区块的记账节点的选择过程与结果写入所述区块链中;向所述下一个区块的记账节点发送下一个区块记账通知。该方法及装置解决了现有的区块链存在无法体现各阶层代币拥有者的权益,以及随着加入节点的增多,挖矿越来越困难,能耗越来越大的问题。

【技术实现步骤摘要】
一种区块链的记账节点选择方法及装置
本专利技术涉及区块链
,尤其涉及一种区块链的记账节点选择方法及装置。
技术介绍
区块链创建之初就已经注入大量代币,并且代币本身就是通过现金购买等方式获得,单价较高,庞大的代币价值要求在系统达成共识机制时体现自己的权益。与此同时,不同账号拥有的代币数量差距巨大,如何体现各阶层代币拥有者的权益成为一个较大的问题。此外,对于传统的采用工作量证明(PoW)达成共识机制的区块链,随着时间推移,加入节点的增多,挖矿越来越困难,能耗越来越大,对环境、生态、社会的影响逐渐趋于恶化;与此同时,随着出块的增多,挖出的代币逐渐庞大,而且代币单价不菲,庞大的代币价值也要求有相应的权益。也存在前述的问题。
技术实现思路
本专利技术所要解决的技术问题是针对现有技术的上述不足,提供一种区块链的记账节点选择方法及装置,用以解决现有的区块链存在无法体现各阶层代币拥有者的权益,以及随着加入节点的增多,挖矿越来越困难,能耗越来越大的问题。第一方面,本专利技术实施例提供一种区块链的记账节点选择方法,应用于区块链中的当前记账节点,所述方法包括:确定M个A类代理节点,所述A类代理节点为区块链论坛中的观点领袖节点;确定N个B类代理节点,所述N个B类代理节点分别属于N个不同阶层;从所述A类代理节点和所述B类代理节点中选出下一个区块的记账节点;在执行记账操作过程中,将下一个区块的记账节点的选择过程与结果写入所述区块链中;向所述下一个区块的记账节点发送下一个区块记账通知。优选地,所述确定M个A类代理节点,包括:获取区块链论坛中所有发布信息的节点所对应的A类账户;对各A类帐户按照第一记账权益的多少进行从大到小排序,所述第一记账权益用于衡量区块链中的其他节点对所述发布信息的节点所发布信息的支持程度;将排序后的前M个A类账户所对应的节点确定为所述区块链论坛中的观点领袖节点;将M个所述观点领袖节点确定为A类代理节点。优选地,所述确定N个B类代理节点,包括:获取区块链中所有节点的B类账户以及所对应的第二记账权益,所述第二记账权益为各节点对应的剩余记账权益;对各B类帐户按照第二记账权益的多少进行从小到大排序;将排序后的所述B类账户从前到后划分成N个阶层;从N个阶层中的每个阶层所对应的B类账户中随机选择一个B类账户;将随机选择出的N个所述B类账户所对应的节点确定为B类代理节点。优选地,所述第一记账权益用于投票,所述第二记账权益用于交易或投票;所述方法还包括:向区块链论坛中发布信息以及自身的A类账户,以使所述区块链中的其他节点对所述当前记账节点进行投票。优选地,所述将排序后的所述B类账户从前到后划分成N个阶层,具体包括:S1,获取阶层平均第二记账权益,所述阶层平均第二记账权益为排序后的所有B类账户的第二记账权益总和与阶层数的比值;S2,获取排序后的所述B类账户中未分配的B类账户;S3,将所述未分配的B类账户的第二记账权益从前到后依次累加,若前K个B类账户的第二记账权益总和小于等于所述阶层平均第二记账权益,且前K+1个B类账户的第二记账权益总和大于所述阶层平均第二记账权益,则将所述前K个B类账户划分为一组;S4,判断N个阶层是否划分完毕,若是则结束本流程,否则返回执行步骤S2。优选地,所述从所述A类代理节点和所述B类代理节点中选出下一个区块的记账节点,包括:对所述M个A类代理节点和N个B类代理节点进行编号;向所述M个A类代理节点和N个B类代理节点分别发送数值反馈通知,所述数值反馈通知用于指示在限定时间内向所述当前记账节点反馈一个大于零的整数;接收限定时间内所述A类代理节点和B类代理节点分别反馈的数值,并根据反馈的所述数值确定下一个区块的记账节点的编号。优选地,所述根据反馈的所述数值确定下一个区块的记账节点的编号的步骤中,所述下一个区块的记账节点的编号根据以下公式确定:其中,loc为下一个区块的记账节点的编号,Rj为进行编号后的第j个A类代理节点或B类代理节点反馈的数值。第二方面,本专利技术实施例提供一种区块链的记账节点选择装置,设置于区块链中的当前记账节点,所述装置包括:A类代理确定模块,用于确定M个A类代理节点,所述A类代理节点为区块链论坛中的观点领袖节点;B类代理确定模块,用于确定N个B类代理节点,所述N个B类代理节点属于N个不同阶层;记账节点选择模块,与所述A类代理确定模块和B类代理确定模块连接,用于从所述A类代理节点和B类代理节点中选出下一个区块的记账节点;记账模块,与所述记账节点选择模块连接,用于在执行记账操作过程中,将下一个区块的记账节点的选择过程与结果写入所述区块链中;通知发送模块,与所述记账节点选择模块连接,用于向所述下一个区块的记账节点发送下一个区块记账通知。优选地,所述A类代理确定模块包括:A类账户获取单元,用于获取区块链论坛中所有发布信息的节点所对应的A类账户;A类账户排序单元,用于对各A类帐户按照第一记账权益的多少进行从大到小排序,所述第一记账权益用于衡量区块链中的其他节点对所述发布信息的节点所发布信息的支持程度;观点领袖节点确定单元,用于将所述前M个A类账户所对应的节点确定为所述区块链论坛中的观点领袖节点;A类代理确定单元,用于将所述观点领袖节点确定为A类代理节点。优选地,所述B类代理确定模块包括:B类账户获取单元,用于获取区块链中所有节点的B类账户以及所对应的第二记账权益;B类账户排序单元,用于对各B类帐户按照第二记账权益的多少进行从小到大排序,所述第二记账权益为各节点对应的剩余记账权益;阶层划分单元,用于将排序后的所述B类账户从前到后划分成N个阶层;随机选择单元,用于从所述每个阶层所对应的B类账户中随机选择一个B类账户;B类代理确定单元,用于将所述随机选择出的N个B类账户所对应的节点确定为B类代理节点。本专利技术实施例提供的区块链的记账节点选择方法及装置,采用混合的DPOS(DelegatedProofofStake,代理权益证明)机制,在区块链中,生成除创世区块外的每个区块的记账节点,通过当前记账节点选择确定下一个区块的记账节点,由下一个区块的记账节点直接记账,能够解决现有的工作量证明(PoW)机制中所有的节点为了争得记账权都参与挖矿,消耗大量电力和算力,而只有最先算出哈希运算解的节点才能获得一次记账权,从而导致挖矿能耗高的问题。此外,通过当前记账节点产生A类代理节点和B类代理节点,其中,A类代理节点为区块链论坛中的观点领袖节点,B类代理节点为各阶层代表,再从所述A、B两类代理节点中选出下一区块的记账节点,能够使得各阶层的权益得以体现,解决了现有的区块链存在无法体现各阶层代币拥有者的权益,以及随着加入节点的增多,挖矿越来越困难,能耗越来越大的问题。...

【技术保护点】
1.一种区块链的记账节点选择方法,其特征在于,应用于区块链中的当前记账节点,所述方法包括:/n确定M个A类代理节点,所述A类代理节点为区块链论坛中的观点领袖节点;/n确定N个B类代理节点,所述N个B类代理节点分别属于N个不同阶层;/n从所述A类代理节点和所述B类代理节点中选出下一个区块的记账节点;/n在执行记账操作过程中,将下一个区块的记账节点的选择过程与结果写入所述区块链中;/n向所述下一个区块的记账节点发送下一个区块记账通知。/n

【技术特征摘要】
1.一种区块链的记账节点选择方法,其特征在于,应用于区块链中的当前记账节点,所述方法包括:
确定M个A类代理节点,所述A类代理节点为区块链论坛中的观点领袖节点;
确定N个B类代理节点,所述N个B类代理节点分别属于N个不同阶层;
从所述A类代理节点和所述B类代理节点中选出下一个区块的记账节点;
在执行记账操作过程中,将下一个区块的记账节点的选择过程与结果写入所述区块链中;
向所述下一个区块的记账节点发送下一个区块记账通知。


2.根据权利要求1所述的区块链的记账节点选择方法,其特征在于,所述确定M个A类代理节点,包括:
获取区块链论坛中所有发布信息的节点所对应的A类账户;
对各A类帐户按照第一记账权益的多少进行从大到小排序,所述第一记账权益用于衡量区块链中的其他节点对所述发布信息的节点所发布信息的支持程度;
将排序后的前M个A类账户所对应的节点确定为所述区块链论坛中的观点领袖节点;
将M个所述观点领袖节点确定为A类代理节点。


3.根据权利要求2所述的区块链的记账节点选择方法,其特征在于,所述确定N个B类代理节点,包括:
获取区块链中所有节点的B类账户以及所对应的第二记账权益,所述第二记账权益为各节点对应的剩余记账权益;
对各B类帐户按照第二记账权益的多少进行从小到大排序;
将排序后的所述B类账户从前到后划分成N个阶层;
从N个阶层中的每个阶层所对应的B类账户中随机选择一个B类账户;
将随机选择出的N个所述B类账户所对应的节点确定为B类代理节点。


4.根据权利要求3所述的区块链的记账节点选择方法,其特征在于,所述第一记账权益用于投票,所述第二记账权益用于交易或投票;所述方法还包括:
向区块链论坛中发布信息以及自身的A类账户,以使所述区块链中的其他节点对所述当前记账节点进行投票。


5.根据权利要求4所述的区块链的记账节点选择方法,其特征在于,所述将排序后的所述B类账户从前到后划分成N个阶层,具体包括:
S1,获取阶层平均第二记账权益,所述阶层平均第二记账权益为排序后的所有B类账户的第二记账权益总和与阶层数的比值;
S2,获取排序后的所述B类账户中未分配的B类账户;
S3,将所述未分配的B类账户的第二记账权益从前到后依次累加,若前K个B类账户的第二记账权益总和小于等于所述阶层平均第二记账权益,且前K+1个B类账户的第二记账权益总和大于所述阶层平均第二记账权益,则将所述前K个B类账户划分为一组;
S4,判断N个阶层是否划分完毕,若是则结束本流程,否则返回执行步骤S2。


6.根据权利要求4所述的区块链的记账节点选择方法,其特征在于,所述从所述A类代理节点和所述B类代理节点中选出下一个区块的记...

【专利技术属性】
技术研发人员:蒋美景
申请(专利权)人:中国联合网络通信集团有限公司
类型:发明
国别省市:北京;11

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

1