基于equihash算法的数据存储方法、装置及系统制造方法及图纸

技术编号:31226801 阅读:26 留言:0更新日期:2021-12-08 09:33
本发明专利技术公开了一种基于equihash算法的数据存储方法、装置及系统,所述方法包括:第k轮对第k

【技术实现步骤摘要】
基于equihash算法的数据存储方法、装置及系统


[0001]本专利技术属于互联网
,尤其涉及一种基于equihash算法的数据存储方法、装置及系统。

技术介绍

[0002]Equihash是一种以内存为导向的工作证明算法;equihash利用Blake 2B算法(blake2B算法是一个哈希函数,blake2B是blake的64位版本,它可以生成最高512位的任意长度哈希)产生2百万个200比特的原始数据。这些原始数据,经过多轮的一定规则的异或碰撞计算,找到相互异或为0的512个200bit数据;如果这512个数据中不存在重复的数据,则认为找到一组解;每轮异或碰撞后要存储的数据的位宽不同,第一轮数据位宽最大,最后一轮数据位宽最小;每轮存储数据的同时,数据相关的编号也需要存储,用于回溯equihash解的512个原始数据。
[0003]但是,现有的方法存在存储的数据量很大、存储成本高的问题。

技术实现思路

[0004]本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于equihash算法的数据存储方法,其特征在于,包括:第k轮对第k

1轮存储数据进行读取,获取第k轮待处理数据以及匹配的第k轮索引序号,并将所述第k轮索引序号存储至第m存储器的尾部;其中,所述第k轮索引序号以及前k

1轮的所述索引序号依次排列;且1≤k<a;a为总轮数;当k为奇数时,m为2,当k为偶数时,m为1;对所述第k轮待处理数据进行异或碰撞计算,获取第k轮异或碰撞计算结果,以及第k+1轮索引序号;基于N比特,对所述第k轮异或碰撞计算结果进行分类,获取第k+1轮待处理数据;将所述第k+1轮待处理数据以及所述第k+1轮索引序号存储至所述第m存储器的头部,获取第k轮存储数据。2.根据权利要求1所述的方法,其特征在于,还包括:获取多个200比特的原始数据,每个所述200比特的原始数据匹配有原始索引序号;基于N比特,对多个所述200比特的原始数据进行分类,获取多个(200

N)比特的第一轮待处理数据,N为分类比特数;将所述第一轮待处理数据以及原始索引序号存储至第一存储器,获取第零轮存储数据。3.根据权利要求2所述的方法,其特征在于,所述第k轮对第k

1轮存储数据进行读取,获取第k轮待处理数据以及匹配的第k轮索引序号,并将所述第k轮索引序号存储至第m存储器的尾部,包括:当k=2n+1时,对第2n轮存储数据进行读取,获取多个(200

N*(2n+1))比特的第2n+1轮待处理数据以及匹配的第2n+1轮索引序号,并将所述第2n+1轮索引序号存储至第二存储器的尾部;其中,n≥0;当k=2n+2时,对第2n+1轮存储数据进行读取,获取多个(200

N*(2n+2))比特的第2n+2轮待处理数据以及匹配的第2n+2轮索引序号,并将所述第2n+2轮索引序号存储至所述第一存储器的尾部;所述将所述第k轮索引序号存储至第m存储器的尾部,包括:将所述第k轮索引序号从所述第一存储器或第二存储器的最大的空闲地址处开始,按照地址递减的顺序存储至所述第一存储器或第二存储器的尾部。4.根据权利要求3所述的方法,其特征在于,所述对所述第k轮待处理数据进行异或碰撞计算,获取第k轮异或碰撞计算结果,以及第k+1轮索引序号,包括:当k=2n+1时,对所述第2n+1轮待处理数据进行异或碰撞计算,获取第2n+1轮异或碰撞计算结果,以及第2n+2轮索引序号;其中,所述第2n+1轮异或碰撞计算结果包括多个(200

N*(2n+1))比特数据;当k=2n+2时,对所述第2n+2轮待处理数据进行第2n+2轮异或碰撞计算,获取第2n+2轮异或碰撞计算结果,以及第2n+3轮索引序号;其中,所述第2n+2轮异或碰撞计算...

【专利技术属性】
技术研发人员:刘明汪福全
申请(专利权)人:中科声龙科技发展北京有限公司
类型:发明
国别省市:

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

1