CN111586036B - 一种去中心化的多云自审计方法及系统 - Google Patents

一种去中心化的多云自审计方法及系统 Download PDF

Info

Publication number
CN111586036B
CN111586036B CN202010372512.6A CN202010372512A CN111586036B CN 111586036 B CN111586036 B CN 111586036B CN 202010372512 A CN202010372512 A CN 202010372512A CN 111586036 B CN111586036 B CN 111586036B
Authority
CN
China
Prior art keywords
data
cloud server
evidence
cloud
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010372512.6A
Other languages
English (en)
Other versions
CN111586036A (zh
Inventor
李艳平
苏院
段雅婷
李彦卓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Urban Construction Intelligent Control Technology Co ltd
Beijing Zhanyun Technology Co ltd
Original Assignee
Beijing Urban Construction Intelligent Control Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Urban Construction Intelligent Control Technology Co ltd filed Critical Beijing Urban Construction Intelligent Control Technology Co ltd
Priority to CN202010372512.6A priority Critical patent/CN111586036B/zh
Publication of CN111586036A publication Critical patent/CN111586036A/zh
Application granted granted Critical
Publication of CN111586036B publication Critical patent/CN111586036B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种去中心化的多云自审计方法及系统,属于云存储技术领域,包括以下步骤:(1)可信机构TA首先生成系统参数,并为选择的v个多云服务器CS,产生结构E的(v,k+1,1)‑设计进行分组;(2)数据拥有者将原数据文件F分割为m个数据部分,并得到签名集合,将编码后的数据部分和签名集合发送给对应云服务器;(3)数据拥有者生成原数据文件F的审计请求,将该审计请求广播给所有的云服务器,每个云服务器验证该完整性证据,得到审计结果报告,并将审计结果报告发送给数据拥有者。本发明解决了外包数据的完整性审计中存在的若干问题。本发明完全不同于传统的多云审计工作,将数据拥有者从受限的计算资源中解放出来。

Description

一种去中心化的多云自审计方法及系统
技术领域
本发明属于云存储技术领域,具体涉及一种去中心化的多云自审计方法及系统。
背景技术
近年来,云存储进入我们的日常生活,并成为一个重要的工具。云服务提供商提供按需的高质量存储服务,用户将数据外包给云服务器减少本地存储负担和数据管理负担。然而,对用户外包数据的安全威胁也存在。由于越来越多的数据泄露事件,外包数据可能被行为不端的云服务器非法篡改,甚至被丢弃。幸运的是,云审计技术可以用来检查数据的完整性。大量的工作为外包数据提供了不同审计方案。然而,这些方案大多集中于单个云服务器场景上。如果单个服务器无法工作,它不仅不能保证数据的可用性,但也会导致数据丢失。此外,根据权威研究结构IDC发布的报告指出,世界上没有任何服务器是完全可信和完全安全的,即服务器容易遭受泄露外包数据的隐私。因此,用户倾向于将他们的数据分发到多个云服务器,这样就没有一个服务器能够获得所有数据副本。在多云存储中,目前大部分工作都引入组织者来分发天战请求,聚合审计证据,从而帮助完成外包数据的完整性验证。不幸的是,作为中间人的组织者也很容易遭受拒绝服务攻击,这将导致审计任务中断,因为它负责审计任务中最重要的部分。另一类的现有工作考虑将审计任务委托给可信第三方审计者(TPA),以减少数据所有者的计算负担。虽然TPA有足够的专业知识和能力进行审计服务,但是它可能成为性能瓶颈,因为它面临着大量的数据所有者和审计任务,同时需要与各种云服务器通信。
为了检查云存储中外包数据的完整性,文献G.Ateniese,R.Burns,R.Curtmola,J.Herring,L.Kissner,Z.Peterson,and D.Song.Provable data possession atuntrusted stores.In Proceedings of the 14th ACM conference on Computer andcommunications security,pages 598-609,2007.提出了一种可证明数据拥有(PDP)的方案,该方案允许用户验证数据完整性,消除了传统方法需要下载全部的数据来验证数据完整性的缺陷。文献A.Juels and B.S.Kaliski Jr.Pors:Proofs of retrievability forlarge files.In Proceedings of the 14th ACM conference on Computer andcommunications security,pages 584-597,2007.提出了另一种称为“可恢复性证明(PoR)”的方案,它预先嵌入了一些称为“哨兵”的值,能够使用户通过检查这些“哨兵”的存在来检查数据的完整性。之后,云审计已经被广泛发展在许多具有重要性质的方案中,如公共验证、数据更新、批量审计。但是,这些方案将数据集中存储在单云服务器。然而在单云服务器上,集中存储数据是不合适的,因为云是不诚实的,同时对数据十分好奇。而且当数据发生泄漏时,云服务器很容易获得全部数据。
一些文献讨论了多云存储中外包数据的完整性审计。基于纠删码,文献C.Wang,Q.Wang,K.Ren,N.Cao,and W.Lou.Toward secure and dependable storage services incloud computing.IEEE transactions on Services Computing,5(2):220-232,2011提出了动态的具有数据错误定位(TSDS)的多云存储方案,支持数据损坏时的数据恢复。不幸的是,该方案要求数据所有者存储验证元数据,这给数据所有者带来了沉重的存储负担。文献Y.Zhu,H.Hu,G.Ahn,and M.Yu.Cooperative provable data possession for integrityverification in multicloud storage.IEEE transactions on parallel anddistributed systems,23(12):2231-2244,2012.提出了一种多云环境下的外包数据的完整性验证PDP方案(CPDP),该方案指定一个云服务器作为组织者,并与其他云服务器交互以完成审计过程。然而,文献H.Wang and Y.Zhang.On the knowledge soundness of acooperative provable data possession scheme in multicloud storage.IEEETransactions on Parallel and Distributed Systems,25(1):264-267,2013.指出了在CPDP方案中,恶意服务器能够在所有存储的数据都已损坏的情况下生成一个有效的证据。文献K.He,C.Huang,J.Wang,H.Zhou,X.Chen,Y.Lu,L.Zhang,and B.Wang.An efficientpublic batch auditing protocol for data security in multi-cloud storage.In2013 8th ChinaGrid Annual Conference,pages 51-56,2013.提出了一种面向多云存储的批量审计方案,并引入了一个组织者将数据存储到不同的云服务器中。在审计阶段,组织者帮助分发挑战请求,并聚合不同云服务器产生的证据。文献H.Wang.Identity-baseddistributed provable data possession in multicloud storage.IEEE Transactionson Services Computing,8(2):328-340,2014.提出一种基于身份的分布式PDP方案(DPDP),它引入了一个组织者(combiner)来分法数据-签名块和挑战消息,并将来自不同服务器的证据聚合在一起。然而,文献S.Peng,F.Zhou,J.Xu,and Z.Xu.Comments on“identity-based distributed provable data possession in multicloud storage”.IEEE Transactions on Services Computing,9(6):996-998,2016.发现DPDP方案达不到文中所称的安全性,即云服务器可以在不拥有原始数据块的情况下生成有效的证明,同时提出一个新的解决方案。文献J.Li,H.Yan,and Y.Zhang.Efficient identity-basedprovable multi-copy data possession in multi-cloud storage.IEEE Transactionson Cloud Computing,2019.提出了一种基于身份的、可证明的用于云存储的多副本数据方案(MCPDP)。然而,他们的工作需要将不同的数据副本存储在不同的云服务器,这导致额外的存储和通信开销,同时还引入了一个组织者来帮助数据完整性审计。
因此,目前大多数的云审计方案是雇用了一个合并者(组织者或TPA)来完成审计工作,这可能将数据泄露给组织者和TPA,同时造成额外开销。事实上,在实际中很难找到一个完全信任的第三方。
针对上述外包数据的完整性审计中存在的若干问题,本发明提供了一种去中心化的多云自审计方法及系统。
发明内容
本发明的目的在于提供了一种去中心化的多云自审计方法,本发明所涉及的实体分别是云服务提供商、云服务器和数据拥有者。
同时本申请还提供了一种能够实现上述去中心化的多云自审计方法的去中心化的多云自审计系统。
本申请采用的技术方案是:
一种去中心化的多云自审计方法,其包括以下步骤:
(1)可信机构TA首先生成系统参数,并为选择的v个多云服务器CS,产生结构E的(v,k+1,1)-设计进行分组;
(2)数据拥有者将原数据文件F分割为m个数据部分,并将每个数据部分分割为n个数据块,生成矩阵G=(Im×m|Pm×(v-m))(v>m),用矩阵G对原数据文件F进行编码,得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,…,v-1)为编码文件C中第i个编码后的数据部分,数据拥有者为编码后的数据部分Ci(i=0,1,…,v-1)中的每个数据块计算签名,得到对应的签名集合Φi(i=0,…,v-1),并将编码后的数据部分Ci(i=0,1,…,v-1)和签名集合Φi(i=0,…,v-1)发送给对应的云服务器CSi(i=0,1,…,v-1);
(3)数据拥有者生成原数据文件F的审计请求,将该审计请求广播给所有的云服务器,当所有的云服务器收到审计请求后,首先生成自己存储数据的完整性证据,然后与其他云服务器进行第一次交互生成原数据文件F的部分聚合完整性证据,最后与其他云服务器进行第二次交互生成原数据文件F的完整性证据(P,Λ),每个云服务器验证该完整性证据,得到审计结果报告,并将审计结果报告发送给数据拥有者。
进一步限定,所述步骤(1)具体为:
(1.1)系统参数生成:
TA执行Setup算法生成并公开系统参数params=(p,g,g1,G1,GT,e,H1,H2,结构E的(v,k+1,1)-设计),具体为:输入用于规定系统参数长度的安全参数λ和一个素数k,输出两个p(p为素数且p>2λ)阶的乘法循环群G1和GT(g和g1是G1的两个生成元),一个双线性映射e:G1×G1→GT,两个抗碰撞的哈希函数H1:{0,1}*→G1
Figure BDA0002478846620000051
Figure BDA0002478846620000052
生成结构E的(v,k+1,1)-设计,并选择v个云服务器(v=k2+k+1),根据结构E的(v,k+1,1)-设计,将v个云服务器分为v个区组{E0,E1,...,Ev-1},每个区组Ei(i=0,1,…,v-1)由k+1个云服务器组成,即结构E的(v,k+1,1)-设计中的第i个区组Ei中的元素t表示的是云服务器CSt
(1.2)密钥生成:
数据拥有者在集合
Figure BDA0002478846620000053
选取随机数α,计算其公钥y=gα
Figure BDA0002478846620000054
进而得到其公钥pk=(y,z)和私钥sk=α。
进一步限定,所述步骤(2)具体为:
(2.1)文件分割与编码:
文件分割,具体为:数据拥有者将具有标识符τ=H2(F)的原数据文件F分割为m个数据部分{F0,F1,…,Fm-1},对于原数据文件F的第x个数据部分Fx(x=1,2,…,m-1),数据拥有者将Fx分割为n块{di1,di2,…,din};
文件编码,具体为:首先构建矩阵G=(Im×m|Pm×(v-m)),其中Im×m是一个单位矩阵,Pm×(v-m)(v>m)是一个柯西矩阵,其次用矩阵G对原数据文件F进行编码得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,1,…,v-1)为编码文件C的第i个编码后的数据部分且Ci的标识符也为τ;
(2.2)标签生成:
对于编码文件C的第i个编码后的数据部分Ci={di1,di2,…,din}(i=1,…,v-1),数据拥有者为编码后的数据部分Ci中的第j个数据块dij(1≤j≤n)计算签名
Figure BDA0002478846620000061
其中IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,然后得到编码后的数据部分Ci对应的签名集合Φi={σi1,σi2,…,σin},最后数据拥有者将编码后的数据部分Ci和签名集合Φi发送给第i个云服务器CSi,云服务器CSi(i=0,1,…,v-1)接收并存储编码后的数据部分Ci和签名集合Φi
进一步限定,所述步骤(3)具体为:
(3.1)生成审计请求:
首先数据拥有者选定进行审计的文件F,其标识符为τ,其次数据拥有者从文件索引集合{1,…,n}中随机挑选s个索引组成审计索引集合J={j1,j2,…,js}s≤n,并选择一组系数{uj}j∈J,其中
Figure BDA0002478846620000062
最后数据拥有者将审计请求Ω={τ,J,{uj}j∈J}广播给云服务器CSi(i=0,1,…,v-1);
(3.2)证据生成:
当第i个云服务器CSi(i=0,1,…,v-1)收到审计请求Ω,首先计算
Figure BDA0002478846620000063
Figure BDA0002478846620000064
其中随机数
Figure BDA0002478846620000065
其次计算文件F中被审计数据块聚合签名
Figure BDA0002478846620000066
Figure BDA0002478846620000067
和文件块的线性组合
Figure BDA0002478846620000068
最后得到自存储数据的证据(σi,μi);
(3.3)证据聚合:
第i个云服务器CSi(i=0,1,…,v-1)首先广播Ri,其次云服务器CSi需要与其他云服务器进行两轮交互,最后得到文件F完整性证据(P,Λ);
(3.4)自验证:
第i个云服务器CSi(i=0,1,…,v-1)可以得到完整性证据(P,Λ)和所有的Ri(i=0,1,…,v-1),并利用等式(1)来检验完整性证据(P,Λ);如果方程(4)成立,云服务器生成内容为“True”的审计报告并发送给给数据拥有者,否则,云服务器生成内容为“False”的审计报告并发送给给数据拥有者;
Figure BDA0002478846620000071
进一步限定,所述步骤(3.3)具体为:
(3.3.1)第一轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,第t个云服务器CSt(t<v)需要发送自存储数据的证据(σt,μt)给云服务器CSi;当云服务器CSi(i=0,1,…,v-1)从其他云服务器CSt满足t∈Ei(t≠i)处接收到k个自存储数据的证据{(σt,μt)}(t∈Ei),然后计算得到部分聚合证据(Pij,Λij),其中
Figure BDA0002478846620000072
(3.3.2)第二轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSi需要发送部分聚合证据(Pit,Λit)给云服务器CSt;当云服务器CSt(t=0,1,…,v-1)从其他云服务器CSi(t∈Ei)处接收到k个部分聚合证据{(Pit,Λit)}(t∈Ei),然后可以计算得到完整性证据(P,Λ),其中
Figure BDA0002478846620000073
Figure BDA0002478846620000074
进一步限定,所述步骤(3)之后还包括步骤(a1)错误定位或步骤(a2)抵抗拒绝服务攻击,具体为:
(a1)错误定位
在步骤(3.4)自验证完成之后,数据拥有者会至多收到来自v个云服务器的v份审计报告,如果其中有一份报告的内容为“False”时,数据拥有者会发起错误定位去定位行为不端的云服务器,具体为:
首先,数据拥有者随机挑选一个参与审计的第i个云服务器CSi(0≤i≤v-1),其次云服务器CSi自存储数据的证据
Figure BDA0002478846620000081
和部分聚合证据
Figure BDA0002478846620000082
给数据拥有者,Et为v个区组中的第t个区组(0≤t≤v-1),然后数据拥有者用等式(1)检验自存储数据的证据
Figure BDA0002478846620000083
和部分聚合证据
Figure BDA0002478846620000084
如果证据
Figure BDA0002478846620000085
没有通过验证,则表示第l个云服务器CSl(l<v)是行为不端的云服务器;如果证据
Figure BDA0002478846620000086
没有通过验证,则云服务器CSw(w<v)就会被要求发送自存储数据的证据
Figure BDA0002478846620000087
给数据拥有者,其中Ew为v个区组中的第w个区组(0≤w≤v-1),数据拥有者用等式(1)验证从云服务器CSw处接收的自存储数据的证据
Figure BDA0002478846620000088
从而找到恶意的云服务器,最后数据拥有者记录下行为不端的云服务器的标识符ID,进而实现错误定位;
(a2)抵抗拒绝服务攻击:
在(3.3)证据聚合的过程中,在第一轮交互过程中,如果第i个云服务器CSi从满足j∈Ei的云服务器CSj处收到k个自存储数据的证据,如果在固定的时间段Δt内,收到的自存储数据的证据的数量小于k,云服务器CSi就推断没有发送自存储数据的证据的云服务器CSj是恶意的云服务器或者云服务器CSj正在遭受拒绝服务攻击,这时备用的云服务器
Figure BDA0002478846620000089
将会介入来帮助完成证据聚合,在第一轮交互过程中,备用的云服务器
Figure BDA00024788466200000810
代替云服务器CSj去接收其他云服务器发送给它的自存储数据的证据,但是不需要发送自存储数据的证据给相应的云服务器,并进行聚合数据的计算,在第二轮交互过程中,备用的云服务器
Figure BDA00024788466200000811
只需要把聚合证据发送给云服务器CSt(t∈Ej),抵抗拒绝服务攻击,保护数据完整。
进一步限定,所述步骤(3)之后还包括步骤(a3)数据恢复或步骤(a4)服务器撤销;具体为:
(a3)数据恢复
对于文件F和对应的编码文件C,如果编码文件C中至少有m个编码后的数据部分
Figure BDA0002478846620000091
没有损坏,则损坏的数据部分可以被恢复,首先,数据拥有者将这m个编码后的数据部分
Figure BDA0002478846620000092
从对应的m个云服务器
Figure BDA0002478846620000093
处取回,然后可以计算得到文件F的m个数据部分
Figure BDA0002478846620000094
Figure BDA0002478846620000095
其中
Figure BDA0002478846620000096
表示矩阵G的第is列,随后数据拥有者将文件F重新编码并上传到相应的云服务器;
(a4)服务器撤销
假设第i个云服务CSi是即将被撤销的服务器,首先数据拥有者取回存储在云服务器CSi处的数据,如果数据被云服务器损坏的话,就恢复数据。然后,数据拥有者寻找信誉良好的、标识符为IDj的新的云服务器CSj,使用(2.2)标签生成去重新计算该数据部分中数据块的签名,最后把该数据部分和对应的签名集合签名上传到新的云服务器CSj处,提高系统的鲁棒性,并支持恶意的云服务器的撤销,防止恶意云服务器进一步损坏外包数据。
进一步限定,所述步骤(3)之后还包括步骤(a5)批量审计,具体为:
对于文件集
Figure BDA0002478846620000097
其中τh
Figure BDA0002478846620000098
的标识符,数据拥有者为文件
Figure BDA0002478846620000099
的第i个数据部分
Figure BDA00024788466200000910
中的第j个数据块
Figure BDA00024788466200000911
计算签名
Figure BDA00024788466200000912
得到对应的签名集合
Figure BDA00024788466200000913
并将数据部分
Figure BDA00024788466200000914
和签名集合
Figure BDA00024788466200000915
发送给云服务器CSi(i=0,1,…,v-1)。在数据自审计阶段,数据拥有者发起对于文件
Figure BDA00024788466200000916
的审计,广播审计请求
Figure BDA00024788466200000917
给所有的云服务器;当云服务器CSi(i=0,1,…,v-1)收到审计请求后,计算
Figure BDA0002478846620000101
其中
Figure BDA0002478846620000102
和自存储数据的证据
Figure BDA0002478846620000103
Figure BDA0002478846620000104
Figure BDA0002478846620000105
然后每个云服务器CSi广播Ri,并进行(3.3.1)和(3.3.1)的两轮交互得到完整性证据(P,Λ),最后用等式(2)验证完整性证据(P,Λ);
Figure BDA0002478846620000106
实现批量审计,大幅提高自审计效率。
一种实现上述的去中心化的多云自审计方法的自审计系统,其包括可信机构TA、云服务器和数据拥有者;
所述可信机构TA,生成系统参数,选择v个云服务器CS,将这v个云服务器根据结构E的(v,k+1,1)-设计进行分组;
所述数据拥有者,将原数据文件F进行分割、编码后生成签名集合,发送给云服务器,并向云服务器发送审计请求;
所述云服务器,接收数据拥有者发送的审计请求,生成自存储数据的证据,通过两次交互,生成审计文件对应的部分聚合证据和完整性证据(P,Λ),验证完整证据,生成审计结果的报告,并发送给数据拥有者。
与现有技术相比,本申请具有以下优点:
(1)基于对称平衡不完全区组设计,本发明通过云服务器的交互来实现无需组织者或TPA的自审计,允许数据所有者在审计阶段有效地检查数据完整性而不承担任何计算成本,这是完全不同于传统的多云审计工作。此外,在本申请中,所有审计过程中的计算开销被平均分配在到单个云服务器上,这将数据拥有者从受限的计算资源中解放出来。
(2)本发明可以以较低的计算开销和通信开销来定位恶意的云服务器,并提供了一种方法来抵抗一些恶意云服务器发起的拒绝服务攻击,帮助剩余的云服务器来完成数据的完整性审计,有效地提高了审计效率。
(3)本发明可以恢复损坏的数据,以提高系统的鲁棒性,并支持恶意的云服务器的撤销,防止恶意云服务器进一步损坏外包数据,同时支持批处理审计,可以有效地提高审计效率。
附图说明
图1为本发明的系统模型;
图2为本发明以7个云服务器为例展示的证据聚合的过程(k=2);
图3为本发明与现有技术在存储阶段的时间开销比较图;
图4为本发明与现有技术在审计阶段云服务器生成证据的时间开销比较图;
图5为本发明与现有技术在证据聚合阶段云服务器聚合证据的时间开销比较图;
图6为本发明与现有技术验证证据的时间开销比较图。
具体实施方式
现结合附图和实施例对本申请的技术方案进行进一步说明。
本申请的去中心化的多云自审计系统,包括可信机构、云服务器和数据拥有者实现;
其中,可信机构(TA)首先生成系统参数,选择v个云服务器CS,这v个云服务器根据结构E的(v,k+1,1)-设计进行分组;
数据拥有者,将原数据文件F进行分割、编码后生成签名集合,发送给云服务器,并向云服务器发送审计请求;
云服务器,接收数据拥有者发送的审计请求,生成自存储数据的证据,通过两次交互,生成原数据文件文件F对应的部分聚合证据和完整性证据(P,Λ),验证完整证据,生成审计结果的报告,并发送给数据拥有者。
用上述的去中心化的多云自审计系统实现去中心化的多云自审计方法,具体由以下步骤实现:
(1)可信机构(TA)首先生成系统参数,选择v个云服务器CS,这v个云服务器根据结构E的(v,k+1,1)-设计进行分组;
(1.1)系统参数生成:
TA执行Setup算法生成并公开系统参数params=(p,g,g1,G1,GT,e,H1,H2,结构E的(v,k+1,1)-设计),具体为:输入用于规定系统参数长度的安全参数λ和一个素数k,输出两个p(p为素数且p>2λ)阶的乘法循环群G1和GT(g和g1是G1的两个生成元),一个双线性映射e:G1×G1→GT,两个抗碰撞的哈希函数H1:{0,1}*→G1
Figure BDA0002478846620000121
Figure BDA0002478846620000122
生成结构E的(v,k+1,1)-设计,并选择v个云服务器(v=k2+k+1),根据结构E的(v,k+1,1)-设计,将v个云服务器分为v个区组{E0,E1,...,Ev-1},每个区组Ei(i=0,1,…,v-1)由k+1个云服务器组成,即结构E的(v,k+1,1)-设计中的第i个区组Ei中的元素t表示的是云服务器CSt
(1.2)密钥生成:
数据拥有者在集合
Figure BDA0002478846620000123
选取随机数α,计算其公钥y=gα
Figure BDA0002478846620000124
进而得到其公钥pk=(y,z)和私钥sk=α。
(2)数据拥有者将原数据文件F分割为m个数据部分,并将每个数据部分分割为n个数据块,生成矩阵G=(Im×m|Pm×(v-m))(v>m),用矩阵G对原数据文件F进行编码,得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,…,v-1)为编码文件C中第i个编码后的数据部分,数据拥有者为编码后的数据部分Ci(i=0,1,…,v-1)中的每个数据块计算签名,得到对应的签名集合Φi(i=0,…,v-1),并将编码后的数据部分Ci(i=0,1,…,v-1)和签名集合Φi(i=0,…,v-1)发送给对应的云服务器CSi(i=0,1,…,v-1);
文件分割,具体为:数据拥有者将具有标识符τ=H2(F)的原数据文件F分割为m个数据部分{F0,F1,…,Fm-1},对于原数据文件F的第x个数据部分Fx(x=1,2,…,m-1),数据拥有者将Fx分割为n块{di1,di2,…,din};
文件编码,具体为:首先构建矩阵G=(Im×m|Pm×(v-m)),其中Im×m是一个单位矩阵,Pm×(v-m)(v>m)是一个柯西矩阵,其次用矩阵G对原数据文件F进行编码得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,1,…,v-1)为编码文件C的第i个编码后的数据部分且Ci的标识符也为τ;
(2.2)标签生成:
对于编码文件C的第i个编码后的数据部分Ci={di1,di2,…,din}(i=1,…,v-1),数据拥有者为编码后的数据部分Ci中的第j个数据块dij(1≤j≤n)计算签名
Figure BDA0002478846620000131
其中IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,然后得到编码后的数据部分Ci对应的签名集合Φi={σi1,σi2,…,σin},最后数据拥有者将编码后的数据部分Ci和签名集合Φi发送给第i个云服务器CSi,云服务器CSi(i=0,1,…,v-1)接收并存储编码后的数据部分Ci和签名集合Φi
(3)数据拥有者生成文件F的审计请求,将该审计请求发送给云服务器,当云服务器收到审计请求后,先生成自存储数据的证据,与其他云服务器进行第一次交互生成审计文件F的部分聚合证据,再与其他云服务器交互生成审计文件F的完整性证据(P,Λ),每个云服务器验证该完整证据,得到审计结果的报告,并将审计结果报告发送给数据拥有者。
(3.1)生成审计请求:
首先数据拥有者选定审计的文件F,其标识符为τ,其次数据拥有者从文件索引集合{1,…,n}中随机挑选s个索引组成审计索引集合J={j1,j2,…,js}s≤n,并选择一组系数{uj}j∈J,其中
Figure BDA0002478846620000132
最后数据拥有者将审计请求Ω={τ,J,{uj}j∈J}广播给云服务器CSi(i=0,1,…,v-1)。
(3.2)证据生成:
当第i个云服务器CSi(i=0,1,…,v-1)收到审计请求Ω,首先计算
Figure BDA0002478846620000141
Figure BDA0002478846620000142
其中随机数
Figure BDA0002478846620000143
其次计算文件F中被审计数据块聚合签名
Figure BDA0002478846620000144
Figure BDA0002478846620000145
和文件块的线性组合
Figure BDA0002478846620000146
最后得到自存储数据的证据(σi,μi);
(3.3.1)第一轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSt需要发送自存储数据的证据(σt,μt)给云服务器CSi;当云服务器CSi(i=0,1,…,v-1)从其他云服务器CSt满足t∈Ei(t≠i)处接收到k个自存储数据的证据{(σt,μt)}(t∈Ei),然后计算得到部分聚合证据(Pij,Λij),其中
Figure BDA0002478846620000147
(3.3.2)第二轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSi需要发送部分聚合证据(Pit,Λit)给云服务器CSt;当云服务器CSt(t=0,1,…,v-1)从其他云服务器CSi(t∈Ei)处接收到k个部分聚合证据{(Pit,Λit)}(t∈Ei),然后可以计算得到完整性证据(P,Λ),其中
Figure BDA0002478846620000148
Figure BDA0002478846620000149
(3.3)证据聚合:
第i个云服务器CSi(i=0,1,…,v-1)首先广播Ri,其次云服务器CSi需要与其他云服务器进行两轮交互,最后得到文件F完整性证据(P,Λ);
(3.4)自验证:
每个云服务器得到完整性证据(P,Λ)和所有的Ri(i=0,1,…,v-1),并利用等式(1)来检验完整性证据(P,Λ);如果方程(4)成立,云服务器生成内容为“True”的审计报告并发送给给数据拥有者,否则,云服务器生成内容为“False”的审计报告并发送给给数据拥有者;
Figure BDA0002478846620000151
实施例1
本实施例去中心化的多云自审计方法,结合图1和图2,由以下步骤实现:
(1)系统建立:系统建立阶段产生系统参数,同时为数据拥有者产生密钥。
(1.1)系统参数生成:
TA执行Setup算法生成并公开系统参数params=(p,g,g1,G1,GT,e,H1,H2,结构E的(v,k+1,1)-设计),具体为:输入安全参数λ,输出两个p(p为素数且p>2λ)阶的乘法循环群G1和GT(g和g1是G1的两个生成元),一个双线性映射e:G1×G1→GT,两个抗碰撞的哈希函数H1:{0,1}*→G1
Figure BDA0002478846620000152
生成结构E的(v,k+1,1)-设计,并选择v(v=k2+k+1)个云服务器,根据结构E的(v,k+1,1)-设计,将v个云服务器分为v个区组{E0,E1,…,Ev-1},每个区组Ei(0≤i≤v-1)由k+1个云服务器组成,即结构E的(v,k+1,1)-设计中的第i个区组Ei中的元素t表示的是云服务器CSt
结构E的(v,k+1,1)-设计的生成,具体为:首先构造结构B的(v,k+1,1)-设计,结构B的(v,k+1,1)-设计由v(v=k2+k+1)个区组{B0,B1,…,Bv-1}构成,其中区组Bi(i=0,1,…,v-1)中的第j(j=0,1,…,k)个元素Bij为:
Figure BDA0002478846620000153
Figure BDA0002478846620000161
其次,结构E的(v,k+1,1)-设计可以由结构B的(v,k+1,1)-设计得到:对于0≤i≤k2+k,如果i=0,则E0=B0;如果i≤k,则Et=Bi,其中t=Bji,j=i*k+1;如果i mod k==1,则Et=Bi,其中t=Bi,0;否则Et=Bi,其中t=Bji
Figure BDA0002478846620000164
最后,我们可以得到结构E的(v,k+1,1)-设计的v(v=k2+k+1)个区组{E0,E1,…,Ev-1}。
(1.2)密钥生成:
数据拥有者在集合
Figure BDA0002478846620000162
选取随机数α,计算其公钥y=gα
Figure BDA0002478846620000163
进而得到其公钥pk=(y,z)和私钥sk=α。
(2)数据存储
(2.1)文件分割与编码:
文件分割,具体为:数据拥有者将具有标识符τ=H2(F)的原数据文件F分割为m个数据部分{F0,F1,…,Fm-1},对于原数据文件F的第x个数据部分Fx(x=1,2,…,m-1),数据拥有者将Fx分割为n块{di1,dj2,…,din};
文件编码:首先构建矩阵G=(Im×m|Pm×(v-m)),其中Im×m是一个单位矩阵,Pm×(v-m)(v>m)是一个柯西矩阵,其次用矩阵G对原数据文件F进行编码得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,1,…,v-1)为编码文件C的第i个编码后的数据部分且Ci的标识符也为τ;
(2.2)标签生成:
对于编码文件C的第i个编码后的数据部分Ci={di1,di2,…,din}(i=1,…,v-1),数据拥有者为编码后的数据部分Ci中的第j个数据块dij(1≤j≤n)计算签名
Figure BDA0002478846620000171
其中IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,然后得到编码后的数据部分Ci对应的签名集合Φi={σi1,σi2,…,σin},最后数据拥有者将编码后的数据部分Ci和签名集合Φi发送给第i个云服务器CSi,云服务器CSi(i=0,1,…,v-1)接收并存储编码后的数据部分Ci和签名集合Φi
(3)自审计
(3.1)生成审计请求:
首先数据拥有者选定审计的文件F,其标识符为τ,其次数据拥有者从文件索引集合{1,…,n}中随机挑选s个索引组成审计索引集合J={j1,j2,…,js}s≤n并选择一组系数{uj}j∈J,其中
Figure BDA0002478846620000172
最后数据拥有者将审计请求Ω={τ,J,{uj}j∈J}广播给云服务器CSi(i=0,1,…,v-1);
(3.2)证据生成:
当第i个云服务器CSi(i=0,1,…,v-1)收到审计请求Ω,首先计算
Figure BDA0002478846620000173
Figure BDA0002478846620000174
其中随机数
Figure BDA0002478846620000175
其次计算文件F中被审计数据块聚合签名
Figure BDA0002478846620000176
Figure BDA0002478846620000177
和文件块的线性组合
Figure BDA0002478846620000178
最后得到自存储数据的证据(σi,μi);
(3.3)证据聚合:
云服务器CSi(i=0,1,…,v-1)首先广播Ri,其次云服务器CSi需要与其他云服务器进行两轮交互,最后得到文件F完整性证据(P,Λ)。
(3.3.1)第一轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSt需要发送自存储数据的证据(σt,μt)给云服务器CSi;当云服务器CSi(i=0,1,…,v-1)从其他云服务器CSt满足t∈Ei(t≠i)处接收到k个自存储数据的证据{(σt,μt)}(t∈Ei),然后计算得到部分聚合证据(Pij,Λij),其中
Figure BDA0002478846620000181
(3.3.2)第二轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSi需要发送部分聚合证据(Pit,Λit)给云服务器CSt;当云服务器CSt(t=0,1,…,v-1)从其他云服务器CSi(t∈Ei)处接收到k个部分聚合证据{(Pit,Λit)}(t∈Ei),然后可以计算得到完整性证据(P,Λ),其中
Figure BDA0002478846620000182
Figure BDA0002478846620000183
(3.4)自验证:
云服务器CSi(i=0,1,…,v-1)可以得到完整性证据(P,Λ)和所有的Ri(i=0,1,…,v-1),并利用方程(2)来检验完整性证据(P,Λ);如果方程(4)成立,云服务器生成内容为“True”的审计报告并发送给给数据拥有者,否则,云服务器生成内容为“False”的审计报告并发送给给数据拥有者;
Figure BDA0002478846620000184
实施例2
本实施例的去中心化的多云自审计方法,不仅仅能够实现自审计功能,还可以对错误报告的错误进行定位,具体是:
在实施例1的基础上,数据拥有者会至多收到来自v个云服务器的v份审计报告,如果其中有一份报告的内容为“False”时,数据拥有者会发起错误定位去定位行为不端的云服务器,具体为:
首先,数据拥有者随机挑选一个参与审计的第i个云服务器CSi(0≤k≤v-1),其次云服务器CSi自存储数据的证据
Figure BDA0002478846620000185
和部分聚合证据
Figure BDA0002478846620000186
给数据拥有者,Et为v个区组中的第t个区组(0≤t≤v-1),然后数据拥有者用方程(2)检验自存储数据的证据
Figure BDA0002478846620000191
和部分聚合证据
Figure BDA0002478846620000192
如果证据
Figure BDA0002478846620000193
没有通过验证,则表示第l个云服务器CSl(l<v)是行为不端的云服务器;如果证据
Figure BDA0002478846620000194
没有通过验证,则云服务器CSw(w<v)就会被要求发送自存储数据的证据
Figure BDA0002478846620000195
给数据拥有者,其中Ew为v个区组中的第w个区组(0≤w≤v-1),数据拥有者用方程(2)验证从云服务器CSw处接收的自存储数据的证据
Figure BDA0002478846620000196
从而找到恶意的云服务器,最后数据拥有者记录下行为不端的云服务器的标识符ID;
实施例3
本实施例的去中心化的多云自审计方法,不仅仅能够实现自审计功能,还可以抵抗拒绝服务攻击,具体是:
在实施例1的基础上,在进行(4.3.3)证据聚合的过程中,如果有云服务器没有发送自存储数据的证据给指定的云服务器,这会导致(4.3.3)证据聚合没有办法完成,从而影响整个自审计的过程。这时,备用的云服务器
Figure BDA0002478846620000197
将会介入来帮助完成证据聚合的过程,具体为:
在(4.3.3)证据聚合的过程中,在第一轮交互过程中,如果,云服务器CSi从满足j∈Ei的云服务器CSj处收到k个自存储数据的证据。如果在固定的时间段Δt内,收到的自存储数据的证据的数量小于k,云服务器CSi就推断没有发送自存储数据的证据的云服务器CSj是恶意的云服务器或者云服务器CSj正在遭受拒绝服务攻击,这时备用的云服务器
Figure BDA0002478846620000198
将会帮助完成证据聚合。在第一轮交互过程中,备用的云服务器
Figure BDA0002478846620000199
代替云服务器CSj去接收其他云服务器发送给它的自存储数据的证据,但是不需要发送自存储数据的证据给相应的云服务器,并进行聚合数据的计算。在第二轮交互过程中,备用的云服务器
Figure BDA00024788466200001910
只需要把聚合证据发送给云服务器CSt(t∈Ej)。
实施例4
本实施例的去中心化的多云自审计方法,不仅仅能够实现自审计功能,还可以对数据进行恢复,具体是:
在实施例1的基础上,如果数据拥有者发现外包数据被恶意的云服务器损坏,这时他可以进行损坏数据的恢复,具体为:
对于文件F和对应的编码文件C,如果编码文件C中至少有m个编码后的数据部分
Figure BDA0002478846620000201
没有损坏,则损坏的数据部分可以被恢复。首先,数据拥有者将这m个编码后的数据部分
Figure BDA0002478846620000202
从对应的m个云服务器
Figure BDA0002478846620000203
处取回,然后可以计算得到文件F的m个数据部分
Figure BDA0002478846620000204
Figure BDA0002478846620000205
其中
Figure BDA0002478846620000206
表示矩阵G的第is列,随后数据拥有者将文件F重新编码并上传到相应的云服务器;
实施例5
本实施例的去中心化的多云自审计方法,不仅仅能够实现自审计功能,还可以对服务器撤销,具体是:
在实施例1的基础上,如果数据拥有者想要去撤销某个云服务器,即不在该云服务器上存储数据,具体为:
假设第i个云服务CSi是即将被撤销的服务器,首先数据拥有者取回存储在云服务器CSi处的数据,如果数据被云服务器损坏的话,就恢复数据。然后,数据拥有者寻找信誉良好的、标识符为IDj的新的云服务器CSj,使用(2.2)标签生成去重新计算该数据部分中数据块的签名,最后把该数据部分和对应的签名集合签名上传到新的云服务器CSj处。
实施例6
本实施例的去中心化的多云自审计方法,不仅仅能够实现自审计功能,还可以实现批量审计,具体是:
在实施例1的基础上,数据拥有者为了提高外包数据的审计效率,同时进行对多个外包文件的审计,具体为:
对于文件集
Figure BDA0002478846620000211
其中τh
Figure BDA0002478846620000212
的标识符,数据拥有者为文件
Figure BDA0002478846620000213
的第i个数据部分
Figure BDA0002478846620000214
中的第j个数据块
Figure BDA0002478846620000215
计算签名
Figure BDA0002478846620000216
得到对应的签名集合
Figure BDA0002478846620000217
并将数据部分
Figure BDA0002478846620000218
和签名集合
Figure BDA0002478846620000219
发送给云服务器CSi(i=0,1,…,v-1)。在数据自审计阶段,数据拥有者发起对于文件
Figure BDA00024788466200002110
的审计,广播审计请求
Figure BDA00024788466200002111
给所有的云服务器;当云服务器CSi(i=0,1,…,v-1)收到审计请求后,计算
Figure BDA00024788466200002112
其中
Figure BDA00024788466200002113
和自存储数据的证据
Figure BDA00024788466200002114
Figure BDA00024788466200002115
Figure BDA00024788466200002116
然后每个云服务器CSi广播Ri,并进行(3.3.1)和(3.3.1)的两轮交互得到完整性证据(P,Λ),最后用等式(3)验证完整性证据(P,Λ);
Figure BDA00024788466200002117
基于PBC库,经过实际地模拟本发明方法的主要核心步骤,从实验模拟和分析可以看出本发明方法相比现有技术性能更优良,实现了审计阶段低通信开销、低计算开销。具体对比结果如图3-6所示。
其中图3为本发明(DSAS)与现有技术在标签生成阶段的计算开销,可以看出本发明的时间开销是较小的;图4为本发明(DSAS)与现有技术在自审计阶段云服务器生成自存储数据的证据的时间开销,可以看出本发明的时间开销是最小;图5为本发明(DSAS)与现有技术在证据聚合阶段聚合证据的时间开销,可以看出本发明所需的时间开销是最小的,因为本发明将计算量平均分摊到了单个云服务器上,而现有的技术是利用一个固定的云服务器来进行证据聚合;图6为本发明(DSAS)与现有技术在验证证据阶段的时间开销,可以看出本发明的时间开销是最小的。

