当前位置: 首页 > 专利查询>东北大学专利>正文

结合Fabric和IPFS的去中心化存储系统及其数据存储方法技术方案

技术编号:30555159 阅读:111 留言:0更新日期:2021-10-30 13:36
本发明专利技术提供了一种结合Fabric和IPFS的去中心化存储系统及其数据存储方法,该系统包括:用于注册用户的用户层;用于数据文件的上传、下载、加密以及分片的数据处理层;用于存储所述数据处理层分片后得到的加密碎片的存储网络层;所述存储网络层的底层采用IPFS网络协议;用于通过智能合约与外界交互,将文件的元数据上链的区块链层;所述区块链底层采用Fabric网络。本发明专利技术中,使用IPFS协议构成一个底层的分布式存储系统,采用HyperLedger Fabric作为区块链平台,真实数据存储在IPFS网络中的节点上,存储数据的哈希等信息存储在fabric区块链上,设计数据的加密方案,保障了存储数据的安全。存储数据的安全。存储数据的安全。

【技术实现步骤摘要】
结合Fabric和IPFS的去中心化存储系统及其数据存储方法


[0001]本专利技术涉及分布式存储
,特别是涉及结合Fabric和IPFS的去中心化存储系统及其数据存储方法。

技术介绍

[0002]随着数据的爆发性增长,存储的安全和效率变得尤为重要,近两年流行的区块链技术为数据存储方式提供了一个新的思路。在国内外学者的探索实践下,将区块链技术应用到数据存储领域,主要包括两种方式:
[0003](1)数据直接写入区块,区块头包含前一个区块的哈希、随机值、数据哈希等内容,区块体装入要保存的数据,区块得到共识验证之后,可以同步到链上的所有节点。这保证了数据的不可篡改性,但是因为是全冗余备份,如果数据过大会造成存储资源的浪费,同时数据同步速度也会变慢。这种方式仅适用于数据量小且重要的场合,比如信息溯源等场景;
[0004](2)数据不直接写入区块,而是把文件摘要哈希、文件位置等信息写进区块,真实数据存放在文件系统,通过哈希函数的计算可以验证文件数据的完整性。将区块链与文件存储系统相结合,区块链通过智能合约管理文件,达成一系列关于文件上传下载的操作,这种方式具有普适性,不拘泥于文件的大小和重要性,可以应用于大部分的关于存储方面的场景。
[0005]从上面可以看出,目前的去中心化存储研究关于存储资源的保护通常停留在一层保护上面,即密钥加密,这使资源长期暴露于威胁之下。例如,如果加密密钥被暴露,或者恶意节点没有根据所有者的请求删除它们的碎片,尝试重新构建整个资源,那么资源仍然是脆弱的。而且关于存储文件的可用性方面没有太多的研究,资源在上传到网络之后丢失的概率有多大,无法得到保证。

技术实现思路

