[发明专利]面向区块链的动态哈希计算方法、装置、节点及存储介质有效
申请号: | 201810168281.X | 申请日: | 2018-02-28 |
公开(公告)号: | CN108512650B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 魏松杰;莫冰;刘才;陈樟荣;杨锋;戴闽华 | 申请(专利权)人: | 南京思利华信息科技有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;G06Q20/38 |
代理公司: | 厦门智慧呈睿知识产权代理事务所(普通合伙) 35222 | 代理人: | 郭福利 |
地址: | 210094 江苏省南京市秦淮区永智路6号*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 区块 动态 计算方法 装置 节点 存储 介质 | ||
1.一种面向区块链的动态哈希计算方法,其特征在于,包括如下步骤:
获取待进行哈希的对象以及待生成的区块的高度;其中,待进行哈希的对象为待生成区块的区块头;
将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组;
根据预设的运行次数m,对所述第一字节数组的前m位进行取n模计算,得到m位的第二字节数组;其中,n为预设的哈希算法的种类数;
根据第二字节数组中的每位数字对应的哈希算法以及数字的顺序,调用相应的哈希算法对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块;其中,具体为:根据所述第二字节数组中的每位数字对应生成包括m个字母的字母数组;获取与字母数组中的每个字母相应的m个哈希函数;根据m个哈希函数构成m重的复合哈希函数对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块。
2.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述n为11。
3.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述待进行哈希的对象为待生成的区块的区块头,且该对象包含一个随运算次数变化的nonce值。
4.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组,具体为:
将所述高度中包含的各个数字转换为二进制,再根据转换后的二进制生成字节;
采用SHA256对所述字节进行哈希计算,得到对应的哈希值;
将所述哈希值转换为10进制的具有32位的第一字节数组。
5.一种面向区块链的动态哈希计算装置,其特征在于,包括:
获取单元,用于获取待进行哈希的对象以及待生成的区块的高度;其中,待进行哈希的对象为待生成区块的区块头;
第一字节数组计算单元,用于将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组;
第二字节数组计算单元,用于根据预设的运行次数m,对所述第一字节数组的前m位进行取n模计算,得到m位的第二字节数组;其中,n为预设的哈希算法的种类数;
哈希计算单元,用于根据第二字节数组中的每位数字对应的哈希算法以及数字的顺序,调用相应的哈希算法对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块;其中,所述哈希计算单元具体包括:
字母数组生成模块,用于根据所述第二字节数组中的每位数字对应生成包括m个字母的字母数组;
哈希函数获取模块,用于获取与字母数组中的每个字母相应的m个哈希函数;
哈希计算模块,用于根据m个哈希函数构成m重的复合哈希函数对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块。
6.根据权利要求5所述的面向区块链的动态哈希计算装置,其特征在于,所述n为11。
7.一种面向区块链的动态哈希计算节点,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4中任意一项所述的面向区块链的动态哈希计算方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至4中任意一项所述的面向区块链的动态哈希计算方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京思利华信息科技有限公司,未经南京思利华信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810168281.X/1.html,转载请声明来源钻瓜专利网。