计算机应用   2017, Vol. 37 Issue (12): 3417-3422  DOI: 10.11772/j.issn.1001-9081.2017.12.3417
0

引用本文 

金瑜, 蔡超, 何亨. 支持用户追溯和轻量的共享云数据审计方案[J]. 计算机应用, 2017, 37(12): 3417-3422.DOI: 10.11772/j.issn.1001-9081.2017.12.3417.
JIN Yu, CAI Chao, HE Heng. Scheme of sharing cloud data audit supporting user traceability and lightweight[J]. Journal of Computer Applications, 2017, 37(12): 3417-3422. DOI: 10.11772/j.issn.1001-9081.2017.12.3417.

基金项目

国家自然科学基金资助项目(61303117,61602351)

通信作者

蔡超, E-mail:973427045@qq.com

作者简介

金瑜(1973-), 女, 湖北武汉人, 教授, 博士, CCF会员, 主要研究方向:云计算、对等计算、信任模型;
蔡超(1993-), 男, 湖北黄冈人, 硕士研究生, 主要研究方向:云计算安全、云审计;
何亨(1985-), 男, 湖北武汉人, 教授, 博士, 主要研究方向:密码学、属性加密、安全控制机制

文章历史

收稿日期:2017-05-08
修回日期:2017-08-08
支持用户追溯和轻量的共享云数据审计方案
金瑜1,2, 蔡超1,2, 何亨1,2    
1. 武汉科技大学 计算机科学与技术学院, 武汉 430065;
2. 湖北省智能信息处理与实时工业系统重点实验室, 武汉 430065
摘要: 在云计算中,数据通常由一组用户共享。由于第三方审计可以通过数据块的签名获取组成员的身份,为了保护群组成员的身份,现有对共享数据的公共审计方案都隐藏了组成员的身份。然而,身份的匿名性将导致一个组的成员可以恶意修改共享数据而不被发现,而且对于资源受限的设备,用户在产生签名的过程中计算量大。因此现有公共审计方案存在数据块身份的不可追溯、用户产生共享数据块签名的计算量大等问题。针对上述问题,提出了一种支持用户追溯和轻量的共享云数据审计方案(ASDA)。该方案利用安全中介者代替用户签名,保护了群组成员的身份,在签名的同时保存用户的信息,通过这些信息,可以追溯到数据块是由哪一个组成员修改,从而保证数据块身份可追溯性;而且利用新的数据块致盲技术,减少用户端计算量。实验结果表明,所提方案与利用第三方媒介存储共享云数据(SDVS)方案相比,减少了用户端计算时间,并且能够实现共享数据块身份的可追溯性。
关键词: 云计算    共享数据    公共审计    轻量    可追溯性    
Scheme of sharing cloud data audit supporting user traceability and lightweight
JIN Yu1,2, CAI Chao1,2, HE Heng1,2     
1. College of Computer Science and Technology, Wuhan University of Science and Technology, Wuhan Hubei 430065, China;
2. Hubei Provincial Key Laboratory of Intelligent Information Processing and Real-time Industrial System, Wuhan Hubei 430065, China
Abstract: The data is usually shared by a group of users in cloud computing. The third party auditor can obtain the the identities of group members through their signatures of data blocks. In order to protect the identities of group members, the existing public audit schemes for shared data all hide the identities of group members. However, the anonymity of identity leads to the problem that a member of the group can change the shared data maliciously without being found, and the amount of computation is large for resource constrained devices in the process of generating signature for users. The existing public audit schemes have the problems that the identity of data block can not be traced and the amount of calculation of generating shared data block signature is large. In order to solve the above problems, A Scheme of sharing cloud Data Audit supporting user traceability and lightweight (ASDA) was proposed. Firstly, the security mediator was used to replace the user signature to protect the identities of group members. The information of user was saved while signing and it could be traced back that the data block was modified by which member through the above information, which could ensure the traceability of the identity of data block. Then, a new data block blinding technology was used to reduce the amount of client computing. The experimental results show that, compared with Storing shared Data on the cloud Via Security-mediator (SDVS) scheme, the proposed scheme reduces the computing time of users and realizes the traceability of shared data blocks.
Key words: cloud computing    shared data    public audit    light weight    traceability    
0 引言

