一种云存储数据完整性验证方法与流程

文档序号:35502402发布日期:2023-09-20 14:36阅读:55来源:国知局
一种云存储数据完整性验证方法与流程

本发明涉及信息安全,尤其涉及一种云存储数据完整性验证方法。


背景技术:

1、随着时代的进步,大量的数据也随之产生,而文字、视频和图片的大量产出,导致本地存储能力严重告急,为了减少存储负担,用户大多数都会选择云服务提供商(cloudservice provider),这种方便有效的存储访问解决方案。然而,因服务器物理原因、以及外部攻击和云服务提供商不可信等问题,让用户存储数据完整性得不到有效保障,频繁发生数据丢失,篡改等问题。因此,用户需要定期进行云存储数据完整性的验证,用来保障自身权益。

2、在目前数据完整性验证方案中,公开号为cn105227549a的中国发明专利公开了一种数据持有性证明方案(pdp),属于信息安全领域,适用于云存储安全管理技术。方案中包括密钥生成模块、标签生成模块、挑战模块、证据生成模块和验证模块。发明所述的方案只需要加、减、乘和模运算,支持数据块的修改、追加操作,支持多副本的数据持有性证明和支持第三方可验证的数据持有性证明。发明所述的方案具有安全性高,计算成本低,需要存储空间和通信量少的优点,为开发一种数据持有性证明方案提出了一个新的研究方向。

3、然而,数据持有性证明方案需要下载后自行完成验证,导致数据完整性验证效率太低;同时,引入的包含第三方的云储存数据完整性验证也存在一些弊端,主要包括:第三方不可信、重放攻击和伪造验证结果。因此,有必要开发一种云存储数据完整性验证方法。


技术实现思路

1、本发明的目的在于针对云存储中数据完整性验证存在的第三方审计机构不可信,csp的重放攻击,伪造验证结果以及验证效率低问题,提供了一种云存储数据完整性验证方法,数据拥有者给每个数据块编号并分配多个随机挑战数,通过多层多次预哈希处理模型处理后,生成验证标签上传到区块链。通过挑战应答机制,csp接收到随机挑战数后与存储数据块生成完整性证明,发送给智能合约,通过智能合约与验证标签进行对比,生成验证结果。本方法引入区块链和智能合约可省去第三方审计机构;通过多层多次预哈希处理模型构造验证标签,可满足多次高效验证需求,提高数据完整性验证效率;随机挑战数的存在,可抵御csp的重放攻击,提高数据完整性验证安全性。因而,本发明可有效改善云存储中数据完整性验证存在的第三方审计机构不可信,csp的重放攻击,伪造验证结果以及验证效率低问题。

2、第一方面,本发明提供的一种云存储数据完整性验证方法包含以下步骤:切片待存储文件得到多个数据块并编号,将多个所述数据块及对应编号上传至云存储进行存储;

3、为所述数据块分配k个随机挑战数,并对所述数据块及k个所述随机挑战数进行l次加盐哈希后再进行n-l次哈希计算,得到所述数据块对应的k个验证标签,并将所述数据块及对应的验证标签上传至区块链;其中,所述l为大于或等于1,且小于n的自然数,所述k和n均为大于或等于2的自然数;

4、将待验证数据块的编号和所述待验证数据块对应的随机挑战数发送至所述云存储,基于所述待验证数据块的编号调用所述待验证数据块;

5、将所述待验证数据块及所述云存储接收的随机挑战数进行l次加盐哈希后输入区块链再进行n-l次哈希计算,输出验证证据后与所述验证标签进行对比,输出验证结果;其中,所述l为大于或等于1,且小于n的自然数。

6、本发明提供的一种云存储数据完整性验证方法的有益效果在于:引入区块链和智能合约技术可省去第三方审计机构;通过多层多次预哈希处理模型构造数据标签,可满足多次高效验证需求,提高数据完整性验证效率;随机挑战数的存在,可抵御csp的重放攻击,提高数据完整性验证安全性;可有效改善云存储中数据完整性验证存在的第三方审计机构不可信,csp的重放攻击,伪造验证结果以及验证效率低问题。

