[发明专利]区块链的共识节点确定方法、装置、设备及存储介质有效
申请号: | 201910890951.3 | 申请日: | 2019-09-20 |
公开(公告)号: | CN110599173B | 公开(公告)日: | 2021-08-17 |
发明(设计)人: | 刘攀;李茂材;王宗友;蓝虎;张劲松;杨常青 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06Q20/38 | 分类号: | G06Q20/38 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 祝亚男 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 共识 节点 确定 方法 装置 设备 存储 介质 | ||
1.一种区块链的共识节点确定方法,其特征在于,应用于区块链系统中本轮的一个共识节点,所述方法包括:
接收多个参选节点发送的交易数据,每个参选节点的交易数据包括每个参选节点的节点签名、以及每个参选节点基于随机数种子生成的随机数和随机数校验数据,所述多个参选节点是指所述区块链系统中进行权益抵押的节点;
对每个参选节点的节点签名进行校验,以及基于每个参选节点生成的随机校验数据对每个参选节点生成的随机数进行校验;
当校验通过时,对每个参选节点生成的随机数进行哈希计算,得到每个参选节点的随机数的哈希值;将每个参选节点的随机数的哈希值与第一指定数值相除,得到每个参选节点对应的第一数值;基于每个参选节点对应的第一数值和抵押权益值,确定每个参选节点的选中概率;
基于每个参选节点的选中概率,从所述多个参选节点中确定下一轮的共识节点。
2.如权利要求1所述的方法,其特征在于,所述基于每个参选节点对应的第一数值和抵押权益值,确定每个参选节点的选中概率,包括:
将每个参选节点的抵押权益值转化为指定位数的浮点数;
确定转化后的抵押权益值的倒数,得到第二数值;
将所述第二数值与第二指定数值相乘,得到第三数值;
将以每个参选节点对应的第一数值为底数、以所述第三数值为指数的数值作为每个参考节点的选中概率。
3.如权利要求1-2任一项所述的方法,其特征在于,所述基于每个参选节点的选中概率,从所述多个参选节点中确定下一轮的共识节点,包括:
基于每个参选节点的选中概率,按照选中概率从大到小的顺序对所述多个参选节点进行排序;
将排序后的多个参选节点中的前数量阈值个参选节点确定为所述下一轮的共识节点。
4.如权利要求1所述的方法,其特征在于,所述对每个参选节点的节点签名进行校验,以及基于每个参选节点生成的随机校验数据对每个参选节点生成的随机数进行校验,包括:
根据每个参选节点的公钥,对每个参选节点的节点签名的合法性进行校验,以及根据每个参选节点的随机数验证数据和公钥,对每个参选节点的随机数的正确性进行校验;
当确定每个参选节点的节点签名合法且对应的随机数正确时,确定校验通过。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
通过分布式秘钥生成DKG或BLS算法,生成随机数种子;
基于所述随机数种子和私钥,生成本端的随机数和随机数验证数据;
基于本端的节点签名、所生成的随机数和随机数验证数据生成交易数据,在所述区块链系统中广播所生成的交易数据。
6.一种区块链的共识节点确定装置,其特征在于,应用于区块链系统中本轮的一个共识节点,所述装置包括:
接收模块,用于接收多个参选节点发送的交易数据,每个参选节点的交易数据包括每个参选节点的节点签名、以及每个参选节点基于随机数种子生成的随机数和随机数校验数据,所述多个参选节点是指所述区块链系统中进行权益抵押的节点;
校验模块,用于对每个参选节点的节点签名进行校验,以及基于每个参选节点生成的随机校验数据对每个参选节点生成的随机数进行校验;
第一确定模块,用于当校验通过时,对每个参选节点生成的随机数进行哈希计算,得到每个参选节点的随机数的哈希值;将每个参选节点的随机数的哈希值与第一指定数值相除,得到每个参选节点对应的第一数值;基于每个参选节点对应的第一数值和抵押权益值,确定每个参选节点的选中概率;
第二确定模块,用于基于每个参选节点的选中概率,从所述多个参选节点中确定下一轮的共识节点。
7.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现如权利要求1至5任一所述的区块链的共识节点确定方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由处理器加载并执行以实现如权利要求1至5任一所述的区块链的共识节点确定方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910890951.3/1.html,转载请声明来源钻瓜专利网。