【技术实现步骤摘要】
基于云存储的区块链可靠数据存储方法、终端及系统
本专利技术实施例涉及计算机应用
,具体涉及一种基于云存储的区块链可靠数据存储方法、终端及系统。
技术介绍
区块链技术的出现推动了无中心电子货币、分布式账本以及一系列以区块链为基础的分布式应用等的发展。然而现有的区块链技术仅要求节点在本地存储数据备份,没有提供任何一种机制保证在全网中一定存在某一个区块。一旦出现设备故障、人为误操作、自然灾害等突发情况,数据可能被损坏甚至永久性地丢失。这导致了现有的区块链技术不能够适用于需要可靠存储的应用场景。因此,如何保证区块链数据的完整性成为亟待解决的问题。
技术实现思路
针对现有技术存在的问题,本专利技术实施例提供一种基于云存储的区块链可靠数据存储方法、终端及系统。第一方面,本专利技术实施例提供一种基于云存储的区块链可靠数据存储方法,所述方法包括:按区块为单位获取区块链中的文件;对区块链中的文件进行分割,并标识分割后的文件;建立标识后的子文件与Merkle哈希树结构除根节点外所有子节点之间的映射关系;将标识后的文件存储于云服务器,并根据所述映射关系从所述云服务器中获取所述标识后的 ...
【技术保护点】
1.一种基于云存储的区块链可靠数据存储方法,其特征在于,包括:按区块为单位获取区块链中的文件;对区块链中的文件进行分割,并标识分割后的文件;建立标识后的子文件与Merkle哈希树结构除根节点外所有子节点之间的映射关系;将标识后的文件存储于云服务器,并根据所述映射关系从所述云服务器中获取所述标识后的文件。
【技术特征摘要】
1.一种基于云存储的区块链可靠数据存储方法,其特征在于,包括:按区块为单位获取区块链中的文件;对区块链中的文件进行分割,并标识分割后的文件;建立标识后的子文件与Merkle哈希树结构除根节点外所有子节点之间的映射关系;将标识后的文件存储于云服务器,并根据所述映射关系从所述云服务器中获取所述标识后的文件。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述将标识后的文件存储于云服务器的步骤之后,对标识后的文件进行文件完整性的验证;和/或,在所述并根据所述映射关系从所述云服务器中获取所述标识后的文件的步骤之后,将标识后的文件下载到所述区块链的本地节点。3.根据权利要求2所述的方法,其特征在于,所述对标识后的文件进行文件完整性的验证,包括:随机选取待检测文件并获取其被分割的子文件数m和所述待检测文件的标识;根据所述子文件数m和第一预设规则,生成L组随机变量;向云服务器发送数据查询请求,所述数据查询请求携带有所述L组随机变量,以供所述云服务器根据预先存储的文件分割后子文件的标识、所述数据查询请求和第二预设规则,获取反映待检测文件完整性的计算结果;其中,1≤L≤m;接收所述云服务器返回的所述计算结果,并根据所述计算结果、所述L组随机变量、所述标识、预先获得的秘钥和第三预设规则,验证所述待检测文件完整性。4.根据权利要求3所述的方法,其特征在于,所述根据所述子文件数m和第一预设规则,生成L组随机变量,包括:在所述m个子文件中随机选择L个子文件;生成与每一个子文件标识ij一一对应的随机数cj,所述随机数的取值范围在预设的有限域之内;将所述子文件标识ij和所述随机数cj两两组合,以获取L组随机变量{ij,cj},其中,1≤j≤L。5.根据权利要求3所述的方法,其特征在于,预先获得的秘钥包括第一秘钥K1和第二秘钥K2,相应的;所述根据所述计算结果、所述L组随机变量、所述标识、预先获得的秘钥和第三预设规则,验证所述待检测文件完整性,包括:将所述第一秘钥K1输入第一预设函数,以获取向量元素数为n的向量u;将所述向量u与所述计算结果中的第一子文件向量w进行内积运算,以获取内积运算结果a;其中,w为第一子文件向量、cj为L组随机变量中的随机数、vij为所述待检测文件中的子文件信息(vij,tij)的第一分量vij;将所述第二秘钥K2、所述标识和所述L组随机变量中的子文件标识ij输入第二预设函数,以获取中间计算结果H(K2,(id...
【专利技术属性】
技术研发人员:张锐,肖禹亭,马晖,
申请(专利权)人:中国科学院信息工程研究所,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。