基于层次树的动态群组隐私保护公开审计方案

2016-11-14 02:13黄龙霞张功萱付安民
计算机研究与发展 2016年10期
关键词:私钥群组密钥

黄龙霞 张功萱 付安民

(南京理工大学计算机科学与工程学院 南京 210094) (1063170178@qq.com)



基于层次树的动态群组隐私保护公开审计方案

黄龙霞 张功萱 付安民

(南京理工大学计算机科学与工程学院 南京 210094) (1063170178@qq.com)

随着云存储的高速发展,保证共享数据的安全变得尤为重要.因此,在共享数据的同时,需要对数据完整性进行有效验证并对用户隐私进行保护.针对现有支持动态群的公开审计方案没有考虑密钥管理与安全分发的问题,基于层次树和代理重签名提出了一个支持云存储中群组成员动态的隐私保护公开审计方案.提出的方案首次使用基于逻辑层次密钥体系的密钥树进行密钥的建立和分发,并引入密钥服务器对密钥进行存储,每个用户只需持有叶子节点,成员撤销及加入与原有有效用户获取新群私钥是相互独立的.发生用户撤销后,其余合法用户仍可以根据所持密钥获取新的群私钥,大大提高了用户动态的效率.性能分析结果表明:该方案是安全且高效的.

隐私保护;动态群;公开审计;层次树;重签名

云存储是将存储资源放入云服务器中供用户存取的一种新兴方案,使用者可以在任意地点、任意时间通过任何联网方式在云端存取数据.数据共享技术使得同一群组的有效用户可以分享同一数据.然而,由于云端存在一些不可避免的数据损坏威胁,例如硬件的损坏等不可避免的因素以及为了自身利益故意删除数据的人为因素[1],因此对于存储在云端的数据需要对其进行完整性验证,为了缓解用户端的计算压力,通常选取一个半可信[2]的第三方代替用户进行数据完整性审计,同时用户隐私泄露的威胁问题也日益严重,尤其是在云存储数据进行共享时,信息的隐私保护更加需要得到保证[3-10].另外,现有的云安全存储系统中存在密钥分发和管理的不足[11].

目前存在的基于数据持有证明的动态完整性审计方案的主要研究方向分为支持群组动态和数据动态两种.数据动态即支持数据的有效更改、添加和删除,用户动态即支持群组用户的有效加入和撤销.为了支持有效的群组动态操作,很多方案[3-4,12-14]采用代理重签名对文件块进行操作,文献[13]提出了采用具有较强计算能力的代理者进行签名计算的审计协议,可以为设备节省大量的计算时间.文献[14]基于Merkle Hash树和双线性对技术提出了支持动态数据的完整性审计方案,并采用分层次索引结构的方法对数据块进行分割.为了支持动态群组,文献[15]将动态组密钥协议应用于成员之间的密钥共享.然而,支持群组动态的方案均使用广播加密进行密钥更新与分发,而广播加密存在密钥更新开销大和密钥分发不安全的问题.

文献[10]给出了既能保护用户身份隐私又能在一定条件下对用户身份进行追踪的公开审计方案.Wang等人在文献[3]中基于双线性对技术,使用代理重签名技术对签名更新进行处理,能够有效地支持群组动态,即支持群用户的加入和撤销,同时对用户的身份隐私进行了保护.但是发生用户撤销时,数据拥有者需要将新的群密钥分发给群中的每个成员,其开销较大.之后,文献[4]进一步基于计算Diffie-Hellman难题与离散对数难题和双线性对提出了支持用户撤销的方案.文献[16]提出了基于RSA假设的数据加密方案,并给出了基于身份的数据完整性审计协议.

大量数据传输任务会造成带宽严重不足,使得密钥分发不能得到保证,组播密钥可以解决这一问题.在组播中,组密钥是群组成员共享的密钥,动态群组允许群组成员随时加入或者离开,组密钥管理方案必须保证离开用户无法获取新的密钥.文献[17]总结了组播密钥树的5种方案,但是这些方案并不完全适用于云存储环境;文献[18]基于离散对数问题提出分散式组密钥管理方案;文献[3]采用广播加密技术对密钥分发进行保护,但用户撤销产生的密钥分发开销较大;文献[19]引入第三方实现密钥的更新和存储数据的审计,但是增加的第三方必须为可信方,因此一旦第三方出现信息窃取或者泄露问题将对用户带来不可预估的损失.

