支持关键词隐私保护的密文共享系统
2020-12-01邓安远史姣丽黄定何凯
邓安远 史姣丽 黄定 何凯
摘 要:云环境中,安全事件的频繁发生加剧了用户对个人爱好、阅读行为模式等隐私安全的担心,引發了用户对云服务的信任危机。为解决用户提交搜索关键字时隐私易泄露问题,提出一个支持关键词隐私保护的密文共享系统(KPP-CSS)。该系统在支持访问结构隐私保护的基础上,基于双线性映射理论,在DBDH困难性假设下,可进一步隐藏用户查询密文时提交的搜索关键词,实现更完全的隐私安全保护。性能分析与仿真结果表明,该系统安全可行。
关键词:密文共享系统;属性加密;隐私保护;访问结构隐藏;关键词隐藏
DOI:10. 11907/rjdk. 201951
中图分类号:TP309.7 文献标识码:A 文章编号:1672-7800(2020)010-0228-05
Abstract:In cloud environment, the frequent occurrence of security incidents compels users to worry about their privacy security concerning personal hobbies, reading behavior pattern and so on. Based on the bilinear map theory, we propose a ciphertext sharing system supporting keywords privacy protection(KPP-CSS). It supports keywords privacy protection and can avoid privacy leak in submitting search keywords by users. Under the DBDH difficult assumption, the KPP-CSS realizes privacy protection of access structure and keywords when data users want to search ciphertexts. Thus the KPP-CSS achieves more complete privacy protection. Security analyses indicate that the KPP-CSS is secure, and performance analyses and simulation indicate that it is feasible.
Key Words:ciphertext sharing system; attribute based encryption; privacy protection;access structure hiding; keywords hiding
0 引言
云计算在提供方便、快捷服务的同时,也给开放、复杂的网络环境下用户隐私安全带来了巨大挑战。云信息共享平台开放性越强,用户权限越大[1]。在2014年iCloud信息泄露与2015年互联网平台铜掌柜用户隐私数据泄露事件中,受害用户数高达60万;2017年58同城全国简历被恶意窃取。安全事件的不断发生加剧了用户对隐私泄露的担心,也引发了用户对云存储服务的信任危机。
文献[2]结合RSA、SHA-256、Blowfish等算法优点,针对医学信息特点,提出一种新的快速压缩加密算法;文献[3]基于属性加密(Attribute Based Encryption,ABE)算法,在访问策略中使用与门、非门和通配符,隐藏每个属性具体取值,在合数阶群理论上实现了策略隐藏的密文共享方案;文献[4]在考虑每个属性可能取值的基础上,增加了每个属性可能的状态描述,丰富了访问结构,在素数阶群理论上实现了外包数据的完全隐藏策略;文献[5]提出可并行检索的哈希索引结构;关键词语义关系库构建方法及具体的隐私密文数据搜索算法。现有研究主要关注访问结构的隐私保护,但每次用户向云服务器申请密文时,其搜索关键词仍暴露了密文、发布者等用户隐私信息。
本文设计一个支持关键词隐私保护的密文共享系统,不仅支持访问结构隐私保护,当用户作为数据使用者查询密文时,还可隐藏搜索关键词,实现更完全的隐私安全保护。对方案安全性进行分析论述和仿真,结果表明,该系统具有可行性。
1 相关研究
属性加密用于云存储数据访问控制的研究已积累丰富成果,支持隐私保护的属性加密访问控制方法也备受关注。苗田田等[6]针对外包电子医疗记录的安全性和病人隐私性,提出一种适用于电子医疗环境中支持用户隐私保护的访问控制方案,该方案利用属性加密保证数据机密性,利用不经意传输实现匿名;罗恩韬等[7]针对移动医疗计算高峰时的服务瓶颈,提出医生授权代理,由代理处理用户数据、保证用户隐私,同时对代理的工作进行回溯追踪;郑芳等[8]提出一种利用属性加密进行身份认证的隐私保护方案,引入移动APP作为密钥生成中心,以指纹多个特征提取模板与其它特征作为属性,服务器端在不知道用户指纹信息的前提下,根据用户输入的特征解密,以此证明该账号和密码属于用户本人;刘胜杰等[9]针对社交网络隐私安全和属性更新低效的问题,提出具有策略隐藏和属性撤销的属性基加密方案,通过分解密钥产生方式降低用户端计算量,引入合数阶双线性群,实现访问策略隐藏;Tang等[10]针对移动众包中的隐私保护问题,提出双赢激励下的隐私保护任务分解推荐方案,该方案将ABE分为预计算和线上计算,对计算任务和计算参与者以双赢方式进行偶匹配。
2 理论基础
2.1 双线性映射
设p和q是素数,[G0]和[GT]分别是p阶和q阶的乘法循环群,称映射[e:G0×G0→GT]为一个双线性对,且映射e满足两个性质:①双线性。对任意[a,b∈Zp]和[v,w∈G0]都有:[e(va,wb)=e(v,w)ab]。对任意[v1,v2,w∈G0],有[e(v1v2,w)=e(v1,w)e(v2,w)];②可计算性。存在有效的多项式时间算法对任意的[v,w∈G0]计算[e(v,w)]的值。
2.2 DBDH假设
设G是素数阶的循环群,其中g为G的生成元,然后选择[x,y,z,u∈Zp]随机元素,根据DBDH假设可知:在具有不能忽视的优势条件下,多项式时间算法无法区分以下两个元组:元组A=[(g,gx,gy,gu,e(g,g)xyu)],元组B=[(g,gx,gy,gu,] [e(g,g)z)]。
3 模型构建
3.1 KPP-CSS系统模型
KPP-CSS系统模型由4个部分构成。
(1)数据拥有者(Owner)。可使用公开的公钥(PK)对明文(M)进行加密成密文(C),同时也能生成关键词集合W的索引I(W),并将密文和索引上传至云服务器储存起来;还可为检索密文设置用户属性访问控制列表,即只有用户属性满足时才可访问到密文,不满足时便不可访问。
(2)用户(User)。拥有关于用户本身属性的访问权限及属性相关私钥(SK,Secret Key),私钥由可信授权中心颁发,并且可使用私钥和关键词生成搜索陷门(Trapdoor),用户可向云服务器发送检索请求,如果用户属性满足访问控制要求,则用户可下载在云服务器中检索的数据,并在用户端利用自己的私钥SK进行密文(C)解密。
(3)授权中心(AA)。授权中心不同于云服务器,它是唯一可信的第三方。授权中心负责生成系统的公共参数(Public Parameters,PP),生成系统公钥(Public Key,PK)和主密钥(Master Key,MK),其中公钥公开,主密钥保留在授权中心。授权中心还需根据用户提供的属性信息和主密钥(MK)生成私钥并分发给用户。此外,授权中心还需要生成用户的陷门验证参数Pu并发给用户。
(4)云服务器(Cloud server,CS)。提供数据存储服务,为数据拥有者储存密文以及关键词索引,同时也会根据用户检索请求将用户检索相应加密数据提交给用户,主要是根据用户提供的搜索陷门(Trapdoor)及陷门验证参数Pu。云服务器作为不完全可信的第三方,在通信过程中有试图窃取用户数据隐私的可能。
3.2 KPP-CSS系统安全需求
(1)用戶数据机密性。云服务器存储加密数据,云端数据只有满足访问结构的用户方可访问,那些没有合法权限的用户无法获得云端密文。
(2)隐藏的访问结构。为了保护用户隐私,针对访问结构进行隐藏处理,访问策略对所有用户都完全隐藏,即便用户属性满足访问策略也无法猜出隐藏的访问策略。
(3)搜索关键词隐藏。在用户使用关键词检索密文时,用户使用的关键词不会泄露用户隐私,即不能让他人知晓用户搜索的关键词内容。
(4)抵抗共谋。单个用户使用自己的密钥无法解密密文,但是多个用户可以通过各自密钥信息进行组合,然后成功解密密文,这种共谋是不允许的。
4 KPP-CSS系统构造
KPP-CSS系统是在文献[3]的基础上增加了关键词隐私保护,完整的系统框架如图2所示。
KPP-CSS系统由初始化、密钥分发、加密、解密4个阶段构成。为体现系统完整性和可读性,本文延续文献[3]的变量命名规则。
4.1 初始化
授权中心运行算法Setup完成初始化。
其中,[n∈ZN]是属性集的阶。
4.2 密钥分发
授权中心运行算法KeyGen完成密钥分发。
4.3 加密数据
数据拥有者运行算法EncryptData加密数据,并建立索引I(W)。
4.4 解密数据
用户生成检索陷门Trapdoor,向云服务器提交Trapdoor及自己的Pu,云服务器修正[Y=Y'?e(gqw,gqPu)θ],然后运行Match算法进行匹配,若成功则发送密文给用户,用户运行算法DecryptData读取数据。
5 证明与分析
5.1 Match算法正确性证明
5.2 安全性分析
为实现关键词隐私保护,检索关键词时以检索陷门形式进行检索,故不会在检索过程中泄露关键词,其次在在云服务器存储的也仅是密文(C)和关键词索引I(W),且云服务器也不可能通过密文猜测出用户检索的关键词。此外,所有暴露在外的信息有陷门验证参数(Pu)、检索陷门(Trapdoor)、密文(C)、关键词索引I(W)。即使拥有Pu以及Trapdoor,也只能通过云服务器获得密文并且两者不能显示关键词信息,同样密文和索引也不能显示关键词信息。故用户检索隐私是安全的。
5.3 计算量分析
本文只对方案中生成元的指数运算及双线性对运算进行统计分析,忽略运算量相对较低的运算。
计算量分析如表1所示。其中,Exp表示一次生成元的指数运算,而Pair表示一次双线性对运算,|S|表示用户私钥属性集的阶,|T|表示密文访问策略中属性集的阶。选取文献 [3]作为本文的参照原因在于:本文方案KPP-CSS是在其基础上进行关键词隐私保护;而选择文献[11]作为参照的原因是该方案是偏重于属性撤销的典型方案。
表1分析结果表明:①本文方案比文献 [3]在数据加密阶段计算量更大,这是因为本文方案多了1个建立索引的步骤,该步骤花费的计算开销为4Exp+Pair;②本文方案和文献 [3]比文献[11]在KeyGen和EncryptData阶段计算量更大,这是因为本文方案和文献[3]均隐藏了访问策略,而文献[11]没有;③本文方案解密阶段比文献[3]多花费了2Exp的计算代价,这是因为本文为隐藏关键词而产生了陷门计算量。
5.4 存储开销分析
与其它方案相同,本文只对方案中的群元素所需存储量进行统计分析,忽略随机整数存储量。分析结果如表2所示。其中,[na,k]表示[AAk]管理的属性数量,[na,k,ut]表示[AAk]为用户[ut]发行的属性数量,[nut,k]表示[AAk]管理的用户数量,[ηi]表示文献[11]中用户路径[pathGi]与用户组集合[nodeGi]交集中结点的数量,n表示系统中属性集的阶。
6 仿真
在数据加密和解密过程中,用户端计算代价仿真如图3所示。仿真实验运行平台在VMware虚拟机上运行Ubuntu操作系统,单核处理器,RAM 1G,对运算函数库采用PBC(Pairing Based Cryptography Library),大整数数据库采用GMP(The GNU MP Bignum Library)。椭圆曲线选择
综合分析图3(彩图扫描OSID二维码可见)的仿真结果可知,本文方案与文献[3]、文献 [11]在加密、解密阶段的计算量同在一个数量级上。
图3(a)表明,本文方案与文献 [3]相比,为进行关键词隐私保护而在加密阶段产生索引的计算代价并未与属性数量呈线性关系,是常数量,且远小于加密数据的计算代价。
图3(b)、3(c)表明,与文献[3]相同,本文方案解密代价也与属性数量呈线性关系,不同的是本文方案增加了两个计算代价:云端修正密文计算量是3Exp+Pair,密文数据陷门与索引匹配的计算量是2Exp+Pair,此二者计算代价也未与属性数量呈线性关系,是常数量,且远小于解密密文计算代价。
7 结语
本文在合数阶群理论及文献[3]的基础上,提出了一个支持关键词隐私保护的密文共享系统KPP-CSS,在实现訪问结构隐私保护的基础上,实现了用户密文搜索时搜索关键词隐藏,以此实现了更完全的隐私保护。
下一步研究方向是兼顾系统可扩展性。KPP-CSS虽然实现了更完全的隐私保护,但系统仅适合于小规模的密文数据共享,因为方案属性集必须在初始化阶段定义,限制了系统规模,下一步研究重点是将属性集定义从初始化阶段转移到后续阶段。
参考文献:
[1] 周琳娜,刘丹. 网络信息安全问题及防护策略[J]. 软件导刊, 2019,18(10):166-8.
[2] 刘浩然. 一种安全性高的医疗大数据隐私保护模型[J]. 软件导刊,2019,18(8):200-203.
[3] 江泽涛,赵嘉旭,吴辉. 策略隐藏的CP_ABE访问控制方案 [J]. 计算机工程与设计,2017,38(6):1429-934.
[4] 刘雪艳,郑等凤. 基于素数群完全隐藏访问结构的CP_ABE方案 [J]. 计算机工程,2016,42(10):140-145.
[5] 刘洋. 云存储中隐私保护密文数据检索算法的研究 [D]. 北京:华北电力大学,2019.
[6] 苗田田,杨惠杰,沈剑. 电子医疗环境中支持用户隐私保护的访问控制方案[J]. 网络空间安全,2019,10(10): 16-22.
[7] 罗恩韬,段国云,周雷,等. 移动医疗中一种匿名代理可追踪隐私保护方案[J]. 计算机研究与发展,2020,57(5):1070-1079.
[8] 郑芳,冯丽萍,李平珍,等. 一种利用属性加密进行身份认证的隐私保护方案[J]. 网络安全技术与应用,2020,230(2): 33-36.
[9] 刘胜杰,王静. 云环境下SNS隐私保护方案[J]. 计算机科学,2019,46(2):133-138.
[10] TANG W J,ZHANG K,REN J, et al. Privacy-preserving task recommendation with win-win incentives for mobile crowdsourcing [J]. Information Sciences,2020,527:477-492.
[11] LI J G, YAO W, HAN J G, et al. User collusion avoidance CP-ABE with efficient attribute revocation for cloud storage[J]. IEEE Systems Journal, 2018, 12(2): 1767-1777.
(责任编辑:江 艳)