云存储是在云计算(cloud computing)上延伸和发展出来的一个新概念,是一种新兴的网络存储技术。当云计算系统运算和处理核心是大量数据存储和管理时,该系统就转变成为一个云存储系统。简单来说,云存储就是将储存资源放到云上供人存取的一种新兴方案。使用者可以在任何时间、任何地点,通过任何连网装置连接到云上方便地存取数据。通过云计算中的数据存储和共享服务,用户能够以一个组的形式共享数据。作为组中的一名成员,用户不仅可以访问这些共享数据,而且可以修改这些共享数据。尽管云计算能够让用户之间共享数据更加方便,但是由于云存储中存在一些安全性因素,用户仍然关心他们的数据是否安全,特别是数据的完整性。解决这个问题的方法最有效的方法是利用第三方审计者(Third Party Auditor, TPA)对共享数据进行审计,验证共享数据的完整性。但是第三方审计者(TPA)在验证数据的完整性的过程中能够获取到数据块身份,即每一个共享数据块签名者身份。如果不保护这些身份信息,共享数据组中的机密信息(例如组中哪个用户扮演更重要的角色或在共享数据中哪一个数据块具有更高价值),会泄漏给第三方审计者(TPA)。

虽然目前关于共享数据的公共审计方案都很好地解决了在公共审计时数据块身份信息保护问题,也支持群组的动态变化。但是,对于那些恶意修改共享数据的群组成员,无法追踪其身份,而且在用户端,在产生数据块签名过程中计算量大,对于资源有限的用户耗时较长。本文提出了一种支持用户追溯和轻量的共享云数据审计方案,实现了数据块身份的可追溯性,而且对于资源受限的用户端,可以减少其负担。

1 相关工作

如何保证云服务器中存储的用户数据没有被修改、删除或者泄露,成为一个亟需解决的重要安全性问题。Deswarte等[1]利用哈希函数来验证云服务器存储文件的完整性,允许客户端使用相同元数据进行多次挑战,但是该方案的缺点在于:云服务器要对整个数据文件取幂,并且需要访问所有文件块,计算复杂度大,效率低。Sebe等[2]提出了基于Diffie-Hellman问题的文件完整性检查方案,但该方案的缺点是用户存储花销较大,并且也需要云服务器在产生证明的过程中访问所有文件。

Ateniese等[3]第一次提出了数据拥有证明的公开审计方案(Provable Data Possession, PDP),该方案允许客户在不取回整个文件的情况下,验证数据的完整性;但是该方案仅适用于静态数据。为了提高云数据审计的有效性,Juels等[4]提出了“可回取证明模型”(Proof of Retrievability, POR),利用隐藏在正常存储文件中的附加数据块(也称作“哨兵块”)去检测服务器端的数据是否被完好地存储;但是,此方案可审计的次数需要预先设定,而且不支持公开审计。Shacham等[5]设计了另一个版本的可回取证明方案(POR),该方案利用双线性对签名(BiLinear pairings Signature, BLS)短签名[6]实现了公共审计;Wang等[7]利用Merkle哈希树构造了支持动态更新的公共审计方案,这两个方案都支持完全动态操作,但是均存在数据的隐私泄露问题。Wang等[8]通过使用随机掩码保护用户数据的隐私,但是该方案不支持数据动态操作。Yang等[9]在方案中利用双线性对的性质对隐私数据进行加密,保证了用户数据隐私;并且采用了数据碎片技术,对数据块再进行分块,使得一个数据块包含多个二级文件块,从而减少了签名数量。

随着云计算的发展,数据共享得到了许多专家学者的关注。Yu等[10]提出通过云服务器的存储和共享服务,用户可以以一个群组的形式共享数据;作为一个群组成员有权利查看共享数据和修改共享数据。尽管用户可以方便地共享数据,但是数据的完整性仍然是重要的安全性问题[11-12],利用TPA进行公共审计会产生数据的身份隐私泄露问题[13]

