[发明专利]一种云存储服务中支持动态更新的数据完整性验证方法在审
申请号: | 202011310063.9 | 申请日: | 2020-11-20 |
公开(公告)号: | CN112527808A | 公开(公告)日: | 2021-03-19 |
发明(设计)人: | 张丽丽;张志勇;牛丹梅;李玉祥;宋斌;赵婷;荆军昌;黄帅娜;张孝国;靳正芬;向菲;赵长伟 | 申请(专利权)人: | 河南科技大学 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/25;G06F16/22 |
代理公司: | 洛阳公信知识产权事务所(普通合伙) 41120 | 代理人: | 王海龙 |
地址: | 471000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储 服务 支持 动态 更新 数据 完整性 验证 方法 | ||
1.一种云存储服务中支持动态更新的数据完整性验证方法,其特征在于,包括初始阶段、挑战阶段、应答阶段和验证阶段,并且该验证方法支持数据的动态更新;
所述初始化阶段由数据用户完成,通过多项式时间算法KeyGen产生公钥和私钥,通过多项式时间算法SigGen产生签名,用户并将消息{{f1,f2,...,fn},φ,Sigsk(H(R))}发送给云服务器,其中fi(1≤i≤n)代表第i个文件,φ表示n个文件的标签集合,Sigsk(H(R))表示DA-MBT树的根节点R的哈希值的签名;
所述挑战阶段由TPA完成,用户授权TPA周期性的向云服务器发起挑战,TPA从[1,…,n]随机挑选t个索引,并随机从Zp中选择t个随机数,t个数据对构成挑战信息;
所述应答阶段由云服务器完成,云服务器在收到TPA发送的挑战信息后,运行GenPro算法,生成证据信息并将证据作为响应信息发送给TPA;
所述验证阶段主要由TPA完成对服务器发来的证据的验证工作,TPA在收到云服务器发送的响应信息后,执行VerPro算法,通过判断数据块位置的正确性以及数据块内容的正确完成数据完整性的验证工作。
2.根据权利要求1所述的一种云存储服务中支持动态更新的数据完整性验证方法,其特征在于,所述初始化阶断的具体过程为:
S1、在KeyGen算法中,从随机选取私钥e:G×G→GT是双线性映射,g是G的生成元,计算对应公钥v=gx,选取哈希函数H:{0,1}*→G,h:GT→Zp,运行KeyGen算法产生的私钥为x,公钥为v;
S2、在SigGen算法中,选择一个文件记为F,用户先将文件F分成n块,记为F={f1,f2,...,fn},再随机选取参数为每一个数据块fi生成一个标签组成标签集合φ={Ti}(i=1,2,...,n)。用户根据所划分的数据块构造DA-MBT,假设初始化时每个叶子节点对应的动态数组的长度为l,则叶子节点所对应的值为H(H(fjl+1)||H(fjl+2)||L||H(fjl+l))0≤j<n/l,并向上迭代计算出根节点的哈希值H(R),用私钥x对根节点的哈希值进行签名Sigsk(H(R))=H(R)x,用户将信息{{f1,f2,...,fn},φ,Sigsk(H(R))}发送给服务器,其中g、v、u、e(u,v)均为公共参数。
3.根据权利要求1所述的一种云存储服务中支持动态更新的数据完整性验证方法,其特征在于,在挑战阶段,为了保证挑战的随机性,TPA从数据块的索引集合(1,2,L,n)中随机选取t个数值构成索引集合I={I1,I2,L,It},并且为每一个索引数据块生成一个随机非负数构成挑战对chal={(I1,v1),(I2,v2),L,(It,vt)}发送到服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河南科技大学,未经河南科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011310063.9/1.html,转载请声明来源钻瓜专利网。