文献标识码: A
DOI:10.16157/j.issn.0258-7998.2016.11.026
中文引用格式: 郑志恒,张敏情,戴晓明,等. 高效的基于代理重加密的云存储访问控制方案[J].电子技术应用,2016,42(11):99-101,105.
英文引用格式: Zheng Zhiheng,Zhang Minqing,Dai Xiaoming,et al. Access control with high efficiency scheme for cloud storage based on proxy re-encryption[J].Application of Electronic Technique,2016,42(11):99-101,105.
0 引言
云计算作为一种新兴的服务模式,将网络中大量不同类型的资源整合起来协同工作,为用户提供计算和存储等功能,极大地提高了资源利用率,降低了用户成本[1]。但由于云计算的数据处于不可控域中,这一模式的应用必然会产生许多信息安全问题,其中一个重要的问题就是如何保护云中用户数据的机密性和实现数据合法高效的共享访问[2]。
文献[3]针对云计算中数据不是存储在本地而是以密文形式托管到“云端”,导致已有的公平交换协议不能很好适应云环境这一问题,构造了一个可在随机预言模型下证明安全的匿名条件的代理重加密方案。文献[4]在基于属性的加密基础上提出了一种有效的云端重加密方法,将访问控制策略变更导致的重加密过程转移到云端执行,实现高效的动态密文访问控制。文献[5]提出了一种可抗选择密文攻击的分类代理重加密方案,实现了一个基于 Hadoop云存储平台的云端数据共享原型系统,提高了数据共享的高效性和安全性。
本文在文献[6]Wa-IBE方案基础上提出了一种适合云存储访问控制的基于身份的代理重加密方案,并对其安全性进行了证明。本文方案将重加密密钥分成两个部分,一部分用于对原始密文的重加密,另一部分作为授权解密密文。发送者在与接收者交互过程中,只需要将授权解密密文给接收者,接收者即可利用自己的私钥和授权解密密文解密重加密密文得到明文。与其他方案相比,本文方案对不同用户不用完全重新生成重加密密钥,只需要部分计算,计算复杂度较低,同时重加密密文长度不会随着用户的增长呈线性增长,密文的主要部分交由云存储服务器存储管理,减少了发送者与多接收者之间信道的通信量,降低了存储的空间。
1 本文方案
1.1 方案介绍
传统的基于代理重加密的云存储访问控制方案,一旦数据经过云服务器重加密后,数据拥有者就失去了对数据的控制力,代理的权限过大,而且由于重加密密钥的计算量过大导致数据共享的效率不高。本文方案将数据拥有者将重加密密钥分成两个部分,一部分重加密云中的原始数据,另一部分作为授权解密密文,发送者确定接收者身份后,直接发送给接收者。接收者利用自己私钥、云中下载的重加密密文、授权解密密文即可得到明文,如图1所示。
1.2 本文所提方案
(1)初始化(Setup)
从方案中可以看出,只要接收者可以解密R得到k就可以解密重加密密文得到明文。因此,在面对多个接收者的情况时,发送者只需要根据不同接收者的身份信息简单计算R,即可达到共享密文的目的,而不用完全重新计算重加密密钥,大大提高了效率。同时,密文的长度随着重加密次数的增长基本保持不变,节省了存储空间。
2 安全性分析
由于本方案是基于Wa-IBE方案提出的,下面证明如果Wa-IBE方案是IND-ID-CPA安全的,那么本方案满足IND-PrID-CPA安全。对于本方案假定的攻击者A,构造一个算法B去攻击Wa-IBE方案。这个算法保持一个三元组(β,v1,v2)的列表,其中β∈{0,1},v1和v2代表两个身份信息。必须针对身份信息v去询问Wa-IBE方案的私钥生成预言机来回答A的RKEXTRACT(v,·)预言机询问。如果A进行了RKEXTRACT(v,·)询问,并发送v作为挑战身份,那么B得不到Wa-IBE方案的挑战密文,B必定失败。因此当A进行RKEXTRACT(v,·)询问时,B将身份信息v发送给Wa-IBE方案的私钥生成预言机或者随机生成一个重加密密钥。如果B返回正确的密钥,令β=1,否则β=0。
定理1 假设攻击者A在游戏ExpA,IND-PrID-CPA具有ε的优势获胜。那么算法B至少具有以下优势攻破Wa-IBE方案。qE是攻击者A询问私钥预言机的最大次数,算法B的运行时间是O(time(A))。
证明:设A为攻击本方案的攻击者,构造一个攻击Wa-IBE方案的算法B。输入方案Wa-IBE的公共参数μ,B按以下步骤运行。注意B保持一个三元组的列表(β,v1,v2)∈{0,1}×{0,1}n×{0,1}n。*代表通配符。假设一个输入只能询问一次预言机。
(1)初始化
将公共参数μ发送给A。
(2)询问阶段1
攻击者A可以做出以下询问:
(a)私钥提取询问(Extract):B首先对β做出一个随机选择,如果β=0,或者(0,v,*)或(0,*,v)已经出现在表里,B就随机输出一个比特或者终止操作。否则,B询问Wa-IBE方案的私钥生成预言机来获得私钥dv,同时将dv返回给A,并将(1,v,v)记录在表里。
(3)挑战阶段
A发送(v*,m0,m1)给B,如果对于任意的v′,在表中都有(1,v*,v′)存在,B就随机输出一个比特或者终止操作。否则,发出相同的挑战(v*,m0,m1)给Wa-IBE方案的挑战者。当Wa-IBE方案的挑战者返回密文C*,B将C*发送给A。
(4)询问阶段2
(5)猜测阶段
当A输出对b的猜测b′,B也输出b′。
可以看出如果B在游戏过程中不终止,攻击者A所处的模拟环境和真实的攻击环境是大致相同的,除了当β=0时。稍后将在引理1中证明A对随机生成的密钥具有不可区分性来说明这个情况。因此,只需要计算B终止游戏的可能性。假设A总共进行了qE次私钥询问。B在询问阶段1或2 中不终止游戏的可能性为。在挑战阶段不终止游戏的可能性为1-δ。因此,B不终止游戏的可能性是
(1-δ),这个值最大为δopt=1-1/(qE+1)。所以B不终止游戏的可能性最少是1/e(1+qE)。因此B的优势至少是ε/e(1+qE)。
引理 1 如果Wa-IBE方案是IND-ID-CPA安全的,那么证明定理1中的模拟算法具有可计算的不可区分性。
证明:除了当β=0时,证明定理1中的模拟环境和真实环境是一样的。因此,只需要考虑对随机生成的重加密密钥(x,y,Encrypt(μ,v2,z))和真实的密钥的不可区分性。由于(x,y)必须是(d1K-1,d2)的一种可用形式,K∈G,所以这个问题就等同于区别z∈R{0,1}l和k加密的可区分性。因此引理1得证。
综上所述,本方案满足IND-PrID-CPA安全。
3 效率分析
本文通过存储过程中计算复杂度和存储开销对方案的效率进行分析。首先令Npar表示双线性运算,Nexp1和Nexp2分别代表群G1和G2中的指数运算;群G1中元素的长度为l1 bit,群G2中元素的长度为l2 bit,Zp中元素的长度为l3 bit。在云存储应用环境中,大都是一个发送者对n个接收者的情形,表1是文献[7]方案与本文方案在计算代价上的比较,表2是文献[7]方案与本文方案在通信带宽上的比较。
对比分析可知,在云存储环境一个发送者对n个接收者的情形下,本文方案在计算代价和通信带宽方面较文献[7]方案有明显优势。本文没有讨论权限撤销的问题,这是非必要的,因为每次的授权解密密文是不同的。发送者通过对授权解密密文的控制,很好地实现了数据的授权和撤销。
4 结束语
本文提出了一种适合云存储访问控制的基于身份的代理重加密方案,并对其进行了安全性证明,结果表明,本文方案基本能满足云环境下数据共享的安全性要求。但是在面对移动云计算的环境下,方案还有很大的缺陷,下一步将继续完善方案,使之能适应移动终端的需要。
参考文献
[1] 张婧,陈克非,吕林,等.云存储中的用户数据安全[J].计算机科学与探索,2013,7(12):1093-1103.
[2] 赵丽丽.代理重加密技术在云计算中的应用[J].信息安全与通信保密,2012,3(11):135-137.
[3] 蓝才会,王彩芬.构造适合云的公平交换协议[J].通信学报,2013,34(3):111-11.
[4] 洪澄,张敏,冯登国.面向云存储的高效动态密文访问控制方法[J].通信学报,2011,(32)7:125-132.
[5] 庞岩梅,李晓东,叶思水.基于代理重加密的云数据共享机制的研究与实现[J].南京理工大学学报,2015,39(1):84-88.
[6] WATERS B.Efficient identity-based encryption without random oracles[C].In Proceedings of Advances in Cryptology-EUROCRYPT′05,Springer,2005,3494:114-127.
[7] LIANG K,HUANG Q,SCHLEGEL R,et al.A conditional proxy broadcast re-encryption scheme supporting timed-release[C].Proc.ISPEC 2013,LNCS 7863,Springer,Heidelberg,2013:132-146.