Wang等[14]充分考虑了在公共审计过程中数据的身份隐私问题,提出了一种利用环签名保护群组成员身份隐私方案,采取环签名的方法,能够保证TPA在验证数据完整性的同时,保护数据的身份隐私;但是该方案的签名数量随着组成员的数量线性增长,用户端的计算量较大,因此不支持大的用户群组。Shen等[15]提出了一种对共享数据隐私保护的轻量级审计方案,充分考虑到了资源限制的用户端的计算有限性,采用数据的致盲方式,让第三方媒介(Third Party Medium, TPM)代替群组用户对数据进行签名,不仅减轻了用户端的负担,也保证了共享数据公共审计时的身份隐私,同时也保护了数据拥有者的身份;但是该方案不支持群组动态,也不支持数据块的可追溯性。Wang等[16]提出另外一种共享数据隐私保护的公共审计方法,利用动态广播技术,让组成员在修改共享数据的时候,以数据拥有者的身份进行签名,从而保护了组成员的身份隐私,不仅实现了群组成员对数据的动态操作,而且支持群组动态;但是该方案并没有保护数据拥有者的身份,使得TPA在公共审计的时候窃取到数据拥有者的身份,也不支持数据块的可追溯性。Wang等[17]又提出利用第三方媒介存储共享云数据(Storing shared Data on the cloud Via Security-mediator, SDVS)方案,引入一个安全中介者(SEcuriry-Mediator, SEM),同样采用数据致盲的方式,数据拥有者通过安全中介者(SEM)的签名服务获取所有数据块的签名,在公共审计时,TPA只能获取到数据是由SEM签名, 并且SEM能够实现群组的动态。该方案对SEM定义为:一种提供签名服务的服务器,能够按照用户的要求执行某种操作,但是可能会窃取到用户的隐私数据。然而,在组成员进行恶意修改共享数据等行为时,该方案不能够追溯到组成员的身份,并且该方案采取的数据致盲方式,对于资源有限的用户端负担较大。

针对SDVS方案不能够追溯到组成员的身份和用户端负担较大的不足,本文提出了一种支持用户追溯和轻量的共享云数据审计方案(A Scheme of sharing cloud Data Audit supporting user traceability and lightweight, ASDA)。该方案利用文献[15]中的数据致盲方式,减少了用户端的计算量,并且在SEM代替群组用户对数据块进行签名时,保存用户的身份信息,从而达到了数据块身份的可追溯性。不同方案的对比如表 1所示。ASDA相比SDVS具有以下优势:1)对于共享数据中的每一个数据块,本文方案能够追溯到该数据块身份,即数据块由哪个群组成员签名;2)对于群组成员,能够减轻其计算负担。

表 1 不同方案的对比 Table 1 Comparison of different schemes
2 ASDA构造 2.1 预备知识 2.1.1 双线性图

假设都是素数阶为p的乘法循环群g1g2都是G1生成元;一个双线性图的构造方法是e:G1×G1G2。那么e具有以下几个性质:

1) 双线性性:∀m, nG1e(ma, nb)=e(m, n)ab

2) 非退化性:e(g1, g2)≠1;

3) 可计算性:e能够被有效地计算。

2.1.2 动态广播技术

广播加密技术(Broadcast Encryption, BE)[18]能够使广播者通过广播信道,传输加密信息给群组成员;仅仅群组成员可以解密该信息。与传统的BE相比,动态BE(Dynamic BE, DBE)[19]能够有效地支持群组的动态变化。例如,广播者将信息m用算法进行加密:DBE.Encek(m, U), 其中ek为加密密钥,为U用户列表。群组用户能够解密该信息:m=DBE.Decdki(DBE.Enc(m, U)),其中dki为群组成员的解密密钥。

2.1.3 数据盲化

数据的盲化技术,用户A将数据进行盲化处理后传递给用户B,用户B不能够推断出用户A的原始数据,保证了数据的隐私。方案[12]提出了一种计算量很小的数据盲化方法:有一个数据块mi={mi, 1, mi, 2, …, mi, si},用户A利用随机函数生成αi=fki(i, name),则每一个二级文件块盲化后为mi, j=mi, j+αi(j∈[1, si]),将盲化后的数据m′i={mi, 1, mi, 2, …, mi, si}发送给用户B,用户B不能够计算出原始数据mi

2.2 系统模型

本文方案的系统模型如图 1所示。系统中包含五个实体:组管理者(Group Manager)、组成员(Group Member)、云服务器(Cloud Server)、安全中介者(SEM),以及公共审计方(TPA)。该方案的大致过程如下:

图 1 本文方案的系统模型 Figure 1 System model of the proposed scheme

1.初始化,原始用户即组管理者添加群组成员,创建共享群组广播列表U,利用动态广播技术在群组中广播群组密钥, 并且将群组成员的伪公钥集合ϕ发送给SEM。