由此可见,目前存在的数据完整性审计方案中大都没有针对密钥分发和管理不足的现状进行改善[4-5,7-15],只有文献[3]提出将广播加密应用于密钥更新以及文献[15]将动态组密钥应用于移动用户群,但是2个方案都没有对密钥的分发与更新进行具体说明.而支持用户动态的公开审计方案[3-4,12-14]均采用集中式的组密钥管理协议,这种方法虽易于管理并且节约组内成员的密钥存储,但是该方法会出现“1影响N”的情况,即一个成员的退出会造成所有成员的密钥更新.目前存在的方案[2-15]中均通过假设安全的信道进行密钥分发,实际的网络环境中无法保证通信信道的绝对安全,这使得密钥更新的情况更为复杂.

针对密钥管理问题和身份隐私泄露问题,本文提出在云存储环境中采用基于逻辑密钥层次体系的方法对群密钥进行加密;将密钥树中除叶子节点密钥的其他密钥存储在密钥服务器中节省用户客户端的存储开销;将用户撤销时产生的新密钥处理开销由O(N)降至O(logN);用户撤销后,使用云服务器代替用户根据该密钥对云端数据进行重签名,节省了用户的计算开销;采用基于RSA假设的数据签名方案,使得公开审计开销低于基于双线性对的方案.

1 问题描述

1.1 系统模型

如图1所示,系统包含4个实体:密钥服务器、用户群组、云服务器和第三方审计者(third party auditor, TPA).

Fig. 1 System model.图1 系统模型

其中密钥生成中心是可信的,第三方审计者能够诚实地执行相关操作但是会对数据块内容感到好奇.用户群包含合法用户和撤销用户,撤销用户无法获取合法密钥,合法用户中包含普通用户和数据拥有者.用户群组与云服务器之间共享数据流,用户群与密钥服务器之间可以交换密钥,用户群内合法用户向TPA发送审计请求,TPA向云服务器发送挑战信息,云服务器针对挑战信息生成数据持有证明.

云服务器通过审计验证则说明其完整地存储了相关数据,否则说明存储在云端的数据被损坏.

1.2 安全模型

1) 隐私保护

群组共享数据的签名者的身份是重要的隐私信息.但在完整性审计过程中,半可信的公开验证者可以根据验证信息获取数据签名者的身份隐私以及数据信息.例如,通过进行多次完整性验证,公开验证者可以找出被多次修改的数据块,判断出具有较高价值的数据块进而进行攻击.因此,方案应该保证签名者身份的隐私保护.

2) 完整性验证

受硬件、软件以及人为的影响,云服务器可能在无意中修改甚至删除了共享数据;来自外部的攻击也会威胁数据完整性.除此之外,为了维护自身利益和信誉,云服务商可能会将数据损坏的事实对用户隐瞒.因此,需要公开验证者对云端数据完整性进行的有效审计.

3) 伪造攻击抵抗

对于验证者发起的挑战,只有在真实持有数据的情况下才能生成有效的签名.敌手在不具备挑战数据块的情况下无法产生能够通过验证的数据持有证明.

4) 可抗完全同谋

即使被撤销的用户将自己所持有的密钥联合起来也无法获取广播加密的私钥.

1.3 实现目标

为了实现支持动态群组的用户云端共享数据的完整性审计,支持同态认证的基于层次树的动态群组隐私保护公开审计方案HT-HAS需要实现6个目标:

1) 正确性.TPA能够正确地审计数据的完整性.

2) 身份隐私.TPA在审计过程中无法获取签名用户的相关信息.

3) 公开审计.TPA可以在不知道签名私钥的情况下对数据完整性进行审计.

4) 不可伪造性.只有正确持有挑战数据的实体能够生成有效的数据持有证明.

5) 高效性.即使在大规模的数据审计中,TPA产生的审计开销均与用户成员数量大小无关.

6) 支持动态群组.能够有效支持用户加入和撤销,撤销用户不再拥有签名以及访问数据的权限.

2 预备知识

2.1 RSA密码体系

