[发明专利]基于equihash算法的数据存储方法、装置及系统有效
申请号: | 202111294883.8 | 申请日: | 2021-11-03 |
公开(公告)号: | CN113760197B | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 刘明;汪福全 | 申请(专利权)人: | 中科声龙科技发展(北京)有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F16/901;G06F16/906 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 王燕 |
地址: | 100083 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 equihash 算法 数据 存储 方法 装置 系统 | ||
本发明公开了一种基于equihash算法的数据存储方法、装置及系统,所述方法包括:第k轮对第k‑1轮存储数据进行读取,获取第k轮待处理数据以及匹配的第k轮索引序号,并将所述第k轮索引序号存储至第m存储器的尾部;其中,所述第k轮索引序号以及前k‑1轮的所述索引序号依次排列;对所述第k轮待处理数据进行异或碰撞计算,获取第k轮异或碰撞计算结果,以及第k+1轮索引序号;基于N比特,对所述第k轮异或碰撞计算结果进行分类,获取第k+1轮待处理数据;将所述第k+1轮待处理数据以及所述第k+1轮索引序号存储至所述第m存储器的头部,获取第k轮存储数据。本发明的技术方案,大大地节省了存储空间。
技术领域
本发明属于互联网技术领域,尤其涉及一种基于equihash算法的数据存储方法、装置及系统。
背景技术
Equihash是一种以内存为导向的工作证明算法;equihash利用Blake 2B算法(blake2B算法是一个哈希函数,blake2B是blake的64位版本,它可以生成最高512位的任意长度哈希)产生2百万个200比特的原始数据。这些原始数据,经过多轮的一定规则的异或碰撞计算,找到相互异或为0的512个200bit数据;如果这512个数据中不存在重复的数据,则认为找到一组解;每轮异或碰撞后要存储的数据的位宽不同,第一轮数据位宽最大,最后一轮数据位宽最小;每轮存储数据的同时,数据相关的编号也需要存储,用于回溯equihash解的512个原始数据。
但是,现有的方法存在存储的数据量很大、存储成本高的问题。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的在于提出一种基于equihash算法的数据存储方法、装置及系统。
为了解决上述技术问题,本发明的实施例提供如下技术方案:
一种基于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轮存储数据。
可选的,还包括:
获取多个200比特的原始数据,每个所述200比特的原始数据匹配有原始索引序号;
基于N比特,对多个所述200比特的原始数据进行分类,获取多个(200-N)比特的第一轮待处理数据,N为分类比特数;
将所述第一轮待处理数据以及原始索引序号存储至第一存储器,获取第零轮存储数据。
可选的,第k轮对第k-1轮存储数据进行读取,获取第k轮待处理数据以及匹配的第k轮索引序号,并将所述第k轮索引序号存储至第m存储器的尾部;其中,所述第k轮索引序号以及前k-1轮的所述索引序号依次排列;且1≤k<a;a为总轮数;当k为奇数时,m为2,当k为偶数时,m为1,包括:
当k=2n+1时,对第2n轮存储数据进行读取,获取多个(200-N*(2n+1))比特的第2n+1轮待处理数据以及匹配的第2n+1轮索引序号,并将所述第2n+1轮索引序号存储至第二存储器的尾部;其中,n≥0;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科声龙科技发展(北京)有限公司,未经中科声龙科技发展(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111294883.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置