当前位置: 首页 > 专利查询>黄颖专利>正文

一种基于多区块链的存证方法技术

技术编号:25914962 阅读:16 留言:0更新日期:2020-10-13 10:33
本发明专利技术涉及一种基于多区块链的存证方法,该方法将待存证数据分割成n个数据块,生成存证配置,将存证配置加入配置区块链,将n个数据块隐藏后分别加入多条区块链,最后得到相应的存证信息作为存证证明。该方法提高了区块链存证的安全性、可靠性和鲁棒性。

【技术实现步骤摘要】
一种基于多区块链的存证方法
本专利技术属于计算机领域,尤其涉及一种基于多区块链的存证方法。
技术介绍
区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。区块链是由区块构成的链式结构,各个区块之间通过哈希值实现链接,后一个区块包含前一个区块的哈希值,随着区块数量的增加,一个区块与一个区块相继接续,形成的结果就构成了区块链。由于区块链的不可篡改的特性,现在常常使用区块链进行存证,由客户端将待存证的数据上传到一个区块链网络中的某个区块链节点,该区块链节点基于该数据构造区块,将区块加入区块链。但是,区块链数据一般是公开可查询的,现有技术中没有过多考虑到待存证数据的保密问题;另外,存证数据依赖于单个区块链网络的单个区块链,对于许多较小的区块链网络而言,其可靠性可能不高。
技术实现思路
为了解决现有技术中的上述问题,本专利技术提供了一种基于多区块链的存证方法。本专利技术采用的技术方案具体如下:一种基于多区块链的存证方法,包括以下步骤:步骤100:客户端分割待存证数据,将待存证数据分割成n个数据块,每个数据块不超过预定的数据量阈值;步骤200:所述客户端生成n个随机数R1,R2,……,Rn,每个随机数的长度都为所述数据量阈值;步骤300:设所述n个数据块为D1,D2,……,Dn,则所述客户端计算得到n个隐藏结果Ei(1≤i≤n),即Ei=Di⊕Ri;步骤400:所述客户端生成存证配置,所述存证配置用于设置如何将所述n个隐藏结果分布存储到多条区块链中;步骤500:所述客户端随机生成密钥Key,使用该密钥Key对所述存证配置和所述n个随机数进行加密,得到的加密结果作为配置数据,并将所述配置数据加入预定的配置区块链,并获得配置区块的标识符;步骤600:所述客户端根据所述存证配置,将所述n个隐藏结果分布存储到所述多条区块链中,并获得相应的区块标识符;步骤700:所述客户端构造存证信息CInfo,所述存证信息中包括所述密钥Key、配置区块的区块标识符、以及n个隐藏结果对应的区块标识符。进一步地,所述数据量阈值为1024比特。进一步地,所述分割具体包括:按照待存证数据的数据顺序,逐个分割成n个数据块。或者,所述分割具体包括:使n个数据块之和为所述待存证数据。进一步地,所述随机数为1024位。进一步地,所述步骤400中,所述存证配置设置每条区块链存储n个隐藏结果之中的一个或若干个,并且每个隐藏结果至少存储于两条区块链中。进一步地,所述配置区块链是预先确定的用于存储所述配置数据的一条区块链,并且与步骤400中所使用的多条区块链都不相同。进一步地,所述步骤500中,客户端生成加密的配置数据后,连接配置区块链网络中的一个区块链节点,请求将配置数据加入配置区块链,该区块链节点使用所述配置数据构造区块,将构造的配置区块加入配置区块链。进一步地,所述步骤500中,所述区块链节点将配置区块在配置区块链中的区块标识符返回给客户端。进一步地,使用所述存证信息构造存证二维码。本专利技术的有益效果是:提高区块链存证的安全性、可靠性和鲁棒性。【附图说明】此处所说明的附图是用来提供对本专利技术的进一步理解,构成本申请的一部分,但并不构成对本专利技术的不当限定,在附图中:图1是本专利技术方法所应用的系统结构。【具体实施方式】下面将结合附图以及具体实施例来详细说明本专利技术,其中的示意性实施例以及说明仅用来解释本专利技术,但并不作为对本专利技术的限定。参见附图1,其示出了本专利技术方法所应用的系统结构。该系统包括多个区块链网络1、2、3(图中以三个作为示例),每个区块链网络(1,2,3)中都包括了多个区块链节点;虽然图中不同区块链网络都是分离的,但是这只是示意性的,实际应用中可以有节点同时作为不同区块链网络的区块链节点。每个区块链网络都具有其自身的一条区块链,也就是说,系统中具有多条独立的区块链,不同区块链之间互不影响。所述系统中还包括客户端,该客户端通过互联网可以访问所述多个区块链网络中的区块链节点。因而该客户端实际上可以通过区块链节点访问上述多条区块链,通过区块链节点将数据加入每条区块链,以及查询获取每条区块链中的区块数据。基于上述系统结构,下面详细说明本专利技术的方法步骤。步骤100:客户端分割待存证数据,将待存证数据分割成n个数据块,每个数据块不超过预定的数据量阈值。具体的,优选情况下,该数据量阈值设置为1024比特,也就是每个数据块最多为1024比特。因此,可以将待存证数据尽量按照1024比特进行分割,即第1个至第n-1个数据块都是1024比特,最后第n个数据块小于等于1024比特。需要说明的是,所述数据量阈值可以根据待存证数据的数据量进行设置,如果待存证数据的数据量本身就比较小,则可以设置一个较小的数据量阈值,例如128位;否则就设置为1024位。本专利技术不对具体的分割方法作出限制。本领域技术人员可以采用不同的分割方式,来分割所述待存证数据。一种简单的方式是按照待存证数据的数据顺序,逐个分割成n个数据块,例如将待存证的第1-1024位作为第1个数据块,将第1025-2048位作为第2个数据块,以此类推。另外一种更安全的方式是使n个数据块之和为所述待存证数据,即设待存证数据为data,所述n个数据块为D1,D2,……,Dn,则使data=D1+D2+……+Dn。步骤200:客户端生成n个随机数R1,R2,……,Rn,每个随机数的长度都为所述数据量阈值。优选的,所述数据量阈值为1024比特,则每个随机数都是1024位。步骤300:设所述n个数据块为D1,D2,……,Dn,则所述客户端计算得到n个隐藏结果Ei(1≤i≤n),即Ei=Di⊕Ri。客户端将每个数据块分别与每个随机数相异或,得到所述n个隐藏结果,这样在不知道所述随机数的情况下,其他人是无法恢复出所述数据块,也就无法获得所述待存证数据。步骤400:所述客户端生成存证配置,所述存证配置用于设置如何将所述n个隐藏结果分布存储到多条区块链中。具体的,本专利技术使用多条区块链分布式存储所述n个隐藏结果,即每条区块链存储n个隐藏结果之中的一个或若干个,并且每个隐藏结果至少存储于两条区块链中。例如,假设要用3条区块链存储5个隐藏结果,则可以使用第1条区块链存储{E1,E2,E3,E4},第2条区块链存储{E3,E4,E5,E6},第3条区块链存储{E1,E2,E5,E6}。通过这样的存证配置,一方面,至少需要2条区块链才能获得所有n个隐藏结果,另一方面,这也意味着,即使有1条区块链出现问题,也可以恢复待存证数据。需要说明的是,上述存证配置只是本专利技术的一个具体实施例,本领域技术人员也可以采用别的存证配置方式,本专利技术对此不作限制。步骤500:所述客户端随机生成密钥Key,使用该密钥Key对所本文档来自技高网...

