[发明专利]应用于区块链节点的验证方法及装置有效
申请号: | 201910519281.4 | 申请日: | 2019-06-17 |
公开(公告)号: | CN110222537B | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 杨慧;吉建勋 | 申请(专利权)人: | 北京瑞策科技有限公司 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06Q40/04 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用于 区块 节点 验证 方法 装置 | ||
1.一种应用于区块链节点的验证方法,其特征在于,区块链节点网络包括多个出块节点和多个验证节点,所述方法适用于当前出块节点,所述当前出块节点为所述多个出块节点中的任意一个,所述方法包括:
生成待验证区块,根据所述待验证区块进行第一哈希运算得到第一哈希值;
确定第一数字签名,所述第一数字签名通过对所述第一哈希值进行签名得到;
对所述第一数字签名进行第二哈希运算,得到第二哈希值;
根据所述第二哈希值以及预设的随机规则,在所述多个验证节点中选择目标验证节点;
向所述目标验证节点发送所述待验证区块,以便所述目标验证节点验证所述待验证区块;
所述预设的随机规则包括:
将所述第二哈希值转换为10进制,并取第二数值的余数,所述第二数值根据所述多个验证节点的数量确定;
确定所述余数对应的验证节点为所述目标验证节点;
所述第一哈希运算与所述第二哈希运算为相同或不同的哈希运算。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一数字签名进行第二哈希运算,得到第二哈希值,包括:
将所述第一数字签名和第一数值进行第二哈希运算得到第二哈希值,所述第一数值为1至n的任意数值或者所述当前出块节点的序列号,其中,n为任意值。
3.一种应用于区块链节点的验证方法,其特征在于,区块链节点网络包括多个出块节点和多个验证节点,所述方法适用于当前验证节点,所述当前验证节点为所述多个验证节点中的任意一个,所述方法包括:
接收当前出块节点发送的待验证区块、公钥和第一数字签名;
使用所述公钥对所述第一数字签名进行验证,得到第一哈希值;
对所述待验证区块进行第一哈希运算得到第三哈希值;
如果所述第一哈希值和所述第三哈希值相同,对所述第一数字签名进行第二哈希运算,得到第二哈希值;
根据所述第二哈希值以及预设的随机规则,确定目标验证节点的序号;
如果所述目标验证节点的序号为所述当前验证节点的序号,对所述待验证区块进行验证,并将验证结果在所述区块链节点网络中进行广播;
所述预设的随机规则包括:
将所述第二哈希值转换为10进制,并取第二数值的余数,所述第二数值根据所述多个验证节点的数量确定;
确定所述余数对应的验证节点为所述目标验证节点;
所述第一哈希运算与所述第二哈希运算为相同或不同的哈希运算。
4.根据权利要求3所述的方法,其特征在于,所述对所述第一数字签名进行第二哈希运算,得到第二哈希值,包括:
将所述第一数字签名和第一数值进行第二哈希运算得到第二哈希值,所述第一数值为1至n的任意数值或者所述当前出块节点的序列号,其中,n为任意值。
5.一种应用于区块链节点的验证装置,其特征在于,区块链节点网络包括多个出块节点和多个验证节点,所述装置适用于当前出块节点,所述当前出块节点为所述多个出块节点中的任意一个,所述装置包括:
第一哈希单元,用于生成待验证区块,根据所述待验证区块进行第一哈希运算得到第一哈希值;
确定单元,用于确定第一数字签名,所述第一数字签名通过对所述第一哈希值进行签名得到;
第二哈希单元,用于对所述第一数字签名进行第二哈希运算,得到第二哈希值;
选择单元,用于根据所述第二哈希值以及预设的随机规则,在所述多个验证节点中选择目标验证节点;
发送单元,用于向所述目标验证节点发送所述待验证区块,以便所述目标验证节点验证所述待验证区块;
所述预设的随机规则包括:
将所述第二哈希值转换为10进制,并取第二数值的余数,所述第二数值根据所述多个验证节点的数量确定;
确定所述余数对应的验证节点为所述目标验证节点;
所述第一哈希运算与所述第二哈希运算为相同或不同的哈希运算。
6.一种应用于区块链节点的验证装置,其特征在于,区块链节点网络包括多个出块节点和多个验证节点,所述装置适用于当前验证节点,所述当前验证节点为所述多个验证节点中的任意一个,所述装置包括:
接收单元,用于接收当前出块节点发送的待验证区块、公钥和第一数字签名;
第一验证单元,用于使用所述公钥,对所述第一数字签名进行验证,得到第一哈希值;
第一哈希单元,用于对所述待验证区块进行第一哈希运算得到第三哈希值;
第二哈希单元,如果所述第一哈希值和所述第三哈希值相同,用于对所述第一数字签名进行第二哈希运算,得到第二哈希值;
确定单元,用于根据所述第二哈希值以及预设的随机规则,确定目标验证节点的序号;
第二验证单元,如果所述目标验证节点的序号为所述当前验证节点的序号,用于对所述待验证区块进行验证,并将验证结果在所述区块链节点网络中进行广播;
所述预设的随机规则包括:
将所述第二哈希值转换为10进制,并取第二数值的余数,所述第二数值根据所述多个验证节点的数量确定;
确定所述余数对应的验证节点为所述目标验证节点;
所述第一哈希运算与所述第二哈希运算为相同或不同的哈希运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京瑞策科技有限公司,未经北京瑞策科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910519281.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于分布式记账的仓单数据存储方法
- 下一篇:涉及区块链的验证方法及装置