2.群组成员上传新的数据块到服务器上进行数据共享,或者上传新数据块对共享数据进行修改,首先将致盲的数据块以及对数据块的匿名签名θ发送给SEM。

3.SEM收到致盲的数据块后, 首先判断上传致盲数据块的用户是否为群组成员,若是,则为该成员提供签名服务,将致盲数据的签名发送给群组成员;同时保存该成员对数据块的匿名签名,产生数据块匿名签名表。

4.群组成员收到致盲签名后,验证盲签名的正确性,将数据块以及致盲签名发送给服务器;服务器收到群组成员发送的数据后, 对盲签名进行处理得到真正的数据签名,保存数据以及签名。

5.群组动态变化过程,群组成员加入或者退出时群管理员通知SEM更新伪公钥集合ϕ;群组成员加入时,群管理者还需要通过动态广播将群组私钥发送给新群组成员。

6.验证数据完整性过程,用户向公共审计方发送验证请求。

7.公共审计方收到验证请求后,向云服务器发送挑战Challenge。

8.云服务器收到挑战后产生完整性验证证据Proof发送给公共审计方。

9.公共审计方根据验证算法Verify验证用户数据的完整性,并将验证结果发送给用户。

10.追溯数据块的过程,群管理者取得SEM中保存的群组成员对数据块的匿名签名,通过群组私钥对匿名签名进行还原,判断该数据块由哪个群组成员签名。

2.3 威胁模型及安全目标

本文的威胁模型主要考虑四种攻击:

1) 服务器在出现数据丢失、数据保存不完整等情况下,为了维护自己的名声或者避免损失金钱,可能会欺骗公共审计方。

2) 安全中介者(SEM)在对组成员数据签名的过程中可能会窃取组成员的数据内容以及身份。

3) 在公共审计的过程中,由于服务器产生证明给公共审计方时,同时也会将线性的数据块组合和数据块的签名发送给公共审计方;审计方会通过这些线性数据块组合窃取共享数据的内容,并且通过数据块的签名窃取到数据块对应的组成员身份。

4) 组成员在修改共享数据的时候,可能会存在一些恶意的修改,导致共享数据的不可用;而组管理者无法知道是哪一个组成员做出的恶意修改。

事实上,在云环境中,本文假设云服务器是半信任的,也就是云服务器会遵守整个协议,不会恶意地破坏用户数据的完整性,也不会恶意地破坏整个协议;但是可能会因为自身的利益欺骗用户。另外本文假设安全中介者也是半可信的,也就是安全中介者也会遵守整个协议;但是可能会窃取用户的隐私。

为了克服这些威胁,本文方案的目标是达到下面的安全目标:

1) 公共审计:公共审计方能够代表用户正确的验证共享数据的完整性。

2) 身份隐私:无论是SEM还是TPA都不能窃取到数据块身份。

3) 数据隐私:在TPA进行审计以及SEM对组成员数据签名过程中,公共审计方和安全中介者都不能够窃取到共享数据的内容。

4) 可追溯性:组管理者能够追溯到数据块身份(即数据块由哪个组成员签名)。

2.4 ASDA详述

本文设计了一种支持用户追溯和轻量的共享云数据审计方案。在本文方案中,群组成员上传数据以及修改共享数据,都可以从安全中介者获取签名;因此在公共审计时,TPA只能够知道数据是SEM进行签名的,从而保护了组管理者和组成员的身份。而且组成员在通过SEM进行签名时,能够保存该组成员的身份;能够实现数据块身份的追溯性。本文的方案主要由Setup、UploadData、Join、Revoke、Challenge、Response、Verify、Trace这八个算法组成。

1) Setup。G1G2是两个以p为素数阶的乘法循环群,gG1的生成元,双线性图e:G1×G1G2。全局参数为{g, H, e, p, μ1, μ1, …, μs},其中H为哈希函数,H:{0, 1}*G1μ1, μ2, …, μs是从G1中随机产生的s个生成元。

共享组中的成员数,本文用d来表示。初始用户即组管理者产生DBE所需要的参数,和文献[16]中方案一样。组管理者产生自己的私钥:sk=xZp,公钥Pk=gxG1; 组成员u1, u2, …, ud,每个组成员ui随机选取xiZp作为自己的私钥,计算gxi作为自己的公钥,即ski=xi, Pki=gxi;安全中介者SEM产生自己的私钥sks=β、公钥Pks={ v=gβ, μ1β, μ2β, …, μsβ}。组管理者建立广播列表U(如表 2所示),列表为{U|uiU, 1≤id},并且随机产生y作为群组私钥,使用DBE.Encek(y, U),然后分发密钥给群众的所有成员。