假设N=pq,其中p和q为2个不等的素数,令φ(N)=(p-1)(q-1).选择满足条件gcd(b,φ(N))=1的随机数b(1

2.2 逻辑密钥层次体系

逻辑密钥层次体系密钥重建方案是基于树结构构造的,由密钥节点组成的二叉树,叶子节点2d+1-1=15代表用户持有节点,剩余节点代表密钥节点.根节点为群私钥,叶子节点为用户私钥,中间节点为辅助密钥节点,用于降低密钥更新开销.该方案中,每个用户拥有从对应节点至根节点唯一路径的所有密钥,即在高度为d的密钥树中用户可以获取d+1个密钥.用户根据叶子节点的密钥逐层获取上层密钥直至获取群私钥,群私钥用于加密文件生成签名.

如图2所示,对于一个d=3,n=8的二叉树,把每个叶子节点按照1,2,…,2d+1-1=15依次编号.8个用户依次命名为node8,node9,…,node15.组密钥为k(node1),通过路径node11→node5→node2→node1获得密钥k(node11),k(node5),k(node2),k(node1).逐层解密才能获得最后的组密钥k(node1).

Fig. 2 Key tree.图2 密钥树

2.3 同态认证

同态认证又名同态认证标签,因其允许公开验证者在无需下载完整数据的情况下验证数据完整性,被广泛应用于公开审计方案.同态认证拥有不可否认性、无块认证和不可锻造性[3,7-8].其中的无块认证和不可锻造性定义如下:

假设签名者的私钥和公钥的密钥对为(sk,pk),数据块m1∈p的签名为σ1,数据块m2∈p的签名为σ2.

1) 无块认证.给定数据块签名σ1和σ2,2个随机数x1,x2∈p和数据块m=x1m1+x2m2,公开验证者能够在未知数据块m1和m2的情况下对数据块m=x1m1+x2m2的签名的正确性进行判定.

2) 不可锻造性.给定数据块签名σ1和σ2,2个随机数x1,x2∈p,2个数据块m1,m2∈p和组合数据块m=x1m1+x2m2,不持有私钥的实体无法通过m1和m2线性组合对块m=x1m1+x2m2进行有效签名.

无块认证提高了签名认证的效率,因为验证者通过验证数据块的线性组合对数据块进行验证,无需得知数据块的具体内容.不可锻造性能够有效防止获取了部分签名的非法实体生成有效签名.

3 支持用户动态的数据完整性审计方案

目前存在的支持公开审计的签名算法很多都是基于双线性对的,HT-HAS基于RSA假设设计一个支持云端数据完整性验证的协议HT-HAS,并且采用密钥树结构实现密钥分发及管理,能够高效地支持动态用户群.用户撤销时的密钥更新开销小,而且无需用户对数据块进行重新签名.本节首先描述基于逻辑层次结构的密钥更新;然后描述基于RSA假设的适用于云存储的支持动态群组的数据完整性审计方案的基本操作.

3.1 基于逻辑层次体系的密钥更新

基于逻辑层次体系的密钥更新方案中的每个有效用户只使用初始密钥处理接收到的广播消息(广播信息通过不安全信道进行传输),所有接收用户的密钥不需要更新,因此用户不需要一直在线,只有在需要获取密钥的情况下申请根密钥.当出现群组用户多于叶子节点个数以及发生用户撤销的时候,密钥树需要进行更新.

3.1.1 用户加入

为了方便用户的加入,预先生成所有叶子节点存储在密钥服务器,即假设用户数目为N,叶子节点数为2logN+1,当新用户加入时,密钥服务器只需完成密钥分配,对其余用户密钥没有影响.当新用户加入前叶子节点已经分配完毕时,密钥树树高将加一,所有用户密钥发生更新.密钥树需要进行扩展,扩展后的树可以服务双倍的用户数群体.假设原密钥树能容纳4个用户,如图3所示,第5个用户user5加入后树高增加,原用户仍然可以根据原持有密钥进行新密钥的获取.

Fig. 3 The change of tree after a user joining.图3 用户加入后树的变化

具体算法实现为算法Join:

数据拥有者将新用户u′加入到广播列表中.如果广播组中成员数少于密钥树的叶子节点,数据拥有者将空闲节点的密钥k(u′)发送给新用户.否则,数据拥有者将调用KeyTree算法生成一棵树高+1新的密钥树.新的成员可以通过自己拥有的密钥与收到的广播信息获得群私钥,从而可以计算有效签名并可以对密文数据块进行解密获取明文.

3.1.2 用户撤销

假设树高为j,撤销用户为U,那么从撤销用户上一个节点直至根节点唯一路径上的j个节点对应的密钥需要进行更新操作.

ek(node10)(k′(node5)),ek(node4)(k′(node2)),