【技术保护点】
1.一种基于多区块链的存证方法,其特征在于,包括以下步骤:/n步骤100:客户端分割待存证数据,将待存证数据分割成n个数据块,每个数据块不超过预定的数据量阈值;/n步骤200:所述客户端生成n个随机数R

【技术特征摘要】
1.一种基于多区块链的存证方法,其特征在于,包括以下步骤:
步骤100:客户端分割待存证数据,将待存证数据分割成n个数据块,每个数据块不超过预定的数据量阈值;
步骤200:所述客户端生成n个随机数R1,R2,……,Rn,每个随机数的长度都为所述数据量阈值;
步骤300:设所述n个数据块为D1,D2,……,Dn,则所述客户端计算得到n个隐藏结果Ei(1≤i≤n),即Ei=Di⊕Ri;
步骤400:所述客户端生成存证配置,所述存证配置用于设置如何将所述n个隐藏结果分布存储到多条区块链中;
步骤500:所述客户端随机生成密钥Key,使用该密钥Key对所述存证配置和所述n个随机数进行加密,得到的加密结果作为配置数据,并将所述配置数据加入预定的配置区块链,并获得配置区块的标识符;
步骤600:所述客户端根据所述存证配置,将所述n个隐藏结果分布存储到所述多条区块链中,并获得相应的区块标识符;
步骤700:所述客户端构造存证信息CInfo,所述存证信息中包括所述密钥Key、配置区块的区块标识符、以及n个隐藏结果对应的区块标识符。


2.根据权利要求1所述的方法,其特征在于,所述数据量阈值为1024比特。


3.根据权利要求1-2任意一项所述的方法,其特征在于,所述分割具体包括...

【专利技术属性】
技术研发人员:黄颖
申请(专利权)人:黄颖
类型:发明
国别省市:江苏;32

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

1