【技术实现步骤摘要】
多版本文件的去中心化存储系统、方法、设备及存储介质
[0001]本申请属于网络存储
,具体涉及一种多版本文件的去中心化存储系统
、
方法
、
设备及存储介质
。
技术介绍
[0002]去中心化存储网络
(Decentralized Storage Network,DSN)
是新兴技术,可以聚合独立存储提供者提供的免费存储空间,并自协调提供数据存储和检索服务
。
与传统存储网络相比,
DSN
在区块链系统上运行,作为激励层工作
。
区块链奖励为客户提供可靠存储的验证节点,从而建立了一个开放的可管理存储市场
。
此外,区块链可以作为状态机复制协议,确保文件存储在拜占庭节点之间的一致性
。
[0003]在
DSN
中支持多版本文件的存储是必要的,因为文件通常是动态更改或编辑的,且用户需要不时地查询不同版本的文件
。
由于当前
DSN
上的文件是不可编辑的,所以用户必须上传文件的所有版本,而这也导致了内容的高度冗余
。
即使有些
DSN
已经在支持目录级重复内容的删除方面做出了努力,但也无法避免更细粒度即文件级别的冗余
。
例如,
Filecoin
利用
Merkle DAG
实现目录级去重,其中包括文件
、
文件块和目录在内的对象根据它们的嵌 ...
【技术保护点】
【技术特征摘要】
1.
一种多版本文件的去中心化存储系统,其特征在于,包括客户端
、
验证节点和区块链;客户端负责发送文件存储
、
检索或下载请求,并通过向验证节点支付代币来获得文件存储和文件获取的服务;验证节点通过向客户端提供文件存储或文件获取的服务来赚取代币;区块链是双层
DAG
结构,其中一层支持文件创建
、
更新
、
合并
、
分叉操作,另一层保证账本的一致性,两层共享同一组区块
。2.
根据权利要求1所述的多版本文件的去中心化存储系统,其特征在于,客户端将新文件版本与前一版文件版本进行比较来计算文件增量,并将文本增量发送至验证节点进行存储
。3.
根据权利要求2所述的多版本文件的去中心化存储系统,其特征在于,所述验证节点包括存储验证节点和检索验证节点;存储验证节点根据不同需求选择性进行以下处理:存储验证节点在文件存储过程中,负责处理客户端发送的文件存储的请求,将接收到的初始文件
v0或文件增量进行存储,或在存储空间进行文件版本分支合并或文件版本分叉操作,并定时生成存储证明存储到区块链上;或,存储验证节点在文件获取过程中,负责处理客户端发送的下载请求,将其存储空间存储的初始文件或文件增量发送给客户端;检索验证节点负责在文件获取过程中,根据客户端发送的检索请求,以广度优先搜索的方式在区块链中获取恢复文件所需的初始文件及文件增量的标识符列表,并发送给客户端
。4.
根据权利要求2所述的多版本文件的去中心化存储系统,其特征在于,客户端在文件存储
、
更新
、
获取过程中分别发送不同的请求,并在请求被处理后生成对应交易发送到区块链;客户端在文件存储过程中根据不同需求发送文件存储请求:当有存储初始文件的需求时,发送文件创建请求,并将初始文件上传给存储验证节点;或当有文件更新的需求时,发送文件更新请求,将新文件版本与前一版的文件版本进行比较来计算文件增量,并将文件增量上传给存储验证节点;或当有文件版本分支合并或文件版本分叉需求时,发送文件版本合并或文件版本分叉请求,无需附加其他内容;或客户端在文件获取过程中负责向检索验证节点
、
存储验证节点分别发送所需文件版本的检索请求和下载请求,从检索验证节点获得恢复文件所需的初始文件及文件增量的标识符列表后,根据列表从存储验证节点处下载初始文件和文件增量,并负责根据下载的初始文件和文件增量恢复该文件版本
。5.
根据权利要求1所述的多版本文件的去中心化存储系统,其特征在于,区块链可以表示为
G
=
(V,E
l
,E
u
)
,其中
E
l
和
E
u
分别是区块链下层和上层的边集合,
V
是上下两层共享的顶点集合;每个顶点代表一个交易,交易类型为创建交易
、
更新交易
、
合并交易或分叉交易,不同顶点对应于特定的文件版本,包含初始文件或文件增量的标识符
CID。6.
根据权利要求5所述的多版本文件的去中心化存储系统,其特征在于,区块链下层边
集
E
l
中的每条边表示所连接的两个顶点分别对应的文件版本之间的更新
、
合并或分叉的派生关系;区块链上层边集
E
u
是通过修改
DAG
‑
Rider
共识算法来构建的,每个验证节点每轮广播一笔交易,即创建一个顶点,每个顶点引用前一轮中至少
2f+1
个顶点,其中
f
是可以容忍的最大拜占庭节点数
。7.
根据权利要求5所述的多版本文件的去中心化存储系统,其特征在于,区块链的构造过程为:在任何一轮中,通过共识后的交易首先根据文件版本的派生关系指向其所依赖的已确认的交易,此时构造的边包括在区块链下层边集
E
l
中;然后将传入的交易按照共识算法指向上一轮中其他已确认的交易,此时构造的边包括在区块链上层边集
E
u
中
。8.
一种多版本文件的去中心化存储方法,其特征在于,包括以下四个步骤:创建
、
更新
、
检索
、
下载和恢复;创建:客户端将初始文件存储到存储验证节点处并发送文件创建交易到区块链;更新:客户端计算新文件版本相较于前一版文件版本的文件增量,存储到存储验证节点处,并发送文件更新交易到区块链;检索:检索验证节点在区块链中检索并获取恢复文件所需的文件标识符列表;下载和恢复:客户端根据文件标识符列表到对应的存储验证节点处下载相应的文件片段并恢复文件
。9.
根据权利要求8所述的多版本文件的去中心化存储方法,其特征在于,创建步骤如下:
S11.
客户端计算初始文件
v0的唯一标识符
CID
v0
,即将初始文件
v0切块并哈希,再将块的哈希拼接后进行哈希计算得到标识符
CID
v0
;
S12.
客户端从系统中选定一个...
【专利技术属性】
技术研发人员:童剑,郭河川,徐明辉,张家豪,吴义谱,李逸骏,谢群,李宜芳,成秀珍,于东晓,
申请(专利权)人:山东大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。