ek′(node5)(k′(node2)),ek(node3)(k′(node1)),

ek′(node2)(k′(node1)).

Fig. 4 User revoke.图4 用户撤销

在我们的方案中,用户只保存其对应的叶子节点密钥,故撤销操作对其他用户密钥更新没有影响.例如,用户11撤销之后,若用户10需要获取新的群私钥进行数据签名的操作,用户10仍然可以使用原有的密钥k(node10)解密ek(node10)(k′(node5)),从而获得k′(node5),然后使用k′(node5)获得k′(node2),最终使用获取k′(node1),即新的群私钥.

用户撤销的算法revoke具体实现如下:

令从叶子节点nodeU到根节点nodeR的唯一路径上的所有节点的集合为P(nodeU),那么集合P(nodeU){nodeU}中j个节点对应的密钥都需要重置.对于集合P(nodeU){nodeU}中的每个节点nodeX,令节点对应的新密钥为k′(nodeX),节点的兄弟节点为sib(·),节点的父节点为par(·).执行用户撤销操作进行部分密钥更新后,节点密钥更新过程为

ek(sib(nodeX))(k′(par(nodeX))),

ek′(nodeX)(k′(par(nodeX))),

nodeX∈P(nodeU){nodeU,nodeR},

ek(sib(nodeU))(k′(par(nodeU))).

3.2 HT-HAS的设计

HT-HAS方案由8个算法组成:Setup,KeyTree,KeyGen,Sign,Join,Revoke,ProofGen,ProofVerify.Setup算法用于生成系统公钥,包括RSA模数、Hash函数、伪随机函数和用于生成签名的随机数;KeyTree算法由密钥生成中心运行,用于将群私钥进行逐层加密产生用户私钥以及中间节点密钥;KeyGen算法用于生成群私钥以及分发用户密钥;Sign算法用于生成数据块签名;Join算法用于执行用户加入的密钥分发;Revoke算法用于撤销用户,同时数据拥有者生成重签名密钥并发送给云,云对所存数据块进行重签名;ProofGen算法中验证者向云服务发起验证挑战,云服务器根据挑战信息生成数据持有证明;ProofVerify算法中验证者针对持有证明进行验证.具体算法描述如下:

1) Setup

令H:{0,1}*→p是一个Hash函数,f:p×p→p是一个伪随机函数,将共享数据M分割成n块:M=(m1,m2,…,mn).群组中一共有m个用户成员.

① 密钥生成中心选取2个随机素数a和b生成RSA模数N=ab;

③ 发布系统参数mpk=(N,H,f,u).

2) KeyTree

假设用户数量为m满足2j-1

3) KeyGen

① 数据拥有者随机选择一个素数e,计算群私钥d:d=e-1modΦ(N)并发送给密钥生成中心;

② 运行KeyTree算法,然后将群中的每个成员ui加入到广播列表U中.

4) Sign

给定群私钥sk=d,共享数据块的密文mi∈p和块标识符idi,用户ui根据自己持有的密钥获取群私钥d并计算输出块的签名σi=(H(idi)umi)d.

5) Join

算法Join具体过程见3.1.1节所示.

6) Revoke

① 数据拥有者随机选择新的素数e′计算新的群私钥d′:d′=e′-1modΦ(N)并发送给密钥生成中心;

② 数据拥有者将撤销成员从广播列表中删除,运行算法KeyTree进行新的密钥分发,更新过程如revoke算法所示;

③ 数据拥有者根据旧群公钥e′和新的群私钥d′计算重签名密钥rk=de′∈p,并将重签名密钥发送给云,云服务器收到密钥之后对云中的块进行重签名=(H(idi)umi)d′.

7) ProofGen

TPA验证共享数据的完整性:

① 选取c个随机值生成集合I,I是集合{1,2,…,n}的子集;

② 选取随机数k∈p生成挑战集合Q={(i,vi)},其中vi=fk(i);

③ 将挑战chal={I,k}发送给云.

8) ProofVerify

TPA收到证明消息之后检查下列等式是否成立:

如果等式成立,系统输出“1”,证明云存储生成了正确的证明,即存储在云端的数据是完整的;否则输出“0”并退出.

4 安全性分析

4.1 公开审计

TPA可以在无需下载完整数据、无法获取加密私钥的情况下,对数据完整性进行审计.用户撤销之后,重签名之后的数据块也可以进行审计,审计的正确性和安全性证明如定理1和定理2所示.

