一种基于区块链的数据存储方法及存储介质技术

技术编号:33998279 阅读:14 留言:0更新日期:2022-07-02 11:27
本发明专利技术涉及区块链技术领域,公开了一种基于区块链的数据存储方法及存储介质,包括步骤:在区块链中设置全网数据节点、轻节点和中间件服务,轻节点用于存储所述区块链中的部分区块数据;中间件服务接收待存储数据并暂存于存储空间,同时对待存储数据进行加密处理后得到加密数据发送给全网数据节点;全网数据节点对加密数据进行解密处理后得到待存储数据并添加至区块数据中上传至区块链中。本发明专利技术有效减少了数据传输次数,提升区块链整体吞吐量,和吞吐效率。同时由于各轻节点只能拉取到本轻节点的区块数据,对其他轻节点数据不可查看,在保证数据不可篡改条件下,可很好地保护敏感数据及机密数据的保护。数据及机密数据的保护。数据及机密数据的保护。

【技术实现步骤摘要】
一种基于区块链的数据存储方法及存储介质


[0001]本专利技术涉及区块链
,特别是涉及一种基于区块链的数据存储方法及存储介质。

技术介绍

[0002]区块链技术是去中心化的分布式数据存储技术,区块链技术利用块链式数据结构、共识算法、密码学、智能合约等,以实现数据的公开透明,且不可篡改。当前区块链技术已在不同行业得到多种形式的应用,比如:商品溯源、数字货币、电子合同、政务数据共享等。在区块链网络中,节点越多数据不可篡改、安全性越高,但增加节点会增加整个网络资源开销,吞吐量下降。在申请号为CN201810458331.8,名称为区块链数据传输方法、装置、设备和存储介质的专利中公开了将自身的数据传输至区块链系统中的其他节点时,通过依据本机节点自身的特性及需要传输的数据综合分析选择部分通迅节点作为同步节点,并将需要传输的数据传输至与其连接的同步节点,然后由同步节点将数据传输给区块链系统中的其他节点。在申请号为CN201910426729.8,名称为基于区块链的区块生成方法、装置、设备及存储介质的专利中,公开了通过数据缓存队列缓存资源转移数据,调用不同的进程对缓存的资源转移数据进行提取生成区块,并对原子计数器进行调整,满足高频资源转移下的高吞吐要求和低频资源转移下的低延时要求,提高了生成区块的效率。
[0003]但现有的区块链技术仍然存在数据节点对网络资源要求高,吞吐效率低的问题。另外,区块链节点中的数据均为公开的,易受到攻击,如果涉及到机密数据,数据的产权就得不到有效的保护。

技术实现思路

