CN110365469B - 一种支持数据隐私保护的云存储中数据完整性验证方法 - Google Patents

一种支持数据隐私保护的云存储中数据完整性验证方法 Download PDF

Info

Publication number
CN110365469B
CN110365469B CN201910811862.5A CN201910811862A CN110365469B CN 110365469 B CN110365469 B CN 110365469B CN 201910811862 A CN201910811862 A CN 201910811862A CN 110365469 B CN110365469 B CN 110365469B
Authority
CN
China
Prior art keywords
data
csp
tpa
evidence
owner
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
CN201910811862.5A
Other languages
English (en)
Other versions
CN110365469A (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.)
Jinling Institute of Technology
Original Assignee
Jinling Institute of Technology
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 Jinling Institute of Technology filed Critical Jinling Institute of Technology
Priority to CN201910811862.5A priority Critical patent/CN110365469B/zh
Publication of CN110365469A publication Critical patent/CN110365469A/zh
Application granted granted Critical
Publication of CN110365469B publication Critical patent/CN110365469B/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
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

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)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及数据隐私保护的云存储中数据完整性验证方法,属于云计算安全技术领域。包括系统建立步骤、秘钥生成步骤、数据标签生成步骤、数据完整性挑战步骤、数据完整性证据生成步骤、证据验证步骤。支持对云端数据完整性的公开验证。数据拥有者为所有数据块生成验证标签,然后将数据块连同对应的标签一起上传到云存储中。若验证者需要验证数据是否完整,向云服务器发起完整性挑战。云服务器利用保存的数据块信息和对应的标签信息生成证据,并将证据返回给验证者。验证者利用公开信息检查证据的有效性,根据检查结果得知数据是否完整。本发明的协议是基于身份密码体制设计的,避免了传统公钥密码体制中的数据证书管理,具有较好的性能。

Description