定理1. TPA获取证明P={μ,σ}之后,能够正确地验证共享数据的完整性.

重签名之后的证明P={μ′,σ}也可根据如上证明同理可证.

定理2. 敌手Å在不知道数据块内容的情况下无法生成有效的签名.

因为μ′≠μ,定义Δμ=μ′-μ,所以(σ′σ)e=uΔμ.令u=geya,g∈p,a∈[1,2λ],那么(σ′σ)e=uΔμ=(geya)Δμ=(ge)ΔμyaΔμ,即((σ′σ)×g-Δμ)e=yaΔμ.因为a∈{1,2,…,2λ},可以得出使得gcd(e,aΔμ)=1的可能性为2-λ,即存在一个值x′使得x′e=y的概率为2-λ,可忽略.

因为RSA问题是难解的大素数问题,基于此,我们可以证明提出的方案是可靠的.即在不持有正确数据的情况下敌手Å无法伪造出正确的标签.

4.2 用户隐私

在方案中,所有有效群成员可以使用同一组密钥对数据块进行签名.根据生成的签名,验证者TPA无法区分出每个块的签名者.假设群的有效用户为n,那么TPA猜对签名成员的概率为1n.在云存储的环境下,群用户的数量是巨大的,即猜对成员的概率是可忽略的.因此,方案具有用户身份隐私保护的性质.

4.3 可抗完全同谋

所有撤销用户联合起来也无法获取根密钥或者解密广播信息.在HT-HAS中,只有有效用户通过自己所持私钥能对获取的正确的路径密钥进行逐层解密获取根密钥,其余成员都无法进行解密.每次成员撤销会进行根密钥更新,撤销的用户只能根据之前接收的消息获取过期密钥.具体安全证明可参照文献[20],故HT-HAS具有可抗完全同谋性.

4.4 撤销安全

撤销用户只有在重新加入新组的情况下才能获取新的群私钥,进而对数据块进行签名.具体来说,一个被撤销的用户无法通过原有私钥获取新的群私钥,也无法获取数据内容.用户useri被撤销之后,密钥树的根密钥即存储的密文数据块的解密密钥以及更改用户相关的节点密钥都将发生变换,该用户将无法解密广播密钥从而获取新的解密密钥,即用户useri即使获取数据块也无法解密新的数据块.其拥有的密钥包括旧的用户私钥k(nodeuseri)、旧的群私钥d,撤销用户之后,群私钥被更新为d′,存储在云端的数据也被重签名.

撤销用户如果试图通过新的签名,模数N获取新的群私钥d′是困难的,这是一个RSA困难问题.

4.5 同态认证

根据第2节对同态认证的定义,为了证明方案HT-HAS具有同态认证的性质,需要证明该方案具有无块认证和不可锻造性.

1) 无块验证.给定系统群公钥pk=e,2个随机数x1,x2∈p,2个数据块标识符id1,id2,2个数据块签名σ1,σ2,验证者可以验证块m=x1m1+x2m2的正确性,只要如下等式成立,即说明块m=x1m1+x2m2是正确的:

验证过程中,验证者不知道数据块m1和m2的内容.基于RSA的性质,以上等式的正确性可以通过如下过程证明:

((H(id1)×um1)dx1×(H(id2)×um2)dx2)emodN=

((H(id1)×um1)x1×(H(id2)×um2)x2)demodN=

H(id1)x1×H(id2)x2×um1x1×um2x2modN=

2) 不可锻造性.敌手如果不能获取群私钥sk=d,就不能通过结合2个随机数x1,x2∈p和2个数据块签名σ1,σ2,对数据块m=x1m1+x2m2计算出有效的签名σ.

假设敌手能够通过结合2个数据块签名σ1,σ2生成了一个有效的签名σ,那么我们可以得到:

σ=(H(id′)um)t.

那么,可以得到H(id′)=H(id1)x1H(id2)x2,也就是说,给定h=H(id1)x1H(id2)x2,可以很容易地找到符合H(id′)=h的块标识符id′,但是H(·)是一个单向函数,在单向函数中,根据映射值求原值是困难的,所以假设不成立.

所以,方案HT-HAS满足同态认证的无块认证和不可锻造性,即满足同态认证.

5 性能分析

在本节中,从动态群性能和审计性能对提出方案进行性能评估,并将结果与方案进行比较,方案实现了广播密钥更新以及身份隐私.在方案中,我们设置元素的大小为|p|=160 b,共享数据为n=106块,假设群包含k个用户.