表 2 用户广播列表 Table 2 User broadcast list

群组成员通过y=DBE.Decdki(DBE.Encek(y, U))解密出群组密钥,其中成员ui的解密密钥为dki;组管理者将群组成员的伪公钥集合ϕ={ Pk11/y, Pk21/y, …, Pks1/y}发送给SEM。

2) UploadData。群组成员uk上传新数据到服务器上进行数据共享或者修改共享数据。SEM为群组成员uk提供数据块签名服务,对于数据mi={mi, 1, mi, 2, …, mi, si}, si表示数据块包含二级文件块个数。群组成员uk上传数据过程分为以下四个步骤,如图 2所示。

图 2 群组成员上传数据块mi到服务器的过程 Figure 2 Process of group members uploading data block mi to the server

a) 数据块mi,它的块身份为idi,群成员ui利用伪随机函数产生αi=fπk(i, name),其中:name为文件标识,i表示数据块块号。对于数据块mi={mi, 1, mi, 2, …, mi, si},每一个二级文件块致盲后为mi, j=mi, j+αi,最后群组成员ui得到致盲后的数据块m′i={mi, 1, mi, 2, …, mi, si};群组成员ui通过dki解密出群组传播的私钥y; 对idi进行签名得θi=[H(idi)]skk/y;完成之后,将{ idi, mi, θi, Pkk1/y}发送给SEM。

b) SEM收到{ idi, mi, θi, Pkk1/y},查看Pk1/y是否属于ϕ集合中的元素,从而确定数据块是否来自群组的成员;然后通过e(θi, g)$\underline{\underline ?} $e(H(idi), Pk1/y)验证θi的正确性,若验证成功,则建立数据块追溯表(如表 3所示),并且对盲数据mi进行签名为$\sigma ' = {[H(i{d_i})*\prod\limits_{j = 1}^s {{\mu _j}^{{{m'}_{i, j}}}}]^\alpha }$。签名完成后,群管理者将σi返回给群成员ui

表 3 数据块追溯表 Table 3 Data block traceability table

c) 群成员uk收到SEM发回的签名σi后,将Upload={idi, σ′i, mi, Pks, πk}发送给服务器。

服务器收到群组成员上传的数据Upload,首先根据伪随机密钥πk计算出αi=fπk(i, name),从而计算致盲后的数据mi;首先通过$e(H(i{d_i})*\prod\limits_{j = 1}^{{s_i}} {{\mu _j}^{{{m'}_{i, j}}}}, v)$=e(σ′i, g)验证签名的正确性,若正确则对盲数据签名进行还原得到σi=${\sigma _i} = {{\sigma '}_i}*\prod\limits_{j = 1}^{{s_i}} {{{({\mu _j}^\beta )}^{-{\alpha _i}}}} $,最后服务器将{mi, σi}进行存储。

3) Join。群管理者在用户广播列表U中添加一个用户u′,新的用户广播列表表示为:U′=Uu′, u′∉U,随后利用DBE.Encek(y, U)对y重新加密,并且将加密秘钥发送给u′。用户u′可以通过y=DBE.Decdk(DBE.Encek(y, U))获取群组私钥,其中u′∈U′,dk′是用户u′的解密私钥。随后组管理者将Pk1/y发送给SEM,添加到SEM存储的伪公钥集合中。

4) Revoke。群组成员uk退出该群组,群管理者找到需要退出用户uk的对应的PkPkk,并且将Pkk1/y发送给SEM,SEM删除集合ϕ中的Pkk1/y,不对该用户进行签名服务。然后更新用户广播列表U′=U-uk, ukU,删除该用户。

5) Challenge。为了审计共享数据的完整性,TPA向服务器发起挑战:

公共审计方(TPA)从[1, n]中随机选取c个元素的子集I={ss1, ss2, …, ssc}(假设{ss1ss2≤…≤ssc})。对于每一个ssiI,TPA会对应地选取vviZp,然后随机选取ηZp,计算ε=(v)η,因此TPA产生的挑战可以表示为:chal=({vvi, i}iI, ε),并且将chal发送给云服务器。