一种支持数据隐私保护的云存储中数据完整性验证方法
技术领域
本发明涉及一种新型的基于身份的云端数据完整性验证协议,属于云计算安全技术领域。本发明提供了一种用户无需下载存储在云中的数据,仅通过与云服务器两次简单交互即可验证数据在云端是否保持完整的安全协议,且能够保护数据在验证中的隐私安全。
背景技术
云计算是B/S模型之后的新型计算模型,它将因特网中大量分散的以及分布式的计算资源加以整合,形成了巨大虚拟计算能力和存储能力,可以为用户提供有效的,方便的,即需的,可靠的网络资源和服务。因此在实际应用中,云计算被广泛的接受的使用。作为云计算中的一种重要服务,云存储能够为用户提供可靠的、可扩展的和低消耗的存储外包服务。它为用户提供了一种灵活的叫做按需支付模式来获得其计算资源和存储资源。在这种模式下,用户可以根据需求租用存储服务而不需要购买。因此,用户的前期投资可以大大降低。另外,当用户需求的资源变化时,调整租用的资源规模也很方便。
云存储系统试图提供一种可承诺的数据储存和管理服务,以帮助用户减少投资。但是这种存储服务也存在一些安全问题比如数据破坏和数据丢失。云服务器本身并不完全可靠,一方面服务器自身的硬件和软件通常不可避免的会发生一些故障或异常,这很可能导致所存储的数据遭到破坏;另一方面,云服务器也可能主动删除部分用户数据,以节省空间从而获取更大的利益;甚至云服务器出于某些恶意的目的而主动篡改用户数据。无论哪种情况发生,用户的数据都会遭到破坏。然而,云服务器通常会掩盖这些数据破坏的事件,从而维护自身的声誉。更糟糕的是,由于数据都存储在云存储中,用户无法获知这些远程数据的存储状态。在这种情况下,用户不能获得所承诺的服务,自身利益也遭到破坏。因此,有必要提供一种方法让用户能够主动的、高效的检查存储在云存储中的数据是否保持完整。
Deswarte等人[1]于2003年提出了一种远程数据持有验证协议来保证存储在远程服务器上的数据完整性。该技术为数据拥有者提供了一种不需要将数据全部下载就可以检查这些数据是否被远程服务器忠实的存储着的方法。在此基础上,Ateniese等人[2]于2007年优化了协议模型,提出了可证明数据持有模型(PDP),更加高效的完成远程数据完整性校验。该模型主要思路是将存储的文件分割成多个数据块,并为每个数据块生成一个验证标签。将数据块和验证标签一起存储到云服务器中。用户可以任意挑战其中的数据块信息,云服务器利用存储的数据块和相应的验证标签生成完整性证据,如果此证据通过了用户的验证则证明数据是完好无损的,否则说明数据被破坏了。
PDP模型得到了广大学者和用户的认可,并进行了深入的研究。目前已有多个远程数据完整性验证协议被提出。但是大多数协议是基于传统公钥密码体制PKI设计的,存在复杂的数字证书管理问题[3]。为解决此问题,Boneh等人[4]提出了基于身份的公钥密码体制(IBC)。在IBC中,用户的私钥由密钥生成中心生成,而公钥则以用户特有的身份标识充当。由于身份标识是唯一的,用户与其公钥之间自然存在着一对一的关联关系。因此,在IBC中无需使用数字证书来绑定和认证用户的公钥,避免了证书的使用,提高了系统整体运行效率。因此研究基于身份的云端数据完整性验证协议是非常有意义的。另外,在验证数据完整性时需要保护数据的隐私,即不允许验证者在验证完整性时获取数据信息。
为解决上述问题,本发明人提出了一个基于身份的具有隐私保护功能的云存储中远程数据持有验证协议。本发明协议不但避免了PKI中的证书管理问题,而且通过灵活运用数据随机处理技术将用户数据盲化在证据中,实现了数据的隐私保护。本发明协议也是安全高效的。
参考文献
[1]Y.Deswarte,J.J.Quisquater,and A.
Figure BDA0002185279910000021
“Remote IntegrityChecking,”Proc.Sixth Working Conf.Integr.Internal Control Inf.Syst.(IICIS’03),pp.1–11,2003.
[2]G.Ateniese,R.Burns,R.Curtmola,J.Herring,L.Kissner,Z.Peterson,andD.Song,“Provable Data Possession at Untrusted Stores,”Proc.Fourteenth ACMConf.onComput.and Commun.Security(CCS’07),pp.598-609,2007.
[3]H.Yan,J.Li,J.Han and Y.Zhang,“A Novel Efficient Remote DataPossession Checking Protocol in Cloud Storage,”IEEE Trans.Inf.Foren.and Sec.,vol.12,no.1,pp.78-88,2017
[4]D.Boneh and M.Franklin,“Identity-Based Encryption from the WeilPairing,”Proc.CRYPTO’01,vol.2139,pp.213–229,2001.
发明内容
本发明解决的技术问题是:提出一个基于身份密码体制的实现安全、高效的云存储中数据完整性校验,避免复杂的数字证书管理问题提高效率,同时保护数据的隐私。
为了解决上述技术问题,本发明提出的技术方案是:包括如下步骤:
步骤1:首先系统的建立阶段,由密钥生成中心负责执行,完成系统公开参数和主私钥的生成,其具体步骤如下:
步骤1-1,设定系统安全参数k,并选择随机大素数q满足|q|=k;
步骤1-2,选择G1和G2两个阶为q的乘法循环群,g是群G1的生成元,e:G1×G1→G2是双线性映射。选择两个不同的安全Hash函数H1:
Figure BDA0002185279910000031
和H2:
Figure BDA0002185279910000032
以及一个伪随机置换π:
Figure BDA0002185279910000033
一个伪随机函数φ:
Figure BDA0002185279910000034
步骤1-3,KGC随机选择
Figure BDA0002185279910000035
作为主私钥,并计算主公钥为P0=gs。KGC将参数为params=(q,g,G1,G2,e,P0,H1,H2,φ,π)公布出去,同时将主私钥秘密保存。
步骤2:当数据拥有者有数据要存储到CSP中时,则提交自己的身份信息ID到KGC,KGC计算skID=H1(ID)s作为其私钥,并通过安全信道返回给数据拥有者。
步骤3:数据拥有者在将数据存储到CSP之前,利用自己的私钥,为数据生成数据标签。然后将数据块和标签上传到CSP中,并将它们从本地存储删除。
步骤4:CSP接收到数据拥有者上传的数据后,通过公式
Figure BDA0002185279910000036
验证标签的正确性。若标签与数据不匹配,则拒绝接收。
步骤5:TPA通过挑战CSP以检查上传的数据是否完整;具体方法是:
TPA选择两个随机种子
Figure BDA0002185279910000037
同时选择要挑战的数据块数量c∈[1,n]。TPA将挑战信息chal=(c,k1,k2)和数据标识Fid发送给CSP。
步骤6:CSP在接受到TPA的挑战信息后,为挑战的数据块生成相应的完整性证据,并将证据返回给TPA以证明数据的完整性;
步骤7:TPA在接收到证据后,对证据进行验证,并根据验证结果判定数据是否完好如初。
进一步地,步骤3:数据拥有者在将数据存储到CSP之前,利用自己的私钥,为数据生成数据标签。然后将数据块和标签上传到CSP中,并将它们从本地存储删除;具体步骤如下:
步骤3-1:数据拥有者将待上传的数据文件F分割成n个数据块表示为F=(m1,m2,L,mn),其中任意的
Figure BDA0002185279910000041
步骤3-2:数据拥有者按照如下步骤为每一个数据块生成验证标签:
(1)数据拥有者选择两个随机数χ∈G1
Figure BDA0002185279910000042
(2)计算
Figure BDA0002185279910000043
其中Fid为数据的唯一性标识。
数据拥有者重复n次上述步骤(2),得到标签集T=(T1,T2,…,Tn)。
(3)数据拥有者计算:R=gλ,再选择一个安全的签名方案Sig,计算得到整个数据文件的签名TFid=Sig(R||χ||Fid)。
步骤3-3:最后,数据拥有者上传(F,R,χ,{Ti|i∈[1,n]},TFid)到CSP中。同时将(F,R,χ,{Ti|i∈[1,n]},TFid)从本地删除。
进一步地,步骤6:CSP在接受到TPA的挑战信息后,为挑战的数据块生成相应的完整性证据,并将证据返回给TPA以证明数据的完整性;的具体方案如下:
步骤6-1:CSP利用伪随机置换和伪随机函数计算得到挑战集合C={(vi,ai)|i∈[1,c]},其中vi=π(k1,i),ai=φ(k2,i)。
步骤6-2:CSP随机选择整数
Figure BDA0002185279910000044
并计算出W=χ-r,
Figure BDA0002185279910000045
Figure BDA0002185279910000046
最后,CSP将元组P=(W,σ,M,R,χ,TFid)作为数据完整性证据返回给TPA。
进一步地,步骤7:TPA在接收到证据后,对证据进行验证,并根据验证结果判定数据是否完好如初;具体方法如下:
步骤7-1:首先TPA通过公开的签名方案验证外包数据的签名TFid是否为R||χ||Fid合法签名。如果TFid不能通过验证,TPA直接拒绝证据P并返回‘数据不完整’,否则执行步骤7-2。
步骤7-2:TPA利用伪随机置换和伪随机函数计算得到挑战集合C={(vi,ai)|i∈[1,c]},其中vi=π(k1,i),ai=φ(k2,i)。
步骤7-3:TPA验证公式
Figure BDA0002185279910000051
是否成立;如果成立表示数据完整,否则表示数据不正确。
有益效果
本发明公开的协议是基于身份密码体制设计的,避免了传统公钥密码体制中的数据证书管理,具有较好的性能。同时本发明协议中灵活运用数据随机处理技术将用户数据盲化在证据中,实现了数据的隐私保护,即验证者仅能通过计算获知数据的完整性,但不能获知任何用户数据的信息。本发明协议是安全高效的。
附图说明
图1为本发明的协议模型图;
图中:密钥生成中心(Key Generation Center,KGC)负责建立系统,并为用户生成私钥。
数据拥有者(Data Owner,DO)将数据存储到租赁的云存储服务器上。
云存储服务供应商(Cloud Storage Provider,CSP)提供数据存储与管理服务,并响应验证者请求,生成完整性证据。
第三方验证者(Third Party Auditor,TPA),通过与云存储服务器的交互验证数据的完整性,并将验证结果反馈给数据拥有者。
具体实施方式
下面结合附图对本发明的技术方案做进一步的实施说明:
通过本发明专利,数据拥有者无需下载云存储中的数据,仅通过与云存储服务器的两次交互即可验证云中数据的完整性。本协议采用基于身份密码技术,能够避免传统公钥密码体制中的数字证书管理问题。同时本协议运用随机化技术隐藏证据中的数据,实现了对数据的隐私保护。
本发明协议能够避免传统公钥密码体制中的证书管理问题,而且通过灵活运用数据随机处理技术将用户数据盲化在证据中,实现了数据的隐私保护。协议是安全高效的。
如图1所示,本发明可以应用于云存储系统,其中包括密钥生成中心(KGC)、数据拥有者(DO)、云存储服务器(CSP)和第三方验证者(TPA)。系统详细的工作流程可以描述为以下10个步骤:
步骤1:本步骤是系统的建立阶段,由密钥生成中心负责执行,主要完成系统公开参数和主私钥的生成,其具体步骤如下:
步骤1-1,设定系统安全参数k,并选择随机大素数q满足|q|=k;
步骤1-2,选择G1和G2两个阶为q的乘法循环群,g是群G1的生成元,e:G1×G1→G2是双线性映射。选择两个不同的安全Hash函数H1:
Figure BDA0002185279910000061
和H2:
Figure BDA0002185279910000062
以及一个伪随机置换π:
Figure BDA0002185279910000063
一个伪随机函数φ:
Figure BDA0002185279910000064
步骤1-3,KGC随机选择
Figure BDA0002185279910000065
作为主私钥,并计算主公钥为P0=gs。KGC将参数为params=(q,g,G1,G2,e,P0,H1,H2,φ,π)公布出去,同时将主私钥秘密保存。
步骤2:当数据拥有者有数据要存储到CSP中时,则提交自己的身份信息ID到KGC,KGC计算skID=H1(ID)s作为其私钥,并通过安全信道返回给数据拥有者。
步骤3:数据拥有者在将数据存储到CSP之前,利用自己的私钥,为数据生成数据标签。然后将数据块和标签上传到CSP中,并将它们从本地存储删除;具体步骤如下:
步骤3-1:数据拥有者将待上传的数据文件F分割成n个数据块表示为F=(m1,m2,L,mn),其中任意的
Figure BDA0002185279910000066
步骤3-2:数据拥有者按照如下步骤为每一个数据块生成验证标签:
(1)数据拥有者选择两个随机数χ∈G1
Figure BDA0002185279910000067
(2)计算
Figure BDA0002185279910000071
其中Fid为数据的唯一性标识。
数据拥有者重复n次上述步骤(2),得到标签集T=(T1,T2,…,Tn)。
(3)数据拥有者计算:R=gλ,再选择一个安全的签名方案Sig,计算得到整个数据文件的签名TFid=Sig(R||χ||Fid)。
本步骤算法特点说明:标签生成算法利用用户私钥建立用户、数据与标签之间的关系。运用随机数
Figure BDA0002185279910000072
保证标签的不可伪造性。同时利用现有安全签名方案Sig,确保关键参数R=gλ的正确性,从而保证标签的有效性验证。与以往方案相比,标签生成增加了一次乘法运算,但是实现了基于身份的标签生成特性。况且乘法运算的计算代价很小,基本上可以忽略不计。
步骤3-3:最后,数据拥有者上传(F,R,χ,{Ti|i∈[1,n]},TFid)到CSP中。同时将(F,R,χ,{Ti|i∈[1,n]},TFid)从本地删除。
步骤4:CSP接收到数据拥有者上传的数据后,通过公式
Figure BDA0002185279910000073
验证标签的正确性。若标签与数据不匹配,则拒绝接收。
步骤5:TPA通过挑战CSP以检查上传的数据是否完整;步骤如下:
步骤5-1:TPA选择两个随机种子
Figure BDA0002185279910000074
同时选择要挑战的数据块数量c∈[1,n]。TPA将挑战信息chal=(c,k1,k2)和数据标识Fid发送给CSP。
步骤6:CSP在接受到TPA的挑战信息后,为挑战的数据块生成相应的完整性证据,并将证据返回给TPA以证明数据的完整性;具体步骤如下:
步骤6-1:CSP利用伪随机置换和伪随机函数计算得到挑战集合C={(vi,ai)|i∈[1,c]},其中vi=π(k1,i),ai=φ(k2,i)。
步骤6-2:CSP随机选择整数
Figure BDA0002185279910000075
并计算出W=χ-r,
Figure BDA0002185279910000076
Figure BDA0002185279910000077
最后,CSP将元组P=(W,σ,M,R,χ,TFid)作为数据完整性证据返回给TPA。
本步骤算法特点说明:该步骤利用随机数
Figure BDA0002185279910000078
对原始数据进行混淆,使验证者无法从证据中还原数据,以保护数据的隐私。同时利用W=χ-r在验证算法中将随机数
Figure BDA0002185279910000081
消除,实现数据的完整性验证。与以往完整性验证方案相比,本方案在仅增加W=χ-r的一次指数运算的情况下,更高效的实现了数据的隐私保护。
步骤7:TPA在接收到证据后,对证据进行验证,并根据验证结果判定数据是否完好如初;步骤如下:
步骤7-1:首先TPA通过公开的签名方案验证外包数据的签名TFid是否为R||χ||Fid合法签名。如果TFid不能通过验证,TPA直接拒绝证据P并返回‘数据不完整’,否则执行步骤7-2。
步骤7-2:TPA利用伪随机置换和伪随机函数计算得到挑战集合C={(vi,ai)|i∈[1,c]},其中vi=π(k1,i),ai=φ(k2,i)。
步骤7-3:TPA验证公式
Figure BDA0002185279910000082
是否成立;如果成立表示数据完整,否则表示数据不正确。
本步骤算法特点说明:验证算法的执行仅需CSP返回的证据以及用户身份信息,不需要其余私密信息,因此方案支持公开验证。算法通过对完整性证据的检查,能够判断出原始数据与验证标签的关系是否对应。由于验证标签是不可伪造的,所以验证标签与数据的一致性判断结果,即是原始数据是否正确的判断结果。验证算法利用双线性映射数学工具,有效的证明标签与数据以及与用户之间的关系,并通过数学变换巧妙的消除随机数对原始数据的隐藏,得到正确的验证结果。与其他支持数据隐私保护的验证方案相比,该算法具有更好的性能。
综上所述,本发明提出了一个用于支持数据隐私保护的云存储系统中的数据完整性的校验方法。该方法的主要特色优势是利用基于身份的公钥密码体制避免了传统公钥密码体制中的数字证书管理问题,实现了数据的隐私保护,且具有较好的性能和较高的安全性。
本发明的不局限于上述实施例所述的具体技术方案,凡采用等同替换形成的技术方案均为本发明要求的保护范围。