Claims (7)

1.一种去中心化的多云自审计方法,其特征在于,包括以下步骤:
(1)可信机构TA首先生成系统参数,并为选择的v个多云服务器CS,产生结构E的(v,k+1,1)-设计,根据结构E的(v,k+1,1)-设计,将v个云服务器分为v个区组{E0,E1,...,Ev-1},k是一个素数;
(2)数据拥有者将原数据文件F分割为m个数据部分,并将每个数据部分分割为n个数据块,生成矩阵G=(Im×m|Pm×(v-m))(v>m),用矩阵G对原数据文件F进行编码,得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din)(i=0,…,v-1)为编码文件C中第i个编码后的数据部分,数据拥有者为编码后的数据部分Ci(i=0,1,…,v-1)中的每个数据块计算签名,得到对应的签名集合Φi(i=0,…,v-1),并将编码后的数据部分Ci(i=0,1,…,v-1)和签名集合Φi(i=0,…,v-1)发送给对应的云服务器CSi(i=0,1,…,v-1);Im×m是一个单位矩阵,Pm×(v-m)(v>m)是一个柯西矩阵;
(3)数据拥有者生成原数据文件F的审计请求,将该审计请求广播给所有的云服务器,当所有的云服务器收到审计请求后,首先生成自己存储数据的完整性证据,然后与其他云服务器进行第一次交互生成原数据文件F的部分聚合完整性证据,最后与其他云服务器进行第二次交互生成原数据文件F的完整性证据(P,Λ),每个云服务器验证该完整性证据,得到审计结果报告,并将审计结果报告发送给数据拥有者;
所述步骤(1)具体为:
(1.1)系统参数生成:
TA执行Setup算法生成并公开系统参数params=(p,g,g1,G1,GT,e,H1,H2,结构E的(v,k+1,1)-设计),具体为:输入用于规定系统参数长度的安全参数λ和一个素数k,输出两个p阶的乘法循环群G1和GT,g和g1是G1的两个生成元,p为素数且p>2λ,一个双线性映射e:G1×G1→GT,两个抗碰撞的哈希函数H1:{0,1}*→G1
Figure FDA0003672873670000021
Figure FDA0003672873670000022
生成结构E的(v,k+1,1)-设计,并选择v个云服务器(v=k2+k+1),根据结构E的(v,k+1,1)-设计,将v个云服务器分为v个区组{E0,E1,...,Ev-1},每个区组Ei(i=0,1,…,v-1)由k+1个云服务器组成,即结构E的(v,k+1,1)-设计中的第i个区组Ei中的元素t表示的是云服务器CSt
(1.2)密钥生成:
数据拥有者在集合
Figure FDA0003672873670000023
选取随机数α,计算其公钥y=gα
Figure FDA0003672873670000024
进而得到其公钥pk=(y,z)和私钥sk=α。
2.根据权利要求1所述的去中心化的多云自审计方法,其特征在于,所述步骤(2)具体为:
(2.1)文件分割与编码:
文件分割,具体为:数据拥有者将具有标识符τ=H2(F)的原数据文件F分割为m个数据部分{F0,F1,…,Fm-1},对于原数据文件F的第x个数据部分Fx(x=1,2,…,m-1),数据拥有者将Fx分割为n块{di1,di2,…,din};
文件编码,具体为:首先构建矩阵G=(Im×m|Pm×(v-m)),其中Im×m是一个单位矩阵,Pm×(v-m)(v>m)是一个柯西矩阵,其次用矩阵G对原数据文件F进行编码得到编码文件C=(C0,C1,…,Ci,…,Cv-1),其中Ci={di1,di2,…,din}(i=0,1,…,v-1)为编码文件C的第i个编码后的数据部分且Ci的标识符也为τ;
(2.2)标签生成:
对于编码文件C的第i个编码后的数据部分Ci={di1,di2,…,din}(i=1,…,v-1),数据拥有者为编码后的数据部分Ci中的第j个数据块dij(1≤j≤n)计算签名
Figure FDA0003672873670000031
Figure FDA0003672873670000032
其中IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,然后得到编码后的数据部分Ci对应的签名集合Φi={σi1,σi2,…,σin},最后数据拥有者将编码后的数据部分Ci和签名集合Φi发送给第i个云服务器CSi,云服务器CSi(i=0,1,…,v-1)接收并存储编码后的数据部分Ci和签名集合Φi
3.根据权利要求1所述的去中心化的多云自审计方法,其特征在于,所述步骤(3)具体为:
(3.1)生成审计请求:
首先数据拥有者选定进行审计的文件F,其标识符为τ,其次数据拥有者从文件索引集合{1,…,n}中随机挑选s个索引组成审计索引集合J={j1,j2,…,js}s≤n,并选择一组系数{uj}j∈J,其中
Figure FDA0003672873670000033
最后数据拥有者将审计请求Ω={τ,J,{uj}j∈J}广播给云服务器CSi(i=0,1,…,v-1);
(3.2)证据生成:
当第i个云服务器CSi(i=0,1,…,v-1)收到审计请求Ω,首先计算
Figure FDA0003672873670000034
y为公钥,其中随机数
Figure FDA0003672873670000035
其次计算文件F中被审计数据块聚合签名
Figure FDA0003672873670000036
和文件块的线性组合
Figure FDA0003672873670000037
Figure FDA0003672873670000038
最后得到自存储数据的证据(σi,μi),σij为数据拥有者为编码后的数据部分Ci中的第j个数据块dij(1≤j≤n)计算签名;
(3.3)证据聚合:
第i个云服务器CSi(i=0,1,…,v-1)首先广播Ri,其次云服务器CSi需要与其他云服务器进行两轮交互,最后得到文件F完整性证据(P,Λ);
(3.4)自验证:
第i个云服务器CSi(i=0,1,…,v-1)可以得到完整性证据(P,Λ)和所有的Ri(i=0,1,…,v-1),并利用等式(1)来检验完整性证据(P,Λ);如果等式 (1)成立,云服务器生成内容为“True”的审计报告并发送给给数据拥有者,否则,云服务器生成内容为“False”的审计报告并发送给给数据拥有者;
Figure FDA0003672873670000041
其中,IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,z为数据拥有者的公钥,p和g1均为TA执行Setup算法生成并公开系统参数,Λ是部分数据完整性证据,
Figure FDA0003672873670000044
是g1的Λ次方。
4.根据权利要求3所述的去中心化的多云自审计方法,其特征在于,所述步骤(3.3)具体为:
(3.3.1)第一轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,第t个云服务器CSt(t<v)需要发送自存储数据的证据(σt,μt)给云服务器CSi;当云服务器CSi(i=0,1,…,v-1)从其他云服务器CSt满足t∈Ei(t≠i)处接收到k个自存储数据的证据{(σt,μt)}(t∈Ei),然后计算得到部分聚合证据(Pij,Λij),其中
Figure FDA0003672873670000042
(3.3.2)第二轮交互:
对于v个区组中的第i个区组Ei(i=0,1,…,v-1),如果区组Ei中含有云服务器CSt(t≠i),简洁表述为t∈Ei,则在固定的时间段Δt内,云服务器CSi需要发送部分聚合证据(Pit,Λit)给云服务器CSt;当云服务器CSt(t=0,1,…,v-1)从其他云服务器CSi(t∈Ei)处接收到k个部分聚合证据{(Pit,Λit)}(t∈Ei),然后可以计算得到完整性证据(P,Λ),其中
Figure FDA0003672873670000043
5.根据权利要求4所述的去中心化的多云自审计方法,其特征在于,所述步骤(3)之后还包括步骤(a1)错误定位或步骤(a2)抵抗拒绝服务攻击,具体为:
(a1)错误定位
在步骤(3.4)自验证完成之后,数据拥有者会至多收到来自v个云服务器的v份审计报告,如果其中有一份报告的内容为“False”时,数据拥有者会发起错误定位去定位行为不端的云服务器,具体为:
首先,数据拥有者随机挑选一个参与审计的第i个云服务器CSi(0≤i≤v-1),其次云服务器CSi自存储数据的证据
Figure FDA0003672873670000051
和部分聚合证据
Figure FDA0003672873670000052
给数据拥有者,Et为v个区组中的第t个区组(0≤t≤v-1),然后数据拥有者用等式(1)检验自存储数据的证据
Figure FDA0003672873670000053
和部分聚合证据
Figure FDA0003672873670000054
如果证据
Figure FDA0003672873670000055
Figure FDA0003672873670000056
没有通过验证,则表示第l个云服务器CSl(l<v)是行为不端的云服务器;如果证据
Figure FDA0003672873670000057
没有通过验证,则云服务器CSw(w<v)就会被要求发送自存储数据的证据
Figure FDA0003672873670000058
给数据拥有者,其中Ew为v个区组中的第w个区组(0≤w≤v-1),数据拥有者用等式(1)验证从云服务器CSw处接收的自存储数据的证据
Figure FDA0003672873670000059
从而找到恶意的云服务器,最后数据拥有者记录下行为不端的云服务器的标识符ID;
(a2)抵抗拒绝服务攻击:
在(3.3)证据聚合的过程中,在第一轮交互过程中,如果第i个云服务器CSi从满足j∈Ei的云服务器CSj处收到k个自存储数据的证据,如果在固定的时间段Δt内,收到的自存储数据的证据的数量小于k,云服务器CSi就推断没有发送自存储数据的证据的云服务器CSj是恶意的云服务器或者云服务器CSj正在遭受拒绝服务攻击,这时备用的云服务器
Figure FDA00036728736700000510
将会介入来帮助完成证据聚合,在第一轮交互过程中,备用的云服务器
Figure FDA00036728736700000511
代替云服务器CSj去接收其他云服务器发送给它的自存储数据的证据,但是不需要发送自存储数据的证据给相应的云服务器,并进行聚合数据的计算,在第二轮交互过程中,备用的云服务器
Figure FDA0003672873670000061
只需要把聚合证据发送给云服务器CSt(t∈Ej)。
6.根据权利要求4所述的去中心化的多云自审计方法,其特征在于,所述步骤(3)之后还包括步骤(a3)数据恢复或步骤(a4)服务器撤销;具体为:
(a3)数据恢复
对于文件F和对应的编码文件C,如果编码文件C中至少有m个编码后的数据部分
Figure FDA0003672873670000062
没有损坏,则损坏的数据部分可以被恢复,首先,数据拥有者将这m个编码后的数据部分
Figure FDA0003672873670000063
从对应的m个云服务器
Figure FDA0003672873670000064
处取回,然后可以计算得到文件F的m个数据部分
Figure FDA0003672873670000065
其中
Figure FDA0003672873670000066
表示矩阵G的第is列,随后数据拥有者将文件F重新编码并上传到相应的云服务器;
(a4)服务器撤销
假设第i个云服务CSi是即将被撤销的服务器,首先数据拥有者取回存储在云服务器CSi处的数据,如果数据被云服务器损坏的话,就恢复数据;然后,数据拥有者寻找信誉良好的、标识符为IDj的新的云服务器CSj,使用(2.2)标签生成去重新计算该数据部分中数据块的签名,最后把该数据部分和对应的签名集合签名上传到新的云服务器CSj处。
7.根据权利要求4所述的去中心化的多云自审计方法,其特征在于,所述步骤(3)之后还包括步骤(a5)批量审计,具体为:
对于文件集
Figure FDA0003672873670000067
其中τh
Figure FDA0003672873670000068
的标识符,数据拥有者文件
Figure FDA0003672873670000071
的第i个数据部分
Figure FDA0003672873670000072
中的第j个数据块
Figure FDA0003672873670000073
计算签名
Figure FDA0003672873670000074
IDi为第i个云服务器CSi的标识符,α为数据拥有者的私钥,g为TA执行Setup算法生成并公开系统参数,
Figure FDA0003672873670000075
为数据拥有者文件
Figure FDA0003672873670000076
的第i个数据部分
Figure FDA0003672873670000077
中的第j个数据块,
Figure FDA0003672873670000078
为g的
Figure FDA0003672873670000079
次方;得到对应的签名集合
Figure FDA00036728736700000710
并将数据部分
Figure FDA00036728736700000711
和签名集合
Figure FDA00036728736700000712
发送给云服务器CSi(i=0,1,…,v-1);在数据自审计阶段,数据拥有者发起对于文件
Figure FDA00036728736700000713
的审计,广播审计请求
Figure FDA00036728736700000714
J为文件索引集合{1,…,n}中随机挑选s个索引组成审计索引集合,给所有的云服务器;当云服务器CSi(i=0,1,…,v-1)收到审计请求后,计算
Figure FDA00036728736700000715
其中
Figure FDA00036728736700000716
和自存储数据的证据
Figure FDA00036728736700000717
Figure FDA00036728736700000718
然后每个云服务器CSi广播Ri,并进行(3.3.1)和(3.3.1)的两轮交互得到完整性证据(P,Λ),最后用等式(2)验证完整性证据(P,Λ);
Figure FDA00036728736700000719
其中,IDi为第i个云服务器CSi的标识符,τ为编码后的数据部分Ci的标识符,z为数据拥有者的公钥,p和g1均为TA执行Setup算法生成并公开系统参数,Λ是部分数据完整性证据,
Figure FDA00036728736700000720
是g1的Λ次方。
CN202010372512.6A 2020-05-06 2020-05-06 一种去中心化的多云自审计方法及系统 Active CN111586036B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010372512.6A CN111586036B (zh) 2020-05-06 2020-05-06 一种去中心化的多云自审计方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010372512.6A CN111586036B (zh) 2020-05-06 2020-05-06 一种去中心化的多云自审计方法及系统