7、优选的,对同一待验证数据块进行多次验证时,执行将待验证数据块的编号和所述待验证数据块对应的随机挑战数发送至所述云存储的过程中,发送至所述云存储的所述待验证数据块对应的随机挑战数不同。如此,可抵御csp的重放攻击,提高数据完整性验证安全性;同时,对所述数据块进行多次验证时,还可避免每次验证后需重新下载所述待存储文件,从而提高数据完整性验证效率。

8、优选的,执行所述验证证据与所述验证标签进行比对输出验证结果时,包括:当所述验证证据包含在验证标签内时,输出验证结果为存储在云存储上的数据完整;否则,输出验证结果为存储在云存储上的数据不完整。如此,可准确完成对云存储数据完整性的验证。

9、优选的,所述区块链上设置有智能合约,所述智能合约设定有触发条件;执行所述区块链进行n-l次哈希计算的过程中,满足所述触发条件后,在所述区块链上的智能合约进行进行n-l次哈希计算。如此,可达到验证过程公开透明和验证历史可查询的目的,提高数据完整性验证的安全性。

10、优选的,执行所述验证证据与所述验证标签进行比对输出验证结果的过程中,在所述智能合约上进行比对并输出验证结果。如此,可避免第三方审计机构不可信问题和单点故障发生,可避免第三方可能存在安全漏洞、故意篡改数据或被攻击的问题。

11、优选的,将所述待验证数据块及所述云存储接收的随机挑战数进行l次加盐哈希后,输出完整性证明。

12、优选的,将所述待验证数据块及所述云存储接收的随机挑战数进行l次加盐哈希后输入区块链的过程中,包括:将所述完整性证明及对应待验证数据块的编号输入区块链。

13、优选的,所述触发条件为所述区块链接收到所述云存储发送的所述完整性证明。如此,可避免智能合约在无验证的情况下造成资源浪费的发生。

14、优选的,执行所述加盐哈希和所述哈希计算时,均使用sha256哈希运算,哈希运算具有不可逆性,可防止云存储中的云服务提供商通过加盐哈希信息,破解出相应挑战数,伪造验证结果,可有效提高验证安全性。

15、第二方面,本发明提供的一种云存储数据完整性验证系统,采用如下技术方案:包括:

16、存储模块,所述存储模块用于切分待存储文件得到多个数据块,并对多个所述数据块进行编号后将所述数据块及对应编号上传至云存储;

17、标签模块,所述标签模块用于为所述数据块分配k个随机挑战数,并对所述数据块及k个所述随机挑战数进行l次加盐哈希后再进行n-l次哈希计算,得到所述数据块对应的k个验证标签,并将所述数据块及对应的验证标签上传至区块链;其中,所述l为大于或等于1,且小于n的自然数,所述k和n均为大于或等于2的自然数;

18、验证模块,所述验证模块用于将待验证数据块的编号和所述待验证数据块对应的随机挑战数发送至所述云存储,基于所述待验证数据块的编号调用所述待验证数据块;将所述待验证数据块及所述云存储接收的随机挑战数进行l次加盐哈希后输入区块链再进行n-l次哈希计算,输出验证证据后与所述验证标签进行对比,输出验证结果;其中,所述l为大于或等于1,且小于n的自然数。

19、本发明提供的一种云存储数据完整性验证系统的有益效果在于:引入区块链和智能合约技术可省去第三方审计机构;通过多层多次预哈希处理模型构造数据标签,可满足多次高效验证需求,提高数据完整性验证效率;随机挑战数的存在,可抵御csp的重放攻击,提高数据完整性验证安全性;可有效改善云存储中数据完整性验证存在的第三方审计机构不可信,csp的重放攻击,伪造验证结果以及验证效率低问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1