6) Response。收到TPA的挑战信息chal后,计算$\vartheta = {\prod\limits_{i \in I} {{\sigma _i}} ^{v{v_i}}}$$T{P_j} = \sum\limits_{i \in I} {v{v_i}*{m_{i, j}}} $, $j \in [1, \varpi]$$u = \prod\limits_{j = 1}^\varpi {e{{({\mu _j}, \varepsilon )}^{T{P_j}}}} $$\varpi = \max {\{ {s_i}\} _{i \in I}}$;并且返回res={idi, u, $\vartheta $},云服务器将证明res发送到TPA。

7) Verify。TPA收到服务器返回的数据res后, 首先计算${H_{chal}} = {\prod\limits_{i \in I} {[H(i{d_i})]} ^{\eta *v{v_i}}}$,然后验证等式u*e(Hchal, v)=e(ϑ, gη)的成立,若成立则数据完整。

8) Trace。对于身份为idi数据块mi,群管理员可以通过SEM的数据块追溯表得到θi。群管理员计算θi′=θiy;然后根据e(θi′, g)$\underline{\underline ?} $e(H(idi), Pk?)来追溯该数据块是由哪一个组成员进行修改的。例如Pk2可以让该式成立,则可以判断该数据块是由组成员u2修改的。

3 安全性分析

本文方案ASDA与SDVS相比,安全性并没有降低。下面分为三个部分进行安全性分析,从而证明方案的可靠性。

1) 公共审计过程中的安全性。

定理1  在公共审计过程中,云服务器返回正确的证据,公共审计方审计时能够通过验证。

证明  如果云服务器的证据正确,则u*e(Hchal, v)=e(ϑ, gη)成立。证明过程与方案[10]类似,本文省略。

定理2  在公共审计过程中,云服务器不能够伪造数据签名来通过TPA的审计。

证明  CSP在已知用户的元数据、数据块签名和公共参数g2v的情况下计算伪造一个新的数据块签名,是一个Diffie-Hellman难题。Diffie-Hellman难题可以描述为:在知道g2g2ag2b的情况下计算g2ab是困难的,因为很难求出ab的值。

2) 群组成员上传新数据,进行数据共享或者修改共享数据过程的安全性。

定理3  SEM不能够伪造数据的签名来通过服务器的验证。

证明  如果SEM要伪造数据的签名来通过服务器的验证。SEM必须提供正确的σi,使得下面的公式成立(其中m′为用户提供给服务器的数据):$e(H(i{d_i})*\prod\limits_{j = 1}^{{s_i}} {{\mu _j}^{{{m'}_{i, j}}}}, v)\underline{\underline ?} $e(σi, g),否则无法通过验证。其推导过程如下:左边=$e({[H(i{d_i})*\prod\limits_{j = 1}^{{s_i}} {{\mu _j}^{{{m'}_{i, j}}}}]^\beta }, g)$=右边

定理4  群组成员不能够伪造数据块idi的签名θi通过SEM的验证。

证明  如果群组成员伪造签名θi来通过SEM的验证,导致无法追溯到该数据块对应的身份。SEM必须提供正确的θi,使得下面的公式成立(其中m′为用户提供给服务器的数据):e(θi, g)$\underline{\underline ?} $e(H(idi)y, Pki),否则无法通过验证。

3) 用户的隐私安全。

定理5  公共审计方不能够根据已收到的数据获取到群组成员的私密数据。

证明  本文采取了文献[10]方案的方法,利用双线性对的性质,防止TPA通过数据块的线性组合推导出用户的数据隐私信息。

定理6  SEM不能够根据收到的致盲数据获取到群组成员的私密数据。

证明  对于数据块mi={mi, 1, mi, 2, …, mi, si}, 其致盲后的二级文件块为mi, j=mi, j+αi(j∈[1, si]),致盲因子αi是用户通过伪随机函数随机产生的(αi=fki(i, name));二级文件块mi, j也是随机产生的。因此当SEM收到致盲数据块m′i={mi, 1, mi, 2, …, mi, si},不能通过致盲数据块揭露真实的数据块mi

定理7  SEM不能够获取到群组成员的身份隐私。

证明  由于群组用户提供的签名θi是由公式θi=[H(idi)]skk/y计算而来,所提供的公钥为Pk=Pk1/y,SEM若想知道该数据块的身份隐私,必须能够计算出群组成员的公钥Pkk,但是由于y是未知的,SEM不能计算出Pkk