Publications (2)

Publication Number Publication Date
CN111586036A CN111586036A (zh) 2020-08-25
CN111586036B true CN111586036B (zh) 2022-11-29

Family

ID=72124677

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010372512.6A Active CN111586036B (zh) 2020-05-06 2020-05-06 一种去中心化的多云自审计方法及系统

Country Status (1)

Country Link
CN (1) CN111586036B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977319A (zh) * 2010-11-03 2011-02-16 上海交通大学 基于视频特征及数字签名的视频隐蔽标签生成及认证方法
CN104809407A (zh) * 2015-05-05 2015-07-29 南京信息工程大学 云存储前端数据加解密及校验方法和系统
WO2018201730A1 (zh) * 2017-05-02 2018-11-08 西南石油大学 支持数据代理上传的格基云存储数据安全审计方法
CN110022309A (zh) * 2019-03-12 2019-07-16 青岛大学 一种移动云计算系统中安全高效的数据共享方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320899B (zh) * 2014-07-22 2018-01-09 北京大学 一种面向用户的云存储数据完整性保护方法
US20190107548A1 (en) * 2016-04-01 2019-04-11 Artel, Inc. System and method for liquid handling quality assurance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977319A (zh) * 2010-11-03 2011-02-16 上海交通大学 基于视频特征及数字签名的视频隐蔽标签生成及认证方法
CN104809407A (zh) * 2015-05-05 2015-07-29 南京信息工程大学 云存储前端数据加解密及校验方法和系统
WO2018201730A1 (zh) * 2017-05-02 2018-11-08 西南石油大学 支持数据代理上传的格基云存储数据安全审计方法
CN110022309A (zh) * 2019-03-12 2019-07-16 青岛大学 一种移动云计算系统中安全高效的数据共享方法

