发明名称 一种具备去重功能的云数据公开审计方法
摘要 本发明公开了一种具备去重功能的云数据公开审计方法,属于网络安全技术领域。本发明包括:CA服务器设置系统参数,用户租赁云服务器存储空间后,向CA服务器申请公私钥对;云用户存储文件时先将欲存文件的哈希值发送给云服务器,云服务器对该哈希值进行检测,若此文件已存在于服务器中,云服务器将对云用户发送挑战信息进行拥有性验证,并根据应答验证用户是否真正拥有该数据文件。否则,云用户将文件与标签一起上传给云服务器;另外,审计服务器可根据用户请求验证云服务器中数据的完整性。本发明利用一轮非对称密钥协商算法实现了数据完整性验证,且实现了零知识隐私保护,我们还加入了实用的数据去重技术,大大提高了云服务器的利用率。
申请公布号 CN106254374A 申请公布日期 2016.12.21
申请号 CN201610801119.8 申请日期 2016.09.05
申请人 电子科技大学 发明人 禹勇;薛靓;臧力;李艳楠;邱佳惠;陈垚彤;吴淮
分类号 H04L29/06(2006.01)I;H04L9/08(2006.01)I;H04L9/32(2006.01)I;H04L29/08(2006.01)I;G06F17/30(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 电子科技大学专利中心 51203 代理人 周刘英
主权项 一种具备去重功能的云数据公开审计方法,其特征在于,包括下列步骤:步骤一:云用户生成密钥申请请求并发送至CA服务器,CA服务器为云用户选择一个随机数X生成密钥对:公钥PK=(R,A),私钥SK=(r,X),公钥参数R=g<sup>‑r</sup>,A=e(X,g),私钥参数<img file="FDA0001109232000000011.GIF" wi="154" he="71" />其中g为p阶乘法循环群G的生成元,e为G×G→G<sub>T</sub>的双线性映射,G<sub>T</sub>为p阶乘法循环群;并将私钥SK通过安全信道发送至云用户;步骤二:云用户设置待上传文件的文件标识符,并对待上传文件进行定长分割,得到n个数据块,云用户将待上传文件的数据内容作为哈希函数H的输入参数,生成文件哈希值并发送给云服务器,其中哈希函数H为从0和1组成的比特序列集映射到p阶乘法循环群G的抗碰撞哈希函数;云服务器判定当前文件的哈希值是否存在,若是,则向云用户发起拥有性验证;若否,则允许云用户上传当前文件;所述拥有性验证为:云服务器生成拥有性验证请求并发送给云用户,所述拥有性验证请求包括挑战值chal<sub>dup</sub>,其中挑战值chal<sub>dup</sub>的生成过程为:从当前文件中随机选择部分数据块构成挑战集Q对挑战集Q的每个数据块m<sub>j</sub>设置数据块随机数v<sub>j</sub>,下标j为数据块标识符且j∈Q,根据v<sub>j</sub>得到chal<sub>dup</sub>={(j,v<sub>j</sub>)<sub>j∈Q</sub>},其中<img file="FDA0001109232000000012.GIF" wi="171" he="67" /><img file="FDA0001109232000000013.GIF" wi="54" he="64" />为模p的乘法循环换群;云用户提取拥有性验证请求中的挑战值chal<sub>dup</sub>,根据μ=∑<sub>j∈Q</sub>v<sub>j</sub>m<sub>j</sub>得到响应值μ,其中m<sub>j</sub>表示当前文件的数据块,并将响应resp<sub>dup</sub>={μ}回传给云服务器;云服务器基于挑战值chal<sub>dup</sub>、响应resp<sub>dup</sub>进行有效性验证,若通过,则拥有性验证通过;否则拥有性验证失败;云用户上传当前文件的过程为:基于私钥SK和哈希函数H为每个数据块生成一个标签值,将文件标识符、n个数据块及标签值发送给云服务器进行云存储;步骤三:云用户向审计服务器发起审计请求,所述审计请求包括CA服务器生成的密钥对中的公钥、待审计文件标识符、云服务器标识符;审计服务器对接收的审计请求进行有效性验证,若无效,则拒绝请求;否则提取云服务器标识符、待验证文件标识符,生成挑战值chal<sub>int</sub>并发送给对应云服务器,其中挑战值chal<sub>int</sub>的生成过程为:随机挑选待审计文件的K个数据块标识符构成挑战集Q′,对应挑战集Q′的数据块标识,设置数据块随机数v′<sub>k</sub>,下标k为数据块标识符且k∈Q,<img file="FDA0001109232000000021.GIF" wi="173" he="69" />从中<img file="FDA0001109232000000022.GIF" wi="57" he="63" />随机选择参数t,生成参数X<sub>1</sub>=g<sup>t</sup>,X<sub>2</sub>=A<sup>t</sup>,其中g为p阶乘法循环群G的生成元,A为公钥参数A=e(X,g),获取X<sub>1</sub>关于g和X<sub>2</sub>关于A具有相同的离散对数的知识证明pf;由v′<sub>k</sub>、X<sub>1</sub>、X<sub>2</sub>、pf生成审计挑战chal<sub>int</sub>={(k,v′<sub>k</sub>)<sub>k∈Q′</sub>,X<sub>1</sub>,X<sub>2</sub>,pf};收到挑战值chal<sub>int</sub>的云服务器验证知识证明pf是否有效,若否,则审计失败;否则计算<img file="FDA0001109232000000023.GIF" wi="297" he="85" />μ=∑<sub>k∈Q′</sub>v′<sub>k</sub>m<sub>k</sub>,<img file="FDA0001109232000000024.GIF" wi="557" he="94" />然后发送响应resp<sub>int</sub>={σ,B}给审计服务器,其中m<sub>k</sub>表示第k个数据块,T<sub>k</sub>表示第k个数据块m<sub>k</sub>的标签值;审计服务器基于发送的挑战值chal<sub>int</sub>和响应resp<sub>int</sub>进行有效性验证,若验证通过,则向云用户发送审计成功的审计报告;否则发送审计失败的审计报告。
地址 611731 四川省成都市高新区(西区)西源大道2006号