The invention discloses a block chain oriented dynamic hashing calculation method, device, node and computer readable storage medium. The method comprises the following steps: acquiring the object to be hashed and the height of the block to be generated; converting the height into bytes, and hashing the bytes to obtain a-bit The first byte array; according to the preset number of runs m, the first m-bit of the first byte array is calculated by n-modulus to get the second m-bit array; where n is the number of preset hash algorithms; according to the hash algorithm corresponding to each digit in the second byte array and the order of the digits, the corresponding hash algorithm is called In order to judge whether the block can be generated or not, the hash algorithm calculates the hashed object. The invention realizes dynamic generation of hash algorithm according to the height of the block, thereby ensuring the safety of the operation process.
【技术实现步骤摘要】
面向区块链的动态哈希计算方法、装置、节点及存储介质
本专利技术涉及区块链领域,尤其涉及一种面向区块链的动态哈希计算方法、装置、节点及存储介质。
技术介绍
以比特币为代表的数字货币的出现预示着区块链技术正式走进人们的视野。区块链技术本质上就是一种去中心化的分布式系统。正是由于这一特点,共识机制成为区块链技术中非常关键的一项技术,也即如何在高度分散的去中心化系统中保证分布式节点高效地针对点对点交易与协作的有效性达成共识。目前,广泛采用的共识机制有基于工作量证明(POW)、基于权益证明(POS)等。POW共识机制是最早期的一种共识机制,即利用节点的算力来获取记账权。POW算法主要通过枚举式哈希计算,依靠机器计算出一个符合规则的随机数,进而实现数据的记录、发出、存储。POW共识机制的算法简单,容易实现,只依靠算力即可达成共识,同时具有比较高的安全性。POS共识机制,是在POW共识机制的基础上发展起来的一种升级共识机制。POS共识机制根据每个分布式节点在生成新的区块时节点自身所占有的权益比例来保证记账权分配,记账权获得的难度与节点持有的权益成反比,这样不需要消耗外部的算力和资源。POW共识机制的最大缺点是资源消耗大,浪费能源,另外,算力的不平衡造成共识的周期较长,同时,单纯的依靠机器算力的方式也容易导致51%的风险。而POS共识机制本质上仍然是依靠算力来提高权益比例,进而获取记账权,而且还容易造成高权益的节点不参与记账的情况,缺乏监管性。由于POW共识机制的算法仅仅依靠枚举式哈希计算,一方面,枚举过程不能动态适应区块的高度,造成运算时时间的加长,从而能源消耗大。另一 ...
【技术保护点】
1.一种面向区块链的动态哈希计算方法,其特征在于,包括如下步骤:获取待进行哈希的对象以及待生成的区块的高度;将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组;根据预设的运行次数m,对所述第一字节数组的前m位进行取n模计算,得到m位的第二字节数组;其中,n为预设的哈希算法的种类数;根据第二字节数组中的每位数字对应的哈希算法以及数字的顺序,调用相应的哈希算法对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块。
【技术特征摘要】
1.一种面向区块链的动态哈希计算方法,其特征在于,包括如下步骤:获取待进行哈希的对象以及待生成的区块的高度;将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组;根据预设的运行次数m,对所述第一字节数组的前m位进行取n模计算,得到m位的第二字节数组;其中,n为预设的哈希算法的种类数;根据第二字节数组中的每位数字对应的哈希算法以及数字的顺序,调用相应的哈希算法对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块。2.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述n为11。3.根据权利要求2所述的面向区块链的动态哈希计算方法,其特征在于,定义A~K分别于11中哈希函数一一对应;并定义0~10分别对应A~K;则所述根据第二字节数组中的每位数字对应的哈希算法以及数字的顺序,调用相应的哈希算法对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块,具体为:根据所述第二字节数组中的每位数字对应生成包括m个字母的字母数组;获取与字母数组中的每个字母相应的m个哈希函数;根据m个哈希函数构成m重的复合哈希函数对待进行哈希的对象进行哈希计算,以根据计算结果判断是否能够生成该区块。4.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述待进行哈希的对象为待生成的区块的区块头,且该对象包含一个随运算次数变化的nonce值。5.根据权利要求1所述的面向区块链的动态哈希计算方法,其特征在于,所述将所述高度转为字节,并对所述字节进行哈希运算,得到a位的第一字节数组,具体为:将所述高度中包含的各个数字转换为二进制,再根据转换后的二进制生成字节;采用SHA256对所述字节进行哈希计算,得到对应的哈希值;将所述哈希值转换为10进制的具有3...
【专利技术属性】
技术研发人员:魏松杰,莫冰,刘才,陈樟荣,杨锋,戴闽华,
申请(专利权)人:深圳沃链科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。