[0004]为此,需要提供一种基于区块链的数据存储方法,用于解决上述现有技术中区块链技术对网络资源消耗高,数据吞吐效率低的技术问题,同时在保证区块链特性的情况下,降低成本。
[0005]为实现上述目的,本专利技术提供了一种基于区块链的数据存储方法,包括以下步骤:
[0006]在区块链中设置全网数据节点和中间件服务,所述全网数据节点用于存储区块链中所有的区块数据;
[0007]所述中间件服务接收待存储数据,并将所述待存储数据暂存于存储空间;
[0008]所述中间件服务判断所述存储空间中所述待存储数据的数量是否超过预设值,若是,则对所述待存储数据进行加密处理后得到加密数据,并将所述加密数据发送给所述全网数据节点;或所述中间件服务每隔预设时间对所述待存储数据进行加密处理后得到加密数据,并将所述加密数据发送给所述全网数据节点;
[0009]所述全网数据节点对所述加密数据进行解密处理后添加至区块数据中,并将所述区块数据上传至区块链中。
[0010]进一步的,对所述待存储数据进行加密处理后得到加密数据包括步骤:
[0011]所述中间件服务对所述待存储数据进行分类,并将同一数据生产者对应的待存储数据添加至同一个区块数据中,然后对所述区块数据进行加密处理后得到加密数据。
[0012]进一步的,所述待存储数据中包含有数据生产者标识,所述数据生产者标识用于标识该待存储数据对应的数据生产者;
[0013]所述中间件服务将所述同一数据生产者对应的待存储数据添加至同一个区块数据中具体包括:所述中间件服务将相同数据生产者标识的待存储数据增加至同一区块数据中。
[0014]进一步的,对所述待存储数据进行加密处理后得到加密数据具体包括:对所述待存储数据进行加密处理和压缩处理得到加密数据;
[0015]所述加密处理包括对称加密、非对称加密、数字证书加密中的任意一种;
[0016]所述压缩处理采用的编码包括:哈夫曼编码、LZ77、LZW、LZMA中和任意一种。
[0017]进一步的,其还包括轻节点,所述每个轻节点与一个以上的数据生产者连接,所述每个中间件服务与一个以上的轻节点连接,且所有中间件服务中存储有轻节点与数据生产者的映射关系表;轻节点按预设周期通过中间件服务从全网数据节点同步与其连接的数据生产者上传的区块数据。
[0018]进一步的,所述数据生产者回溯数据时,向与其连接的轻节点发出数据回溯请求,所述数据回溯请求中含有数据生产者标识,所述轻节点根据数据生产者标识,返回所述数据生产者上传的数据。
[0019]进一步的,所述数据生产者回溯数据时,向与其连接的轻节点发出数据回溯请求,所述数据回溯请求中含有数据生产者标识,若所述轻节点中未检索到相关数据,则所述轻节点通过中间件服务向全网数据节点发出数据回溯请求,全网数据节点搜索含有该数据生产者标识的区块数据,并将对应区块数据通过中间件服务发送给发出请求的轻节点,轻节点保存区块数据并将区块数据发送给对应的数据生产者。
[0020]进一步的,所述轻节点包括一级轻节点和二级轻节点,一个一级轻节点可连接两个以上的二级轻节点,二级轻节点与一个以上的数据生产者连接,当数据生产者向一级轻节点或二级轻节点请求数据时,被请求的轻节点将相应的区块数据下发数据生产者。
[0021]进一步的,所述轻节点或数据生产者仅能查看各存储或产生的区块数据。
[0022]为解决上述技术问题,本专利技术又提供了另一技术方案:
[0023]一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一技术方案所述的基于区块链的数据存储方法。
[0024]区别于现有技术,上述技术方案在区块链中设置了全网数据节点和中间件服务,所述中间件服务用于存储所述区块链中的部分区块数据,并且在数据在上链过程中,中间件服务可对待上链的数据进行缓存然后批量压缩上链,从而减少了数据传输次数,提升区块链整体吞吐量和吞吐效率,同时在保证区块链特性的情况下,降低成本。
附图说明
[0025]图1为具体实施方式所述基于区块链的数据存储方法的流程图;
[0026]图2为具体实施方式所述基于区块链的数据存储方法的关键流程的时序图;
[0027]图3为具体实施方式所述基于区块链的数据存储方法中节点分布的网络架构示意
图;
[0028]图4为具体实施方式所述计算机存储介质的示意图。
[0029]附图标记说明:
[0030]100、计算机存储介质;
具体实施方式
[0031]为详细说明技术方案的
技术实现思路
、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
[0032]请参阅图1至图4,本实施例提供了一种基于区块链的数据存储方法及计算机存储介质。如图1所示,所述基于区块链的数据存储方法包括以下步骤:
[0033]S101、在区块链中设置全网数据节点和中间件服务,所述全网数据节点用于存储区块链中所有的区块数据,所述全网数据节点要求为达到一定配置的服务器设备,区块链中各全网数据节点是对等的,且互相同步所有数据,各全网数据节点可通过共识机制都可以当做数据上链服务器,负责将待上链的区块数据上链到区块链网络上,区块链网络上各全网数据节点可通过同步机制接收和存储区块数据,并且将接收到的区块数据同步转发到其他数据节点中。在各全网数据节点中存储的数据是以“区本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的数据存储方法,其特征在于,包括以下步骤:在区块链中设置全网数据节点和中间件服务,所述全网数据节点用于存储区块链中所有的区块数据;所述中间件服务接收待存储数据,并将所述待存储数据暂存于存储空间;所述中间件服务判断所述存储空间中所述待存储数据的数量是否超过预设值,若是,则对所述待存储数据进行加密处理后得到加密数据,并将所述加密数据发送给所述全网数据节点;或所述中间件服务每隔预设时间对所述待存储数据进行加密处理后得到加密数据,并将所述加密数据发送给所述全网数据节点;所述全网数据节点对所述加密数据进行解密处理后添加至区块数据中,并将所述区块数据上传至区块链中。2.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,对所述待存储数据进行加密处理后得到加密数据包括步骤:所述中间件服务对所述待存储数据进行分类,并将同一数据生产者对应的待存储数据添加至同一个区块数据中,然后对所述区块数据进行加密处理后得到加密数据。3.根据权利要求2所述的基于区块链的数据存储方法,其特征在于,所述待存储数据中包含有数据生产者标识,所述数据生产者标识用于标识该待存储数据对应的数据生产者;所述中间件服务将所述同一数据生产者对应的待存储数据添加至同一个区块数据中具体包括:所述中间件服务将相同数据生产者标识的待存储数据增加至同一区块数据中。4.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,对所述待存储数据进行加密处理后得到加密数据具体包括:对所述待存储数据进行加密处理和压缩处理得到加密数据;所述加密处理包括对称加密、非对称加密、数字证书加密中的任意一种;所述压缩处理采用的编码包括:哈夫曼编码、LZ77、LZW、LZMA中和任意一种。5.根据权利要求1所述的基于区块链的数据存储...

【专利技术属性】
技术研发人员:陈丹明汤周文林之烽林剑宇刘旺刘灵辉
申请(专利权)人:福建凯米网络科技有限公司
类型:发明
国别省市:

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

1