Claims (1)

1.一种支持数据隐私保护的云存储中数据完整性验证方法,其特征在于,包括如下步骤:
步骤1:首先系统的建立阶段,由密钥生成中心负责执行,完成系统公开参数和主私钥的生成,其具体步骤如下:
步骤1-1,设定系统安全参数
Figure 180788DEST_PATH_IMAGE001
,并选择随机大素数
Figure 430503DEST_PATH_IMAGE002
满足
Figure 415777DEST_PATH_IMAGE003
步骤1-2,选择
Figure 787852DEST_PATH_IMAGE004
Figure 858577DEST_PATH_IMAGE005
两个阶为
Figure 911983DEST_PATH_IMAGE006
的乘法循环群,
Figure 814080DEST_PATH_IMAGE007
是群
Figure 294740DEST_PATH_IMAGE008
的生成元,
Figure 587181DEST_PATH_IMAGE009
是双线性映射;选择两个不同的安全Hash函数
Figure 444279DEST_PATH_IMAGE010
Figure 200882DEST_PATH_IMAGE011
,以及一个伪随机置换
Figure 852443DEST_PATH_IMAGE012
,一个伪随机函数
Figure 897760DEST_PATH_IMAGE013
步骤1-3,KGC随机选择
Figure 355286DEST_PATH_IMAGE014
作为主私钥,并计算主公钥为
Figure 904079DEST_PATH_IMAGE015
;KGC将参数为
Figure 57367DEST_PATH_IMAGE016
公布出去,同时将主私钥秘密保存;
步骤2:当数据拥有者有数据要存储到CSP中时,则提交自己的身份信息
Figure 324400DEST_PATH_IMAGE017
到KGC,KGC计算
Figure 585618DEST_PATH_IMAGE018
作为其私钥,并通过安全信道返回给数据拥有者;
步骤3:数据拥有者在将数据存储到CSP之前,利用自己的私钥,为数据生成数据标签;然后将数据块和标签上传到CSP中,并将它们从本地存储删除;
具体如下:
步骤3-1:数据拥有者将待上传的数据文件
Figure 988917DEST_PATH_IMAGE019
分割成
Figure 310177DEST_PATH_IMAGE020
个数据块表示为
Figure 64506DEST_PATH_IMAGE021
,其中任意的
Figure 801518DEST_PATH_IMAGE022
步骤3-2:数据拥有者按照如下步骤为每一个数据块生成验证标签:
(1) 数据拥有者选择两个随机数
Figure 387220DEST_PATH_IMAGE023
Figure 817065DEST_PATH_IMAGE024
(2) 计算
Figure 855428DEST_PATH_IMAGE025
,其中
Figure 396131DEST_PATH_IMAGE026
为数据的唯一性标识;
数据拥有者重复
Figure 101918DEST_PATH_IMAGE027
次上述步骤(2),得到标签集
Figure 437085DEST_PATH_IMAGE028
(3) 数据拥有者计算:
Figure 228323DEST_PATH_IMAGE029
,再选择一个安全的签名方案
Figure 307138DEST_PATH_IMAGE030
,计算得到整个数据文件的签名
Figure 867432DEST_PATH_IMAGE031
步骤3-3:最后,数据拥有者上传
Figure 373500DEST_PATH_IMAGE032
到CSP中;同时将
Figure 649105DEST_PATH_IMAGE033
从本地删除;
步骤4:CSP接收到数据拥有者上传的数据后,通过公式
Figure 531610DEST_PATH_IMAGE034
验证标签的正确性;若标签与数据不匹配,则拒绝接收;
步骤5:TPA通过挑战CSP以检查上传的数据是否完整;具体方法是:
TPA选择两个随机种子
Figure 946411DEST_PATH_IMAGE035
,同时选择要挑战的数据块数量
Figure 888959DEST_PATH_IMAGE036
;TPA将挑战信息
Figure 326894DEST_PATH_IMAGE037
和数据标识
Figure 809828DEST_PATH_IMAGE038
发送给CSP;
步骤6:CSP在接受到TPA的挑战信息后,为挑战的数据块生成相应的完整性证据,并将证据返回给TPA以证明数据的完整性;
具体方案如下:
步骤6-1:CSP利用伪随机置换和伪随机函数计算得到挑战集合
Figure 282397DEST_PATH_IMAGE039
,其中
Figure 192584DEST_PATH_IMAGE040
,
Figure 117815DEST_PATH_IMAGE041
步骤6-2:CSP随机选择整数
Figure 404440DEST_PATH_IMAGE042
,并计算出
Figure 731516DEST_PATH_IMAGE043
,
Figure 78184DEST_PATH_IMAGE044
,
Figure 490711DEST_PATH_IMAGE045
;最后,CSP将元组
Figure 253130DEST_PATH_IMAGE046
作为数据完整性证据返回给TPA;
步骤7:TPA在接收到证据后,对证据进行验证,并根据验证结果判定数据是否完好如初;
具体方法如下:
步骤7-1:首先TPA通过公开的签名方案验证外包数据的签名
Figure 434713DEST_PATH_IMAGE047
是否为
Figure 952282DEST_PATH_IMAGE048
合法签名;如果
Figure 852105DEST_PATH_IMAGE049
不能通过验证,TPA直接拒绝证据
Figure 418215DEST_PATH_IMAGE050
并返回‘数据不完整’,否则执行步骤7-2;
步骤7-2:TPA利用伪随机置换和伪随机函数计算得到挑战集合
Figure 516621DEST_PATH_IMAGE051
,其中
Figure 142775DEST_PATH_IMAGE052
,
Figure 529894DEST_PATH_IMAGE053
步骤7-3:TPA验证公式
Figure 634116DEST_PATH_IMAGE054
是否成立;如果成立表示数据完整,否则表示数据不正确。
CN201910811862.5A 2019-08-30 2019-08-30 一种支持数据隐私保护的云存储中数据完整性验证方法 Active CN110365469B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910811862.5A CN110365469B (zh) 2019-08-30 2019-08-30 一种支持数据隐私保护的云存储中数据完整性验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910811862.5A CN110365469B (zh) 2019-08-30 2019-08-30 一种支持数据隐私保护的云存储中数据完整性验证方法