其中,T为密钥分发开销,Ten表示加密开销,TRSA表示RSA运算开销,TExp和TMul分别表示在计算一个指数运算和乘法运算的时间,THash表示计算一个Hash函数的运算时间,Pair表示计算一个双线性对运算的时间,Tm表示模运算所花时间.

5.1 动态群的性能分析

在本方案中,为了支持有效的动态群组,我们使用动态广播加密的技术进行密钥分发.基于动态广播加密的安全性,非群内成员无法获取正确的群密钥以生成有效的签名.为了进一步提高用户动态操作的效率,我们使用基于树结构的逻辑密钥层次体系进行密钥处理.撤销用户时只需更新路径上节点的密钥值,由于每个用户只存储对应的节点密钥,其余用户仍可以根据其原有密钥获取新的组密钥,因此每次密钥更新的开销为Οlbn,而且注销用户的数量可以不受限制,安全性不受影响.当加入新成员后群成员个数仍小于叶子节点时,为新成员分配新密钥;否则在密钥树中新建一层叶子节点.

特别是当新用户加入和旧用户撤销同时发生时,基于逻辑层次体系的密钥树可以将2种操作同时进行,即将撤销节点进行重新计算之后分配给新用户.

基于层次树的密钥更新结构相对于文献[3,15]存储密钥空间较大,因为其需要存储中间节点,而文献[3,15]中的方案只要存储用户密钥,而且HT-HAS叶子节点个数多于用户个数,故采用密钥服务器进行存储.

5.2 动态群的性能对比

因为叶子节点密钥是预先计算好的,与其他方案没有比较的意义,故不做新成员加入开销的对比.当用户撤销,计算部分新节点密钥,密钥树中lbd个节点需要重新计算,其中包含新的群私钥以及新的群共享密钥的计算.并且云服务器需要对所有的块进行重签名,这个过程中不需要用户下载原数据或者对数据进行签名.对n个块进行重签名的开销为nTExp,总的撤销开销为Tm+TMul+nTExp.

文献[15]中使用了Hash运算和幂指数运算较多,故开销相当较大.在文献[3]中,重签名的计算开销与本文相同,新公钥的计算为TExp,还有一次加密运算,故撤销用户所花开销总和为kT+Ten+TExp+nTExp.k为群组中成员数量,在实际情况中会是一个比较大的数值;T为分发时间,如表1所示,在网络状况不理想的情况,我们方案会更佳.

Table 1 Performance on Dynamic Group

5.3 审计性能对比

方案的设计目标不仅是为了保护身份隐私以及支持动态群组,也包括对数据块完整性审计的高效性.已有研究[21]表明,当挑战数据块个数c=460时,检测率分别可以达到99%.

验证者验证一个审计证据的计算开销为cTHash+cTMul+(c+1)TExp+Tm.我们方案与支持隐私保护和群组动态的文献[3,15]的计算开销和通信开销进行对比.如表2所示,我们方案的总的计算开销合计为cTHash+(3c-1)TMul+(2c+1)TExp+2Tm,通信开销为(c+3)|p|.

Table 2 Performance on Public Auditing

文献[3]中方案采取基于双线性对的同态认证审计方案,由于双线性对运算时间比RSA操作时间久,所以在开销上远远多于本方案;因为文献[15]中方案的数据块进行了进一步的分割,故开销会远大于HT-HAS,为了形成相对公平的对比,我们将文献 [15]的方案稍微做了修改.本文基于随机函数的挑战大大降低了计算及通信开销.

5.4 实验结果对比

在本节中,为了评估方案的性能,我们使用PBC中的库函数对相关的密码学运算进行模拟,并将实验结果与文献[3,15]进行对比分析.所有的模拟均在Ubuntu系统中实现,处理器为Intel Core i7 3.40 GHz,内存为4 GB,测试1 000次以上.

表3给出了本文方案与文献[3,15]中方案的实验结果对比情况.文献[3]中方案其通信开销与计算开销均与群成员数量线性相关,而且即使成员数较少,开销仍然高于HT-HAS.可以从表2中得知我们方案在通信开销和计算开销上都优于文献[3,15]中的方案.

Table 3 Experimental Results Comparison

6 结束语