Also Published As

Publication number Publication date
CN111586036A (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
Li et al. Privacy-preserving public auditing protocol for low-performance end devices in cloud
CN113364600B (zh) 基于无证书的云存储数据完整性公共审计方法
CN110677487B (zh) 一种支持隐私和完整性保护的外包数据去重云存储方法
Wang et al. Enabling public verifiability and data dynamics for storage security in cloud computing
CN107508686B (zh) 身份认证方法和系统以及计算设备和存储介质
Venkatesh et al. Improving public auditability, data possession in data storage security for cloud computing
Barsoum et al. Provable possession and replication of data over cloud servers
Rashmi et al. RDPC: secure cloud storage with deduplication technique
Sookhak et al. Towards dynamic remote data auditing in computational clouds
Li et al. A Blockchain‐Based Public Auditing Scheme for Cloud Storage Environment without Trusted Auditors
Subha et al. Efficient privacy preserving integrity checking model for cloud data storage security
Su et al. Decentralized self-auditing scheme with errors localization for multi-cloud storage
Gan et al. Efficient and secure auditing scheme for outsourced big data with dynamicity in cloud
Abo‐alian et al. Integrity as a service for replicated data on the cloud
Mishra et al. MPoWS: Merged proof of ownership and storage for block level deduplication in cloud storage
CN112039837B (zh) 一种基于区块链和秘密共享的电子证据保全方法
Abo-Alian et al. Auditing-as-a-service for cloud storage
CN111586036B (zh) 一种去中心化的多云自审计方法及系统
Yang et al. Provable Ownership of Encrypted Files in De-duplication Cloud Storage.
CN116366259A (zh) 一种面向密文数据的公共可验证布尔搜索系统及方法
Li et al. Blockchain-based auditing with data self-repair: From centralized system to distributed storage
Ganesh et al. An efficient integrity verification and authentication scheme over the remote data in the public clouds for mobile users
Kanagamani et al. Zero knowledge based data deduplication using in-line Block Matching protocolfor secure cloud storage
Deng et al. Certificateless provable data possession scheme with provable security in the standard model suitable for cloud storage
CN111934880A (zh) 一个安全有效的具有隐私保护的云数据完整性验证方案

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20221108

Address after: 100,000 Room 111, F1, Building 2, No. 139 and 140, Fengtai Road Crossing, Fengtai District, Beijing (Park)

Applicant after: Beijing Zhanyun Technology Co.,Ltd.

Address before: No.199, Chang'an South Road, changyanbao office, Yanta District, Xi'an City, Shaanxi Province, 710064

Applicant before: Shaanxi Normal University

Effective date of registration: 20221108

Address after: Room 101, Building 1, Yard 1, Renhe Garden, Shunyi District, Beijing 101300

Applicant after: Beijing Urban Construction Intelligent Control Technology Co.,Ltd.

Address before: 100,000 Room 111, F1, Building 2, No. 139 and 140, Fengtai Road Crossing, Fengtai District, Beijing (Park)

Applicant before: Beijing Zhanyun Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant