(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210703618.9
(22)申请日 2022.06.21
(71)申请人 金陵科技学院
地址 211169 江苏省南京市江宁区弘景 大
道99号
(72)发明人 阎浩 柳亚男 黄丹丹 邱硕
张正
(74)专利代理 机构 南京知识律师事务所 32 207
专利代理师 陈卓
(51)Int.Cl.
H04L 9/40(2022.01)
H04L 9/08(2006.01)
H04L 9/30(2006.01)
H04L 9/32(2006.01)
H04L 67/1097(2022.01)
(54)发明名称
一种抗密钥泄露的云存储数据完整性验证
方法
(57)摘要
本发明涉及一种高效的抗密钥泄露的云存
储数据完整性验证方法, 属于云计算安全技术领
域。 本方案针对云存储数据的完整性验证及客户
密钥泄露问题而设计, 实现了抗密钥泄露攻击下
的安全云存储 数据完整性验证。 方案中云客户端
首先为数据生成验证标签, 然后将数据及标签上
传到云存储中共享。 当验证者挑战数据完整性
时, 云服务器基于数据和标签生成完整性证据并
返回给验证者。 客户定期更新自己的私钥, 并基
于新的私钥生成标签更新密钥, 云服务器利用标
签更新密钥完成数据标签的更新。 本发明通过客
户密钥和验证标签的周期性更新, 实现了抗密钥
泄露攻击 下的云存储数据完整性验证, 是安全高
效的。
权利要求书2页 说明书6页 附图1页
CN 114978753 A
2022.08.30
CN 114978753 A
1.一种抗密钥泄 露的云存 储数据完整性验证方法, 其特 征在于, 包括以下步骤:
步骤1: 系统建立, 生成公开 参数;
步骤2: 客户生成两组密钥对, 一组用于生成数据块标签, 一组用于生成文件标签;
步骤3: 客户为外包到云存储中的数据生成数据块标签和文件标签, 然后将数据块及数
据块标签上传到云存 储中, 并将文件标签发送给验证者;
步骤4: 客户不定期更新私钥, 以抵抗密钥泄 露攻击;
步骤5: 客户生成标签更新密钥, 用于更新云存 储中的数据块标签;
步骤6: 云服 务器利用数据块更新密钥rskt, 将原数据标签更新。
2.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤1具体如下:
步骤1‑1: 设定系统安全参数k,随机 选择一个大 素数p, 满足|p|= k;
步骤1‑2: 选择G1和G2两个阶为p的乘法循环群, g是群G1的生成元, e:G1×G1→G2是双线
性映射; 选 择三个不同的Hash函数h1:{0,1}*→G1,h2:{0,1}*→G1和h3:{0,1}*→Zp, 以及一个
伪随机置换
Zp×{1…n}→{1…n}和一个伪随机函数φ:Zp×Zp→Zp; 输出系统公开 参数
3.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤2具体如下:
步骤2‑1: 客户设定生成首个私钥sk0的时间是t0; 客户随机选择一个整数a0∈Zp, 将其设
置为初始私钥sk0=a0; 客户计算公钥
得到密钥对(sk0,pk);
步骤2‑2: 客户随机 选择一个 签名算法SIG, 并生成相应的密钥对(s sk,spk)。
4.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤3具体如下:
步骤3‑1: 客户首先将外包数据F分割成n个数据块, 表示为F=(m1,…,mn), 其中每个数
据块mj∈Zp(j∈[1,n]); 客户设置密钥更新的时间周期为 △t并基于△t和客户身份标识UID
计算得到U=h2(UID||△t); 接着,客户随机 选择整数 λ∈Zp,计算得到W =gλ;
步骤3‑2: 客户为数据块mj计算验证标签为:
利用该公式客户
计算出所有数据块标签的集 合: θ =( θ1,…, θn); 客户将(F, θ )上传到云存 储服务器中保存;
步骤3‑3: 客户使用签名算法SIG及密钥对(ssk,sp k)计算文件标签: FTag=SIG(FID||W
||△t||t0), 其中FID为数据F的唯一标识; 客户将(FID,W, △t,t0,FTag)发送给第三方验证
者; 验证者利用spk验证文件标签的合法性, 如果 合法则将其留存, 否则要求 客户重新发送。
5.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤4具体如下:
客户初始私钥sk0的生成时间是t0, 那么在第i个时间周期ti=t0+i·△t时, 客户私钥更
新为: ski=h3(ti)·sk0=h3(t0+i·△t)·a0。
6.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤5具体如下:
步骤5‑1: 客户生成新的私钥后, 原云存储中的数据块验证标签需要同步更新, 以确保
数据完整性的验证功能是正常的; 假设在前一个周期t ‑1时客户的私钥为skt‑1, 在当前时间权 利 要 求 书 1/2 页
2
CN 114978753 A
2周期t时客户的私钥更新为skt, 那么数据块更新密钥计算为:
客户将数
据块更新密钥rskt发送给云服 务器。
7.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤6具体如下:
步骤6‑1: 收到数据块更新密钥后, 云服务器利用数据块的原数据 标签计算得到新的标
签; 假设在时间周期t ‑1时数据块mj的标签为θj,t‑1, 在当前时间周期t时数据块的标签为
利用该公式, 云存储服务器将所有的数据块标签更
新。
8.根据权利要求1所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
还包括以下步骤:
步骤7: 验证者挑战云存 储服务器上的数据是否 完好如初, 具体如下:
验证者在时间周期t(t>t0)时挑战数据完整性, 验证者选择两个随机数k1,k2∈Zp, 同时
设置要挑战的数据块数量c∈[1,n]; 验 证者将挑战信息chal=(c,k1,k2)发送给云存储服务
器;
步骤8: 云服务器接收到验证者的挑战信息后, 为挑战的数据块生成完整性证据, 并将
证据返回给验证者检查数据的完整性;
云服务器利用伪随机置换函数计算得到挑战的数据块索引集合:
同时利用伪随机函数计算得到随机系数集合: S={si=φ(i,k2)|i∈[1,c]}; 然后, 云服务
器计算完整性证据为:
并将P=(M,Γ)发送给验证者;
步骤9: 验证者接收到证据后, 对证据进行验证, 并根据验证结果判定数据是否完好如
初。
9.根据权利要求8所述的一种抗密钥泄露 的云存储数据完整性验证方法, 其特征在于,
步骤9还包括以下步骤:
步骤9‑1: 验证者首先计算从初始时间t0到当前时间t的周期数, 也即客户私钥更新的次数: l
=(t‑t0)/△t; 然后伪随机置换函数计算得到挑战的数据块索引集合:
利用伪随机函数计算得到随机系数集 合: S={si=φ(i,k2)|i∈[1,c]};
步骤9‑2: 验证者验证公式
是
否成立, 成立说明数据是完整的, 否则说明数据不完整;
步骤9‑3: 验证者将验证结果如实反馈给客户, 客户根据验证结果处 理后续事情。权 利 要 求 书 2/2 页
3
CN 114978753 A
3
专利 一种抗密钥泄露的云存储数据完整性验证方法
文档预览
中文文档
10 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 08:16:09上传分享