1.一种适用于多副本‑多云情形下的无证书云审计方法,其特征在于,包括以下步骤:
1)数据拥有者DO提交身份信息ID,密钥生成中心KGC利用自身的系统主私钥根据部分密钥生成算法生成该数据拥有者DO的部分私钥PPID,然后将生成的部分私钥PPID发送给数据拥有者DO;
2)数据拥有者DO随机选择秘密值xID,再由PPID和xID利用密钥生成算法生成数据拥有者DO的完全私钥skID及公钥pkID,然后进行完全私钥skID的广播通知;
3)数据拥有者DO利用副本生成算法将待外包存储的数据文件F随机化,以生成N个副本F1,F2,…,FN,再利用标签生成算法,对每个副本生成相应的标签,得标签T1,T2,…,TN,然后将数据文件的副本F1,F2,…,FN及标签T1,T2,…,TN全部发送给云组织者CO,并删除数据拥有者DO的本地原始文件F,云组织者CO根据数据拥有者DO的请求,将每个副本‑标签对(Fi,Ti)发送给对应的云服务商CSP,1≤i≤N;
4)数据拥有者DO请求对外包存储的数据文件进行完整性验证,第三方审计TPA随机生成挑战消息q,并将挑战消息q发送给云组织者CO,云组织者CO将挑战消息q依次发送给各云服务商CSP;
5)各云服务商CSP根据所存储的数据文件副本及标签根据证明生成算法生成相应的证明Γi,当在任一云服务商CSP上存储多个副本时,则将每个生成的证明进行聚合作为该云服务商CSP的证明,云组织者CO获取各云服务商CSP的证明后将各云服务商CSP的证明进行聚合,得最终的证明Γ,然后将最终的证明Γ发送至第三方审计TPA;
6)第三方审计TPA根据挑战消息q及最终的证明Γ利用验证算法进行验证,然后将验证的结果发送给数据拥有者DO;
步骤1)的具体操作为:
1a)数据拥有者DO选择身份信息,再将选择的身份信息发送至密钥生成中心KGC;
1b)密钥生成中心KGC计算群元素TID并利用主私钥msk及哈希函数h计算部分私钥PPID=(TID,sID),其中,sID由主私钥msk、群元素TID及哈希函数h计算生成;
1c)密钥生成中心KGC将部分私钥PPID=(TID,sID)发送给数据拥有者DO;
步骤2)的具体操作为:
2a)数据拥有者DO将密钥生成中心KGC发送的部分私钥PPID拆分为(TID,sID);
2b)随机选择秘密值xID,并由秘密值xID计算XID;
2c)构建完全私钥skID=(sID,xID),公钥pkID=(TID,XID);
2d)进行完全私钥skID的广播通知;
步骤3)的具体操作为:
3a)对待外包存储的数据文件F随机选择文件名Fid;
3b)将待外包存储的数据文件F拆分为数据块m1,m2,…,mn,再将各数据块m1,m2,…,mn与指标i连结后利用AES加密算法进行加密,得加密后的副本Fi(1≤i≤N);
3c)对各加密后的副本Fi中的每个数据块mi,j计算标签Ti,j,Ti={Ti,1,Ti,2,…,Ti,n};
3d)将所有副本及其标签(F1,T1),(F2,T2),…,(FN,TN)和存储策略C发送给云组织者CO,同时,同时删除数据拥有者DO的本地原始文件F;
3e)云组织者CO根据数据拥有者DO的请求,再根据存储策略C将每个副本‑标签对(Fi,Ti)发送给对应的云服务商CSP;
步骤5)的具体操作为:
5a) 各云服 务商CSP寻找 在其上存储的全部数 据文件副本及标 签
5b)对各文件副本‑标签对 计算相应的证明
5c)将全部k个证明聚合为新的证明Γi=(σi,Mi)并发送给云组织者CO;
5d)云组织者CO再将所有云服务商CSP发送过来的证明聚合为最终的证明Γ=(σ,M),然后发送给第三方审计TPA;
步骤6)的具体操作为:
6a)第三方审计TPA将挑战消息q拆分为q={(ντ,aτ)τ=1,2,…,l};
6b)第三方审计TPA将云组织者CO发送的最终的证明Γ拆分为(σ,M);
6c)第三方审计TPA根据验证算法利用系统公共参数、数据文件名Fid、云存储策略C及Γ=(σ,M)进行验证,然后将验证的结果发送给数据拥有者DO。
2.根据权利要求1所述的适用于多副本‑多云情形下的无证书云审计方法,其特征在于,步骤4)的具体操作为:
4a)数据拥有者DO将文件名Fid根据存储策略C发送给第三方审计TPA,请求进行完整性验证;
4b)第三方审计TPA随机选择指标项1≤ν1<ν2<…<νl≤n及其对应的参数项a1,a2,…,al;
4c)第三方审计TPA将挑战消息q={(ντ,aτ)τ=1,2,…,l}发送给云组织者CO,云组织者CO将挑战消息q发送给各云服务商CSP。