在本文中,我们利用逻辑密钥树和代理重签名技术,提出了一个支持云存储中群组成员动态的隐私保护公开审计方案.群中每个合法用户使用同一签名密钥对数据进行签名,因此验证者在审计过程中无法根据所获得的审计信息提取用户成员的信息,从而保护了用户的身份隐私.基于逻辑层次密钥体系的密钥树实现了安全高效的密钥更新,用户只保存叶子节点密钥,因此撤销用户与用户密钥更新是相互独立的,提高了方案的效率.HT-HAS考虑到带宽受限的情况并支持动态群组,尤其适用于移动用户的云存储数据共享.

[1]Feng Dengguo, Zhang Min, Zhang Yan, et al. Study on cloud computing security[J]. Journal of Software, 2011, 22(1): 71-83 (in Chinese)(冯登国, 张敏, 张妍, 等. 云计算安全研究[J]. 软件学报, 2011, 22(1): 71-83)

[2]Liu C, Ranjan R, Zhang X, et al. Public auditing for big data storage in cloud computing—A survey[C] //Proc of IEEE CSE 2013. Piscataway, NJ: IEEE, 2013: 1128-1135

[3]Wang B, Li H, Li M. Privacy-preserving public auditing for shared cloud data supporting group dynamics[C] //Proc of 2013 IEEE Int Conf on Communications (ICC). Piscataway, NJ: IEEE, 2013: 1946-1950

[4]Wang B, Li B, Li H. Panda: Public auditing for shared data with efficient user revocation in the cloud[J]. IEEE Trans on Services Computing, 2015, 8(1): 92-106

[5]Trueman T E, Narayanasamy P. Ensuring privacy and data freshness for public auditing of shared data in cloud[C] //Proc of IEEE CCEM 2015. Piscataway, NJ: IEEE, 2015: 22-27

[6]Li Hui, Sun Wenhai, Li Fenghua, et al. Secure and privacy-preserving data storage service in public cloud[J]. Journal of Computer Research and Development, 2014, 51(7): 1397-1409 (in Chinese)(李 晖, 孙文海, 李凤华, 等. 公共云存储服务数据安全及隐私保护技术综述[J]. 计算机研究与发展, 2014, 51(7): 1397-1409)

[7]Wang H. Identity-based distributed provable data possession in multicloud storage[J]. IEEE Trans on Services Computing, 2015, 8(2): 328-340

[8]Fu Anmin, Qin Ningyuan, Song Jianye, et al. Privacy-preserving public auditing for multiple managers shared data in the cloud[J]. Journal of Computer Research and Development, 2015, 52(10): 2353-2362 (in Chinese)(付安民, 秦宁元, 宋建业, 等. 云端多管理者群组共享数据中具有隐私保护的公开审计方案[J]. 计算机研究与发展, 2015, 52(10): 2353-2362)

[9]Kiraz M S, Sertkaya I, Uzunkol O. An efficient ID-based message recoverable privacy-preserving auditing scheme[C] //Proc of IEEE PST 2015. Piscataway, NJ: IEEE, 2015: 117-124

[10]Yang G, Yu J, Shen W, et al. Enabling public auditing for shared data in cloud storage supporting identity privacy and traceability[J]. Journal of Systems & Software, 2015, 113: 130-139

[11]Fu Yingxun, Luo Shengmei, Shu Jiwu. Survey of secure cloud storage system and key technologies[J]. Journal of Computer Research and Development, 2013, 50(1): 136-145 (in Chinese)(傅颖勋, 罗圣美, 舒继武. 安全云存储系统与关键技术综述[J]. 计算机研究与发展, 2013, 50(1): 136-145)

[12]Chen X, Li J, Huang X, et al. New publicly verifiable databases with efficient updates[J]. IEEE Trans on Dependable and Secure Computing, 2015, 12(5): 546-556

[13]Yan Li, Shi Runhua, Zhong Hong, et al. Integrity checking protocol with identity-based proxy signature in mobile cloud computing[J]. Journal of Communications, 2015, 36(10): 278-286 (in Chinese)(闫莉, 石润华, 仲红, 等. 移动云计算环境中基于身份代理签名的完整性检测协议[J]. 通信学报, 2015, 36(10): 278-286)

[14]Qin Zhiguang, Wang Shiyu, Zhao Yang, et al. An auditing protocol for data storage in cloud computing with data dynamics[J]. Journal of Computer Research and Development, 2015, 52(10): 2192-2199 (in Chinese)(秦志光, 王士雨, 赵洋, 等. 云存储服务的动态数据完整性审计方案[J]. 计算机研究与发展, 2015, 52(10): 2192-2199)