4 性能分析

在实验中,客户端、云服务器、安全中介者、TPA运行环境如下:1)软件环境:操作系统为32位Windows 7,开发软件为Eclipse,编程语言为Java、JPBC(Java Pairing-Based Cryptography):jpbc-2.0.0,密码学应用程序接口(Application Program Interface, API)完成方案中的算法。2)硬件环境:CPU为Intel Core i3 2.10 GHz,RAM为2.00 GB。

本文采用λ=80 b为安全参数,因此G1G2中的生成元|p|=160 b,二级文件块大小为20 B。

本实验的云审计系统由6台PC组成。本文使用3台PC机来搭建Cassandra云存储服务器,用于存储用户的数据和数据签名,并且在用户数据公共审计时提供证据;1台PC作为SEM完成数据的签名;1台PC作为云用户,1台PC作为TPA。

实验一  在获取数据块mi签名过程中,本文考察二级文件块块数变化时,群组成员所花费计算时间的变化。其中SDVS群组成员的计算时间包括数据的致盲时间和盲数据签名还原时间, 而ASDA的计算时间为数据的致盲时间和对数据块身份idi签名的时间。从图 3中可以看出,ASDA中群组成员致盲数据的计算时间随着数据块划分的二级文件块数量增加缓慢增加,基本维持不变,而SDVS中群组成员计算时间随着数据块划分的二级文件块数量增加而呈线性增长;因为本文方案致盲数据时,不用计算$H(i{d_i})*\prod\limits_{j = 1}^{{s_i}} {{\mu _j}^{{m_{i, j}}}*{g^{-r}}} $(s为二级文件块的数量),而且盲签名的还原由服务器来完成。

图 3 群组成员的计算时间与二级文件块划分块数的关系 Figure 3 Relationship between computation time of group members and number of second-level file partition blocks

实验二  在群组成员上传新数据块到云服务器过程中,本文考察二级文件块块数变化时,SEM与用户端总的计算量的变化情况。由图 4可知,对于SEM与用户总的计算量,本文的方案ASDA略微大于SDVS。但是在本文的方案ASDA中,主要的计算量在SEM端,并且支持数据的可追溯性。

图 4 SEM和群组用户的计算时间与二级文件块划分块数的关系 Figure 4 Relationship between computation time of group users and SEM and number of second-level file partition blocks

实验三  由于本文的方案ASDA采用了数据块追溯表来存储用户对数据块标识符的签名,能够达到数据块身份的可追溯性。本文考察数据块块数变化时,数据块追溯表存储量的变化情况。数据追溯表中的每一行数据存储空间为20 B。从图 5可以看出,当数据块个数由1到100000变化时,所需要花费的存储空间小于2MB,存储消耗较小。

图 5 数据追溯表存储量与数据块数的关系 Figure 5 Relationship between storage of data traceability table and data block number
5 结语

针对目前动态共享数据公共审计方案不能够追溯到组成员的身份和用户端负担较大的不足,本文提出了一种支持用户追溯和轻量的共享云数据审计方案(ASDA)。在ASDA中,利用新的数据致盲方式,减少了用户端的计算量,并且在SEM代替群组用户对数据块进行签名时,保存用户的身份信息,从而达到了数据块身份的可追溯性。从安全性角度来看,SEM保存群组成员身份信息以及群管理者通知SEM群组变化时,保护了群组成员身份隐私,SEM无法了解群组成员的真实身份。实验结果表明:ASDA与目前的方案SDVS比较,不仅减少了群组成员的计算量,而且能够支持数据块身份的可追溯性。

