一种基于智能合约以及纠删码编码的多云存储方法技术

技术编号:33716387 阅读:21 留言:0更新日期:2022-06-06 09:00
本发明专利技术公开了一种基于智能合约以及纠删码编码的多云存储方法,包括:初始化阶段,用户与云服务提供商之间制定服务级别协议,根据服务级别协议部署智能合约;数据存储阶段,用户将待存储数据划分为数据块,基于智能合约对数据块进行编码,并将编码后的数据块存储至云服务提供商;数据验证阶段,用户针对待验证数据块向云服务提供商发送验证请求,验证不通过,则用户申请进入仲裁和数据恢复阶段;仲裁和数据恢复阶段,对于不合规的云服务提供商进行数据块恢复处理,重建被损坏的数据块;将为恶意的用户以及不合规的云服务提供商作为违规者,根据服务级别协议对违规者进行处罚。该方法可以保证在相同可用性的情况下,节省大量存储空间。间。间。

【技术实现步骤摘要】
一种基于智能合约以及纠删码编码的多云存储方法


[0001]本专利技术涉及云服务数据处理
,具体涉及一种基于智能合约以及纠删码编码的多云存储方法。

技术介绍

[0002]在过去的几年中,诸如云计算和透明计算之类的网络计算技术以其强大的存储和处理能力为无数用户带来了便利。但是,在源数据上使用网络计算服务可能会给用户带来一些安全风险。用户数据的所有权被转移到网络存储服务中的云服务提供商(CSP)。数据所有者和实际控制者的分离可能会导致一个问题,即数据的完整性和可用性完全取决于CSP。不幸的是,CSP并不总是足够可靠,它可能会不小心损坏用户的数据,甚至恶意删除数据以减轻存储负担,因此,许多用户选择使用多个网络存储服务来协作存储和维护他们的数据。尽管这种分布式网络存储策略在某种程度上降低了数据完整性的安全风险,但仍然缺乏有效的措施来说服用户确信外包数据在多云系统中时安全的。
[0003]因此,建议将服务级别协议(SLA)作为具有法律约束力的合同,以保证云服务质量。SLA通常会制定服务需要满足的性能指标以及在违反SLA的情况下的赔偿计划。使用云存储服务时,它为用户提供法律和经济利益;然而,在多云系统中实现SLA的实际挑战时如何检测SLA违规,在当前的SLA模型,CSP在计算能力和存储能力上显示出明显的优势,当违反SLA时,用户很难获得证据,这削弱了SLA的公平性和有效性。因此,迫切需要一种用于远程检查数据完整性以检测多云存储中的SLA违规的有效方法。
[0004]区块链技术的兴起使得解决数据审计方案的集中化问题称为可能,但当前采用区块链解决多云环境下数据问题主要存在一下缺陷:1.目前的区块链数据审核方案虽然某种程度上解决了集中化问题,但在多云存储场景下还存在验证计算和通信开销过大的问题;2.当前技术不能实现保证数据完整性的同时还能够确保数据的高可用性,且存储资源占用过高。

技术实现思路