[0006]有鉴于此,本专利技术的专利技术目的在于提供一种结合Fabric和IPFS的去中心化存储系统及其数据存储方法,使用IPFS协议构成一个底层的分布式存储系统,采用HyperLedger Fabric作为区块链平台,真实数据存储在IPFS网络中的节点上,存储数据的哈希等信息存储在fabric区块链上,设计数据的加密方案,保障存储数据的安全。
[0007]为此,本专利技术提供了以下技术方案:
[0008]一方面,本专利技术提供了一种结合Fabric和IPFS的去中心化存储系统,所述系统包括:
[0009]用于注册用户的用户层;
[0010]用于数据文件的上传、下载、加密以及分片的数据处理层;
[0011]用于存储所述数据处理层分片后得到的加密碎片的存储网络层;所述存储网络层的底层采用IPFS网络协议;
[0012]用于通过智能合约与外界交互,将文件的元数据上链的区块链层;所述区块链底
层采用Fabric网络。
[0013]进一步地,所述数据处理层采用双重加密算法进行数据文件的加密。
[0014]进一步地,所述双重加密算法包括:
[0015]使用高级加密标准加密算法加密数据文件本身,使用公钥加密算法加密所述高级加密标准加密算法的密钥。
[0016]进一步地,所述数据处理层对加密后的数据文件进行分片,包括:
[0017]将加密后的数据文件分割成大小为N的碎片,不足N的部分用0填满。
[0018]进一步地,所述存储网络层存储所述数据处理层分片后得到的加密碎片,包括:
[0019]基于哈希算法计算加入网络的各个节点的身份ID;
[0020]对各个加密碎片分别计算哈希值;
[0021]按照Kademlia协议,在与加密碎片的哈希值距离最近的节点存储所述加密碎片;加密碎片的哈希值与节点的身份ID之间的距离通过异或算法得到。
[0022]进一步地,加入网络的每个节点维护一个K桶,保存与自己节点的身份ID相近的节点信息;每个节点构建K桶的过程如下:将所述节点作为基础节点,将与所述基础节点的身份ID距离为1的节点归为第一桶;将与所述基础节点的身份ID距离为i的节点归为第i桶;如果X≤K,X为与基础节点距离为i的节点数量,则在第i桶里存放X个节点的信息,如果X>K,则只在第i桶里存放K个节点的信息。
[0023]进一步地,Fabric网络中,联盟链成员组成至少包括两个组织机构,每个组织结构的节点都由各自的fabric CA节点颁发证书;每个组织机构都设置两个节点peer0和peer1,这两个节点主要负责背书和记账;
[0024]排序服务集群包括五个orderer节点,用于对预定时间段内的任务进行排序,同时负责管理通道;
[0025]通道上安装有系统链码CSCC和LSCC,主要负责通道配置和管理普通链码,通道上还安装有普通链码Storage,主要负责存储相关信息的上链和查询。
[0026]进一步地,所述区块链层采取etcdraft作为共识机制。
[0027]又一方面,本专利技术还提供了一种基于上述结合Fabric和IPFS的去中心化存储系统的数据存储方法,所述方法包括:
[0028]获取用户上传的待存储的数据文件;
[0029]将所述待存储的数据文件使用双重加密算法进行加密;
[0030]将加密后的文件按照预定规则进行分片,得到若干个加密碎片;
[0031]将各个加密碎片存储至IPFS网络的节点,所述IPFS网络生成所述待存储的数据文件的文件哈希;
[0032]将文件元数据存储到fabric区块链;所述文件元数据至少包括文件哈希、文件名和文件拥有者。
[0033]进一步地,所述IPFS网络生成所述待存储的数据文件的文件哈希,包括:
[0034]计算各个加密碎片的哈希值;
[0035]将各个加密碎片的哈希值构成默克尔树;
[0036]将所述默克尔树作为所述待存储的数据文件的文件哈希,并保存至本地节点。
[0037]传统分布式存储系统存在大量弊端,数据集中、第三方机构不可信等原因导致存
储数据缺乏安全性和隐私性。本专利技术旨在应用区块链技术本身的特性,结合点对点的分布式存储网络,设计一个去中心化的存储方案,文件哈希存储在区块链上,文件内容存储在IPFS网络中,以保障存储数据的安全。
附图说明
[0038]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0039]图1为本专利技术实施例中去中心化存储方案运行流程图;
[0040]图2为本专利技术实施例中加密流程图;
[0041]图3为本专利技术实施例中数据分片示意图;
[0042]图4为本专利技术实施例中构建K桶流程图;
[0043]图5为本专利技术实施例中Fabric网络设计图;
[0044]图6为本专利技术实施例中共识节点状态转换流程图;
[0045]图7为本专利技术实施例中网络拓扑设计图;
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种结合Fabric和IPFS的去中心化存储系统,其特征在于,所述系统包括:用于注册用户的用户层;用于数据文件的上传、下载、加密以及分片的数据处理层;用于存储所述数据处理层分片后得到的加密碎片的存储网络层;所述存储网络层的底层采用IPFS网络协议;用于通过智能合约与外界交互,将文件的元数据上链的区块链层;所述区块链底层采用Fabric网络。2.根据权利要求1所述的一种结合Fabric和IPFS的去中心化存储系统,其特征在于,所述数据处理层采用双重加密算法进行数据文件的加密。3.根据权利要求2所述的一种结合Fabric和IPFS的去中心化存储系统,其特征在于,所述双重加密算法包括:使用高级加密标准加密算法加密数据文件本身,使用公钥加密算法加密所述高级加密标准加密算法的密钥。4.根据权利要求1所述的一种结合Fabric和IPFS的去中心化存储系统,其特征在于,所述数据处理层对加密后的数据文件进行分片,包括:将加密后的数据文件分割成大小为N的碎片,不足N的部分用0填满。5.根据权利要求1所述的一种结合Fabric和IPFS的去中心化存储系统,其特征在于,所述存储网络层存储所述数据处理层分片后得到的加密碎片,包括:基于哈希算法计算加入网络的各个节点的身份ID;对各个加密碎片分别计算哈希值;按照Kademlia协议,在与加密碎片的哈希值距离最近的节点存储所述加密碎片;加密碎片的哈希值与节点的身份ID之间的距离通过异或算法得到。6.根据权利要求5所述的一种结合Fabric和IPFS的去中心化存储系统,其特征在于,加入网络的每个节点维护一个K桶,保存与自己节点的身份ID相近的节点信息;每个节点构建K桶的过程如下:将所述节点作为基础节点,将与所述基础节点的身份ID距离为1的节点归为第一桶;将与所述基础节点的...

【专利技术属性】
技术研发人员:孟琭孙斌
申请(专利权)人:东北大学
类型:发明
国别省市:

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

1