参考文献(References)
[1] DESWARTE Y, QUISQUATER J J, SAïDANE A. Remote integrity checking[C]//Proceedings of the Sixth Working Conference on Integrity and Internal Control in Information Systems, IFIPAICT 140. Berlin:Springer, 2004:1-11.
[2] SEBE F, MARTINEZ-BALLESTE A, DESWARTE Y. Time-bounded remote file integrity checking, Technical Report 04429[R]. Tarragona, Spain:Universitat Rovira i Virgili, 2004.
[3] ATENIESE G, BURNS R, CURTMOLA R, et al. Provable data possession at untrusted stores[C]//Proceedings of the 200714th ACM Conference on Computer and Communications Security. New York:ACM, 2007:598-609.
[4] JUELS A, KALISKI B S, Jr. Pors:proofs of retrievability for large files[C]//Proceedings of the 200714th ACM Conference on Computer and Communications Security. New York:ACM, 2007:584-597.
[5] SHACHAM H, WATERS B. Compact proofs of retrievability[C]//ASIACRYPT 2008:Proceedings of the 200814th International Conference on the Theory and Application of Cryptology and Information Security:Advances in Cryptology. Berlin:Springer, 2008:90-107.
[6] BONEH D, LYNN B, SHACHAM H. Short signatures from the Weil pairing[J]. Journal of Cryptology, 2004, 17(4): 297-319.
[7] WANG Q, WANG C, REN K, et al. Enabling public auditability and data dynamics for storage security in cloud computing[J]. IEEE Transactions on Parallel & Distributed Systems, 2011, 22(5): 847-859.
[8] WANG C, WANG Q, REN K, et al. Privacy-preserving public auditing for data storage security in cloud computing[C]//Proceedings of the IEEE INFOCOM 2010. Piscataway, NJ:IEEE, 2010:1-15.
[9] YANG K, JIA X H. An efficient and secure dynamic auditing protocol for data storage in cloud computing[J]. IEEE Transactions on Parallel & Distributed Systems, 2013, 24(9): 1717-1726.
[10] YU S C, WANG C, REN K, et al. Achieving secure, scalable, and fine-grained data access control in cloud computing[C]//INFOCOM 2010:Proceedings of the 201029th IEEE International Conference on Information Communications. Piscataway, NJ:IEEE, 2010:534-542.
[11] 梁彪, 曹宇佶, 秦中元, 等. 云计算下的数据存储安全可证明性综述[J]. 计算机应用研究, 2012, 29(7): 2416-2421. (LIANG B, CAO Y J, QIN Z Y, et al. Survey of proofs on data storage security in cloud computing[J]. Application Research of Computers, 2012, 29(7): 2416-2421.)
[12] 秦志光, 吴世坤, 熊虎. 云存储服务中数据完整性审计方案综述[J]. 信息网络安全, 2014(7): 1-6. (QIN Z G, WU S K, XIONG H. A review on data integrity auditing protocols for data storage in cloud computing[J]. Netinfo Security, 2014(7): 1-6.)
[13] 王少辉, 陈丹伟, 王志伟, 等. 一种新的满足隐私性的云存储公共审计方案[J]. 电信科学, 2012, 28(9): 15-21. (WANG S H, CHEN D W, WANG Z W, et al. A new solution of privacy-preserving public auditing scheme for cloud storage security[J]. Telecommunications Science, 2012, 28(9): 15-21.)
[14] WANG B Y, LI B C, LI H. Oruta:privacy-preserving public auditing for shared data in the cloud[C]//CLOUD 2012:Proceedings of the 2012 IEEE Fifth International Conference on Cloud Computing. Washington, DC:IEEE Computer Society, 2012:295-302.
[15] SHEN W T, YU J, XIA H, et al. Light-weight and privacy-preserving secure cloud auditing scheme for group users via the third party medium[J]. Journal of Network and Computer Applications, 2017, 82: 56-64. DOI:10.1016/j.jnca.2017.01.015
[16] WANG B Y, LI H, LI M. Privacy-preserving public auditing for shared cloud data supporting group dynamics[C]//Proceedings of the 2013 IEEE International Conference on Communications. Piscataway, NJ:IEEE, 2013:1946-1950.
[17] WANG B Y, CHOW S S M, LI M, et al. Storing shared data on the cloud via security-mediator[C]//ICDCS 2013:Proceedings of the 2013 IEEE 33rd International Conference on Distributed Computing Systems. Piscataway, NJ:IEEE, 2013:124-133.
[18] BONEH D, GENTRY C, WATERS B. Collusion resistant broadcast encryption with short ciphertexts and private keys[C]//CRYPTO 2005:Proceedings of the 200525th Annual International Conference on Advances in Cryptology. Berlin:Springer, 2005:258-275.
[19] DELERABLÉE C, PAILLIER P, POINTCHEVAL D. Fully collusion secure dynamic broadcast encrytpion with constant-size ciphertexts or decryption keys[C]//Proceedings of 2007 International Conference on Pairing-Based Cryptography, LNCS 4575. Berlin:Springer, 2007:39-59.