[0005]因此,本专利技术要解决的技术问题在于克服现有技术中的缺陷,从而提供一种可以对多云存储的数据进行审核,确保数据安全,并且能够在部分数据被损坏的情况下进行数据恢复的多云存储方法,具体为一种基于智能合约以及纠删码编码的多云存储方法。
[0006]本专利技术提供了一种基于智能合约以及纠删码编码的多云存储方法,其包括:初始化阶段:S1:用户与云服务提供商之间制定服务级别协议,根据服务级别协议部署智能合约;数据存储阶段:S2:用户将待存储数据划分为数据块,并计算验证标签;将验证标签发布到区块
链;S3:云服务提供商根据服务级别协议接收数据块,并计算检验标签;当验证标签等于检验标签时,基于智能合约对数据块进行编码,并将编码后的数据块存储至云服务提供商;数据验证阶段:S4:用户针对待验证数据块向云服务提供商发送验证请求;云服务提供商向用户响应完整性证明,并回复第一哈希值;用户接收第一哈希值,并根据所述待验证数据块得到第二哈希值;当所述第一哈希值等于所述第二哈希值时,验证通过;否则验证不通过,用户申请进入仲裁和数据恢复阶段;仲裁和数据恢复阶段:S5:智能合约根据待验证数据块,得到第三哈希值;当第一哈希值等于第三哈希值时,判定用户得到的第二哈希值不真实,用户为恶意;否则判定云服务提供商不合规;当云服务提供商不合规时,将损坏数据块;对于不合规的云服务提供商进行数据块恢复处理,重建被损坏的数据块;将为恶意的用户以及不合规的云服务提供商作为违规者,并将仲裁结果发布至区块链,根据服务级别协议对违规者进行处罚。
[0007]优选的,服务级别协议包括服务质量协议、可用性协议以及责任协议;智能合约包括存储服务验证智能合约、仲裁智能合约、多云管理智能合约以及RS编码服务智能合约。
[0008]优选的,S2中,用户将待存储数据划分为n个数据块,n个数据块的集合记为:O={obj1,obj2,

,obj
n
},obj
n
表示第n个数据块;用户为每个数据块计算验证标签,验证标签计算公式为:,其中,T(obj
i
)表示第i个数据块的验证标签,p、q为两个大质数,表示第i个数据块,i为计数;用户通过仲裁智能合约将验证标签发布到区块链。
[0009]优选的,S3中,云服务提供商根据服务级别协议接收数据块,并计算检验标签,检验标签记为:T(obj
i'
);当验证标签等于检验标签时,即T(obj
i
)=T(obj
i'
)时,基于RS编码服务智能合约对数据块进行编码,并将编码后的数据块存储至云服务提供商;否则云服务提供商将停止提供对用户的存储服务。
[0010]优选的,基于RS编码服务智能合约对数据块进行编码,并将编码后的数据块存储至云服务提供商的过程为:RS编码服务智能合约将数据块按照分布式存储系统集群的数量划分为多等份,并将每等分数据块发送给每个分布式存储系统集群;在分布式存储系统集群中选择主进程对数据块进行编码计算,得到校验块,并将数据块和校验块均切分为多个分片,将切分为多个分片的数据块以及校验块均存储至云服务提供商。
[0011]优选的,将切分为多个分片的数据块以及校验块均存储至云服务提供商的过程为:将n个数据块与矩阵通过矩阵乘方式进行编码计算,得到n个数据块以及y个校验
块,矩阵记为:,编码计算的计算公式为:其中,k
n
表示单位矩阵中的一个行向量;1≤n≤n+y,为单位矩阵,为范德蒙矩阵,表示包含数据块obj1至数据块obj
n
的矩阵,表示包含数据块至数据块、校验块至校验块的矩阵;将数据块至、校验块至按序存储至所述云服务提供商。
[0012]优选的,对于不合规的云服务提供商进行数据块恢复处理的过程为:对分布式存储集群进行判断,若分布式存储集群被损坏则数据块无法进行恢复处理;否则,对剩余的数据块和校验块的集合进行判断,剩余的数据块和校验块的集合记为:={,

,,,

,},j表示剩余的数据块的数量,m表示剩余的校验块的数量,当j+m小于n时,数据块无法进行恢复处理;否则,分布式存储集群中的主进程随机删除数据块或校验块,使得j+m等于n,将剩余的数据块和校验块的集合所对应的矩阵,记为;为可逆矩阵,其表达式为:其中,表示数据块或校验块在矩阵中对应的第n行向量;将剩余的数据块和校验块的矩阵与的逆矩阵相乘,计算公式为:
其中,表示剩余的数据块和校验块的矩阵,表示的逆矩阵,表示数据块的矩阵;将上式乘以k
i
,恢复数据块,计算公式为:其中,k
i
表示第i行第i列为1的单位行向量;1≤n≤n+y;obj
i
表示第i个数据块,i为计数,obj
n
表示第n个数据块,表示第j个剩余的数据块,表示第m个剩余的校验块。
[0013]优选的,S4中,云服务提供商接收验证请求,在规定时间内向用户响应完整性证明,并通过多云管理智能合约回复第一哈希值;若云服务提本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于智能合约以及纠删码编码的多云存储方法,其特征在于,包括:初始化阶段:S1:用户与云服务提供商之间制定服务级别协议,根据所述服务级别协议部署智能合约;数据存储阶段:S2:用户将待存储数据划分为数据块,并计算验证标签;将所述验证标签发布到区块链;S3:所述云服务提供商根据所述服务级别协议接收所述数据块,并计算检验标签;当所述验证标签等于所述检验标签时,基于所述智能合约对所述数据块进行编码,并将编码后的所述数据块存储至所述云服务提供商;数据验证阶段:S4:用户针对待验证数据块向所述云服务提供商发送验证请求;云服务提供商向用户响应完整性证明,并回复第一哈希值;用户接收第一哈希值,并根据所述待验证数据块得到第二哈希值;当所述第一哈希值等于所述第二哈希值时,验证通过;否则验证不通过,用户申请进入仲裁和数据恢复阶段;仲裁和数据恢复阶段:S5:智能合约根据所述待验证数据块,得到第三哈希值;当所述第一哈希值等于所述第三哈希值时,判定用户得到的所述第二哈希值不真实,用户为恶意;否则判定所述云服务提供商不合规;当所述云服务提供商不合规时,将损坏数据块;对于不合规的所述云服务提供商进行数据块恢复处理,重建被损坏的数据块;将为恶意的所述用户以及不合规的所述云服务提供商作为违规者,并将仲裁结果发布至区块链,根据所述服务级别协议对所述违规者进行处罚。2.根据权利要求1所述的一种基于智能合约以及纠删码编码的多云存储方法,其特征在于,所述服务级别协议包括服务质量协议、可用性协议以及责任协议;所述智能合约包括存储服务验证智能合约、仲裁智能合约、多云管理智能合约以及RS编码服务智能合约。3.根据权利要求2所述的一种基于智能合约以及纠删码编码的多云存储方法,其特征在于,S2中,所述用户将待存储数据划分为n个数据块,n个所述数据块的集合记为:O={obj1,obj2,

,obj
n
},obj
n
表示第n个数据块;所述用户为每个所述数据块计算验证标签,所述验证标签计算公式为:,其中,T(obj
i
)表示第i个数据块的验证标签,p、q为两个大质数,表示第i个数据块,i为计数;所述用户通过所述仲裁智能合约将所述验证标签发布到所述区块链。4.根据权利要求3所述的一种基于智能合约以及纠删码编码的多云存储方法,其特征在于,S3中,所述云服务提供商根据所述服务级别协议接收所述数据块,并计算检验标签,所述检验标签记为:T(obj
i'
);当所述验证标签等于所述检验标签时,即T(obj
i
)=T(obj
i'
)时,基于所述RS编码服务智能合约对所述数据块进行编码,并将编码后的所述数据块存储至所述云服务提供商;否则所述云服务提供商将停止提供对所述用户的存储服务。5.根据权利要求4所述的一种基于智能合约以及纠删码编码的多云存储方法,其特征
在于,基于所述RS编码服务智能合约对所述数据块进行编码,并将编码后的所述数据块存储至所述云服务提供商的过程为:所述RS编码服务智能合约将所述数据块按照分布式存储系统集群的数量划分为多等份,并将每等分所述数据块发送给每个所述分布式存...

【专利技术属性】
技术研发人员:徐雪松吴俊陈晓红郭泰彪闫月
申请(专利权)人:湖南工商大学
类型:发明
国别省市:

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

1