Publications (2)

Publication Number Publication Date
CN110365469A CN110365469A (zh) 2019-10-22
CN110365469B true CN110365469B (zh) 2022-01-28

Family

ID=68225590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910811862.5A Active CN110365469B (zh) 2019-08-30 2019-08-30 一种支持数据隐私保护的云存储中数据完整性验证方法

Country Status (1)

Country Link
CN (1) CN110365469B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111552990A (zh) * 2020-04-17 2020-08-18 贵州电网有限责任公司 一种基于电网大数据的安全防护方法
CN111585756B (zh) * 2020-04-30 2023-04-25 西安建筑科技大学 一种适用于多副本-多云情形下的无证书云审计方法
CN111931201B (zh) * 2020-07-15 2023-06-16 重庆第二师范学院 一种基于对称密钥的安全云存储系统
CN112910632B (zh) * 2021-02-18 2022-10-11 金陵科技学院 一种新型面向多数据用户、保护用户隐私的云端数据完整性验证方法
CN113098681B (zh) * 2021-03-05 2022-03-15 电子科技大学 云存储中口令增强且可更新的盲化密钥管理方法
CN114745120B (zh) * 2022-03-17 2023-08-22 郑州大学 一种支持公平支付的抗密钥暴露的云数据完整性校验方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694467B2 (en) * 2010-03-31 2014-04-08 Xerox Corporation Random number based data integrity verification method and system for distributed cloud storage
CN110011998B (zh) * 2019-03-29 2021-07-27 福建师范大学 一种基于身份的多备份远程数据持有验证方法
CN109948372B (zh) * 2019-03-29 2022-10-04 福建师范大学 一种指定验证者的云存储中远程数据持有验证方法

