一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于IPFS的分布式云文件存储方法及系统与流程

2022-06-02 05:16:28 来源:中国专利 TAG:

一种基于ipfs的分布式云文件存储方法及系统
技术领域
1.本发明公开一种方法及系统,涉及分布式云计算技术领域,具体地说是一种基于ipfs的分布式云文件存储方法及系统。


背景技术:

2.星际文件系统ipfs(inter-planetary file system)是一个面向全球的、点对点的分布式版本文件系统,致力于创建持久且分布式存储和共享文件的网络传输协议。目标是为了补充,甚至是取代目前统治互联网的超文本传输协议(http),将所有具有相同文件系统的计算设备连接在一起。
3.分布式云计算服务,在不同的物理位置,提供统一云服务的运营、治理、更新和演进,一般分为三个业务形态:中心云、区域云和边缘云。分布式云通过云边协同,提供了一种更加全局化的弹性算力资源,为边缘侧提供有针对性的算力。云边协同是一个庞大的体系,其中数据的共享、一致性、高效传输决定了分布式云的协同能力,但当前缺乏一种任意单节点上传,其他任意节点共享下载,完全去中心化的方式,因此服务的稳定性无法有效保障,特别是大规模的数据同步共享,比如公共系统镜像、备份数据分布式存储和共享下载等。


技术实现要素:

4.本发明针对现有技术的问题,提供一种基于ipfs的分布式云文件存储方法及系统,本发明提出的具体方案是:
5.一种基于ipfs的分布式云文件存储方法,基于ipfs,通过客户端访问租户鉴权系统,获得上传文件的token,根据token信息向已经联网的节点执行分片上传文件的任务,并对文件进行加密,通过所述节点重新封装打包所述文件,并将所述文件切片分散存储到各个节点中,根据文件的切片生成哈希值,并拼接保存为文件的数据块与目标节点的映射关系的哈希表,
6.通过客户端访问租户鉴权系统进行鉴权,鉴权通过则根据所述哈希表获取拥有文件数据块的节点,根据节点获取文件的所有分片,通过对文件的分片进行解密解封装,还原原始文件。
7.进一步,所述的一种基于ipfs的分布式云文件存储方法中所述对文件进行加密,包括:
8.利用国密算法或aes256算法对文件进行加密。
9.进一步,所述的一种基于ipfs的分布式云文件存储方法中所述通过客户端访问租户鉴权系统进行鉴权之前,包括:
10.通过客户端检索文件,其中通过客户端根据文件的哈希值或文件名检索文件,和/或根据字段节点id、文件类型或上传时间进行辅助检索。
11.进一步,所述的一种基于ipfs的分布式云文件存储方法中所述通过客户端访问租户鉴权系统进行鉴权,包括:
12.通过客户端提供的token信息进行鉴权,获取相关权限及资源信息。
13.本发明还提供一种基于ipfs的分布式云文件存储系统,基于ipfs,包括客户端和租户鉴权系统,
14.通过客户端访问租户鉴权系统,获得上传文件的token,根据token信息向已经联网的节点执行分片上传文件的任务,并对文件进行加密,通过所述节点重新封装打包所述文件,并将所述文件切片分散存储到各个节点中,根据文件的切片生成哈希值,并拼接保存为文件的数据块与目标节点的映射关系的哈希表,
15.通过客户端模块访问租户鉴权系统进行鉴权,鉴权通过则根据所述哈希表获取拥有文件数据块的节点,根据节点获取文件的所有分片,通过对文件的分片进行解密解封装,还原原始文件。
16.进一步,所述的一种基于ipfs的分布式云文件存储装置中所述租户鉴权系统对文件进行加密,包括:
17.利用国密算法或aes256算法对文件进行加密。
18.进一步,所述的一种基于ipfs的分布式云文件存储装置中所述客户端访问租户鉴权系统进行鉴权之前,包括:
19.通过客户端检索文件,其中通过客户端根据文件的哈希值或文件名检索文件,和/或根据字段节点id、文件类型或上传时间进行辅助检索。
20.进一步,所述的一种基于ipfs的分布式云文件存储装置中所述客户端访问租户鉴权系统进行鉴权,包括:
21.通过客户端提供的token信息进行鉴权,获取相关权限及资源信息。
22.本发明的有益之处是:
23.本发明提供一种基于ipfs的分布式云文件存储方法,通过ipfs分布式节点网络建成一个去中心化的分布式文件存储共享网络,通过客户端实现文件的上传,通过租户鉴权系统实现文件的加密和校验保障私有文件的安全性,可以较好的实现数据文件的分布式存储共享,每个节点除了存储了数据以外,还存储一张哈希表,用来记录文件切片存储所在的位置,便于进行文件的查询下载,提升存储读写效率和安全性。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
25.图1是本发明应用拓扑示意图。
26.图2是本发明方法应用时交互示意图。
27.图3是本发明方法上传文件流程示意图。
28.图4是本发明方法下载文件流程示意图。
具体实施方式
29.下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以
更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
30.本发明提供一种基于ipfs的分布式云文件存储方法,基于ipfs,通过客户端访问租户鉴权系统,获得上传文件的token,根据token信息向已经联网的节点执行分片上传文件的任务,并对文件进行加密,通过所述节点重新封装打包所述文件,并将所述文件切片分散存储到各个节点中,根据文件的切片生成哈希值,并拼接保存为文件的数据块与目标节点的映射关系的哈希表,
31.通过客户端访问租户鉴权系统进行鉴权,鉴权通过则根据所述哈希表获取拥有文件数据块的节点,根据节点获取文件的所有分片,通过对文件的分片进行解密解封装,还原原始文件。
32.在实际生产服务过程中,公共系统镜像、补丁文件、私有镜像共享、备份数据分布式存储等场景均可以通过上述分布式云文件存储平台系统有效的满足需求。
33.具体应用中,在本发明的一些实施例中,进行分布式云文件存储时,
34.通过客户端访问租户鉴权系统,获得上传文件的token,携带token信息向已经联网的节点,执行分片上传任务,上传到分布式节点之后,恢复成完整文件,然后针对该文件加密,并转换文件格式,进入文件分布式存储阶段,并且最终文件结果可以记录在记录文件管理系统,其中分布式节点上传的文件,数据加密过程支持国密、aes256等技术,并支持对接kms(密钥管理系统),可以使用信封加密技术,通过kms的密码运算api在线生成数据密钥,用离线数据密钥在本地加密大量数据,并把加密的数据密钥与加密后的数据合并存储为加密文件,然后把加密文件分片分散存储到分布式边缘节点,
35.通过节点重新封装打包的文件,按照ipfs的分片机制,自动化切片分块,然后将切片分散存储到网络的各个节点中,每个分片都生成唯一的哈希值,然后把所有的分片的哈希值拼接之后计算得到该文件哈希值,文件分片可以同步到与当前节点连接或在线质量较好的边缘分布式节点,
36.每个ipfs节点都保存一张分布式的哈希表(dht),哈希表中包含数据块与目标节点的映射关系,无论哪个节点新增了数据,都会同步更新dht,
37.通过客户端下载文件时,通过登录的账号信息生成token,然后携带token请求检索,可以检索的关键字文件的哈希值cid,文件名等,并且通过辅助检索字段节点id、文件类型、上传时间等信息,缩小检索范围,
38.得到请求信息之后,通过租户鉴权系统和文件管理系统进行鉴权,识别是否有权限访问下载,鉴权通过之后,分布式节点内部ipfs通过使用文件的哈希表,可以快速找到拥有数据的节点,获取文件的所有分片哈希,然后重新组合成完整的文件,并使用哈希验证是否是正确的数据。
39.获得文件的完整数据之后,通过解密解封装的流程,还原原始文件,并响应用户请求返回文件内容。
40.在上述过程中,ipfs对等节点身份信息的生成以及路由规则是通过kademlia协议生成制定,通过kad协议构建一个分布式松散hash表,简称dht,每个加入这个dht网络的节点都生成自己的身份信息,然后通过身份信息去负责存储这个网络里的资源信息和其他成员的联系信息。节点拥有身份信息之后,建立网络联系,使用的libp2p可以支持任意传输层协议,nat技术让内网中的设备共用同一个外网ip。
41.ipfs把文件进行切片,多个文件切片内容完全一致的话,只会保存一份,大大提高文件碎片的重用性,节省存储空间。
42.本发明还提供一种基于ipfs的分布式云文件存储系统,基于ipfs,包括客户端和租户鉴权系统,
43.通过客户端访问租户鉴权系统,获得上传文件的token,根据token信息向已经联网的节点执行分片上传文件的任务,并对文件进行加密,通过所述节点重新封装打包所述文件,并将所述文件切片分散存储到各个节点中,根据文件的切片生成哈希值,并拼接保存为文件的数据块与目标节点的映射关系的哈希表,
44.通过客户端模块访问租户鉴权系统进行鉴权,鉴权通过则根据所述哈希表获取拥有文件数据块的节点,根据节点获取文件的所有分片,通过对文件的分片进行解密解封装,还原原始文件。
45.上述系统内的各部分之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。同样地,本发明系统通过ipfs分布式节点网络建成一个去中心化的分布式文件存储共享网络,通过客户端实现文件的上传,通过租户鉴权系统实现文件的加密和校验保障私有文件的安全性,可以较好的实现数据文件的分布式存储共享,每个节点除了存储了数据以外,还存储一张哈希表,用来记录文件切片存储所在的位置,便于进行文件的查询下载,提升存储读写效率和安全性。
46.需要说明的是,上述各流程和各系统结构中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
47.以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献