[15]Yu Y, Mu Y, Ni J, et al. Identity privacy-preserving public auditing with dynamic group for secure mobile cloud storage[G] //Network and System Security. Berlin: Springer, 2014: 28-40

[16]Yu Y, Xue L, Au M H, et al. Cloud data integrity checking with an identity-based auditing mechanism from RSA[J]. Future Generation Computer Systems, 2016, 62(9): 85-91

[17]Xu Mingwei, Dong Xianhu, Xu Ke. A survey of key management for multicast[J]. Journal of Software, 2004, 15(1): 141-150 (in Chinese) (徐明伟, 董晓虎, 徐恪. 组播密钥管理的研究进展[J]. 软件学报, 2004, 15(1): 141-150)

[18]Yang Jun, Zhou Xianwei. A two-level decentralized group key management scheme based on the discrete logarithm problem[J]. Journal of Electronics and Information, 2008, 30(6): 1457-1461 (in Chinese)(杨军, 周贤伟. 基于离散对数问题的两层分散式组密钥管理方案[J]. 电子与信息学报, 2008, 30(6): 1457-1461)

[19]Yu J, Ren K, Wang C. Enabling cloud storage auditing with verifiable outsourcing of key updates[J]. IEEE Trans on Information Forensics and Security, 2016, 11(6): 1362-1375

[20]Delerablée C, Paillier P, Pointcheval D. Fully collusion secure dynamic broadcast encryption with constant-size ciphertexts or decryption keys[C] //Proc of Int Conf on Pairing-Based Cryptography. Berlin: Springer, 2007: 39-59

[21]Ateniese G, Burns R, Curtmola R, et al. Provable data possession at untrusted stores[C] //Proc of the 14th ACM Conf on Computer and Communications Security. New York: ACM, 2007: 598-609

Huang Longxia, born in 1991. PhD candidate. Her main research interests include privacy-preserving and cloud storage security.

Zhang Gongxuan, born in 1961. PhD, professor and PhD supervisor. His main research interests include trusted computing and system security, cloud computing technology and multi-core embedded technology.

Fu Anmin, born in 1981. PhD, associate professor and PhD supervisor. Member of China Computer Federation. His main research interests include cryptography and privacy preserving.

Privacy-Preserving Public Auditing for Dynamic Group Based on Hierarchical Tree

Huang Longxia, Zhang Gongxuan, and Fu Anmin

(SchoolofComputerScienceandEngineering,NanjingUniversityofScienceandTechnology,Nanjing210094)

As the rapid development of cloud storage, it is important to protect the security of shared data in cloud. Therefore, it is necessary to protect users’ privacy and verify the integrity of data efficiently during the data sharing. As the existing schemes consider little about the management and secure distribution of key, based on hierarchy tree and proxy re-signature, a privacy-preserving public auditing scheme which supports dynamic group in cloud storage is supposed. The proposed scheme firstly uses logical hierarchy key tree to establish and distribute keys, and a key server is utilized to store keys. The revocation of user is independent from users’ obtaining new group secret key as each user only stores the leaf node key. When a user revokes, the valid user can obtain the new group secret key with their original keys. Therefore, the scheme is more efficient for dynamic group. The security analysis and performance analysis show that the scheme is secure and efficient.

privacy preserving; dynamic group; public auditing; hierarchical tree; re-signature

2016-06-15;

2016-08-10

国家自然科学基金项目(61272420,61572255);江苏省自然科学基金项目(BK20141404);中央高校基本科研业务费专项资金项目(30915011322)

付安民(fuam@njust.edu.cn)

TP393

This work was supported by the National Natural Science Foundation of China (61272420,61572255), the Natural Science Foundation of Jiangsu Province of China (BK20141404), and the Fundamental Research Funds for the Central Universities (30915011322).

猜你喜欢
私钥群组密钥
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
幻中邂逅之金色密钥
基于改进ECC 算法的网络信息私钥变换优化方法
密码系统中密钥的状态与保护*
Boids算法在Unity3D开发平台中模拟生物群组行为中的应用研究
TPM 2.0密钥迁移协议研究
一种基于虚拟私钥的OpenSSL与CSP交互方案
一种对称密钥的密钥管理方法及系统
群组聊天业务在IMS客户端的设计与实现