Also Published As

Publication number Publication date
CN110365469A (zh) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110365469B (zh) 一种支持数据隐私保护的云存储中数据完整性验证方法
Fu et al. NPP: A new privacy-aware public auditing scheme for cloud data sharing with group users
CN108352015B (zh) 用于基于区块链的系统结合钱包管理系统的安全多方防遗失存储和加密密钥转移
CN110971411B (zh) 一种基于sotp技术对私钥乘加密的sm2同态签名方法
CN106341232B (zh) 一种基于口令的匿名实体鉴别方法
CN106487506B (zh) 一种支持预加密和外包解密的多机构kp-abe方法
CN108989050A (zh) 一种无证书数字签名方法
CN114036539A (zh) 基于区块链的安全可审计物联网数据共享系统及方法
WO2019110399A1 (en) Two-party signature device and method
CN113098681B (zh) 云存储中口令增强且可更新的盲化密钥管理方法
CN112910632B (zh) 一种新型面向多数据用户、保护用户隐私的云端数据完整性验证方法
CN115208656A (zh) 一种基于区块链和权限管理的供应链数据共享方法及系统
US20150023498A1 (en) Byzantine fault tolerance and threshold coin tossing
CN109743327B (zh) 基于无证书的云存储中共享数据的完整性公开验证方法
CN108809996B (zh) 不同流行度的删重存储数据的完整性审计方法
CN108664814B (zh) 一种基于代理的群组数据完整性验证方法
Mishra et al. MPoWS: Merged proof of ownership and storage for block level deduplication in cloud storage
Abo-Alian et al. Auditing-as-a-service for cloud storage
CN111934880A (zh) 一个安全有效的具有隐私保护的云数据完整性验证方案
CN110868285B (zh) 认证方法、服务器、系统和计算机可读存储介质
Suguna et al. Privacy preserving auditing protocol for remote data storage
CN111585756B (zh) 一种适用于多副本-多云情形下的无证书云审计方法
CN104935582B (zh) 大数据存储方法
CN110225041B (zh) 一种数据管理方法、系统及相关组件
Kanagamani et al. Zero knowledge based data deduplication using in-line Block Matching protocolfor secure cloud storage

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
GR01 Patent grant
GR01 Patent grant