高效可撤销的雾协同云访问控制方案

2022-07-13 01:51枭,王峥,李
计算机工程与应用 2022年13期
关键词:加解密密文密钥

孙 枭,王 峥,李 玲

太原理工大学 信息与计算机学院,山西 晋中 030600

第5 代移动通信技术(5th generation mobile networks,5G)凭借较高的数据传输速率,使得雾计算(fog computing)在智慧交通、智能家居等对于时延较为敏感的应用领域成为可能,并成为重要的研究方向[1-2]。与云计算不同,雾计算由性能相对较弱、物理位置分散的各类可联网设备组成[3]。在采用传统的访问控制方式时,雾计算复杂的分布式环境使其安全性受到了严重的挑战[4]。因此,雾计算中基于密码学方法的访问控制技术仍然是近年来信息安全领域的研究热点[5]。

2007 年,Bethencourt 等人[6]提出了密文策略属性加密(ciphertext-policy attribute-based encryption,CP-ABE),将解密规则嵌入到加密算法中,在实现了细粒度访问控制的同时,保证了数据的机密性,因此成为了云雾存储系统中较为常用的技术。然而,用户与属性通常是多对多的关系,用户与属性的撤销,都可能影响到系统中具有相同属性的其他用户,构造撤销机制的难度较高。现有的方案大多需要频繁地更新密钥与重加密密文,撤销效率低下,如何高效地实现用户与属性撤销是亟待解决的问题。

Pirretti等人[7]通过在用户密钥中嵌入过期时间属性进而实现了用户撤销,但该方法难以进行即时撤销。唐忠原等人[8]在密文中建立了用户撤销列表,将用户身份标识嵌入到列表中进行用户撤销,无形中增加了通信成本,导致开销过大,难以适应复杂的应用环境。同时,该方案需要借助云服务器频繁地维护撤销列表,系统效率较低。陈红松等人[9]利用可信中心对撤销列表进行维护,通过生成的代理重密钥将未撤销用户的密钥进行更新并重加密密文。但撤销操作发生后,该方案中所有未撤销用户的密钥全部需要更新,灵活性较差。Cui 等人[10]使用不可信的服务器进行用户撤销,服务器必须一直在线,易导致单点故障和服务器瓶颈等问题。Jung等人[11]和Wan等人[12]提出的方案都无法更新部分密钥,一旦用户获得部分密钥,即使在撤销后仍可解密密文。李继国等人[13]的用户撤销方案中隐藏了访问结构,但是计算相对复杂。

在实际应用中,用户与属性的关系更加复杂。因此,大量的研究致力于构造细粒度的属性撤销机制。Ibraimi等人[14]利用可信中心维护属性撤销列表,首次实现了属性的即时撤销。Hur 等人[15]利用KEK 树和属性组管理授权用户,通过更新KEK 实现了完全细粒度的属性撤销,但密钥维护成本较高,且无法抵抗共谋攻击。Li 等人[16]将上述方案中的用户密钥与属性组密钥进行绑定,使方案能够抵抗共谋攻击,但密钥更新效率较低。Li等人[17]改进了密钥更新的计算方式,效率有所提高,但KEK树的结点数仍随用户数量线性增加,进而导致用户路径密钥增长,并不适用于具有海量用户的应用场景。强衡畅等人[18]引入中国剩余定理,使得KEK树的解密时间降为常数阶,但仍需要重加密密文和更新群密钥。宋可等人[19]利用代理重加密技术与版本号标识法实现属性撤销,但每次撤销都需更新与版本号相关的所有密钥与密文。Wang等人[20]提出了一种外包的支持策略隐藏与属性撤销的方案,但该方案中密钥长度较长,存储开销较大。

针对上述问题,本文提出了一种高效可撤销的雾协同云访问控制方案。该方案通过RSA密钥管理机制进行属性认证,简化了密钥更新工作且无需更新密文,实现了高效的即时撤销;固定了密钥与密文的长度,降低了用户端的存储与通信开销;实现了高效的加解密外包,减轻了用户端的计算负担。

1 相关知识

1.1 “与”门访问结构

1.2 密钥管理

1.3 aMSE-DDH难题

采用aMSE-DDH难题[21]来证明本文方案的安全性。

构造双线性配对群G={G1,G2,GT,ρ,e} ,g0和h0分别是G1和G2的生成元,f(x)和g(x)是群Zρ[x]上互质的多项式。

若对任意t多项式时间攻击者,解决此难题的最大优势是ε,那么称它是(t,ε)困难的。

2 系统描述与方案构造

2.1 系统描述

本文方案涉及5个不同的实体,分别是可信授权机构、云服务器、雾节点、数据拥有者和数据用户。它们之间的关系如图1所示。

图1 系统模型Fig.1 System model

(1)可信授权机构(trusted authority,TA):TA 完全可信,全局属性集合由它管理。TA负责系统建立、密钥生成和属性撤销。

(2)云服务器(cloud server,CS):CS 是半可信的,可能存在数据泄露的风险,即它奉命执行任务但可能窥探数据中的隐私。CS 负责存储DO 上传的数据,并为DU提供访问数据的服务。

(3)雾节点(fog node,FN):FN 是半可信的,每个FN 都与CS 相连,它们是DO、DU 与CS 通信的桥梁。FN承担了部分加、解密工作。

(4)数据拥有者(data owner,DO):DO 是想要将数据上传至CS 存储的一方。DO 制定访问策略规定了访问者的属性,并将部分密文完全加密后上传。

(5)数据用户(data user,DU):DU是想要访问存储在CS中数据的一方。只有自身属性满足访问策略,FN才能将密文部分解密,DU进而才能够获得数据。

2.2 方案构造

本文方案包括6 个阶段,分别是系统建立、数据加密、密钥生成、数据解密、用户撤销、属性撤销。

2.2.1 系统建立

Setup(λ,U)→(uid,PK,MSK):TA执行该算法,输入安全参数λ和全局属性集合U={A1,A2,…,An},输出身份标识uid,公共参数PK和主密钥MSK。具体步骤如下:

(3)构造双线性配对群G={G1,G2,GT,ρ,e},并计算

(3)生成部分加密密文CT={U,V,eP},并发送给DO。

Encrypt.DO(PK,CT,M,k)→CT′:DO 执行该算法,输入公共参数PK,部分加密密文CT,待加密的明文消息M和对称密钥k,输出密文CT′。具体步骤如下:

3 安全性分析

4 性能评估

4.1 理论分析

4.1.1 功能比较

符号的定义如表1所示。

表1 符号定义Table 1 Symbol definition

表2 将相关方案的功能进行比较。文献[8]实现了密钥与密文定长且支持用户撤销,但无任何外包能力,且不支持属性撤销。文献[17]较文献[8]增加了属性撤销功能,且支持加解密外包,适用于雾计算环境,但密钥与密文的长度随属性数量线性增长。文献[18]仅实现了属性撤销。文献[19]较文献[18]增加了密钥定长,但方案仍存在较多不足。本文方案实现了雾环境下的加解密外包,支持用户与属性撤销,且密钥与密文定长,更适用于资源有限的物联网设备。

表2 功能比较Table 2 Comparison of function

4.1.2 撤销效率比较

表3 将相关方案的撤销效率进行比较。本文方案用户撤销仅需删除雾节点密钥即可,故属性撤销引起的密钥与密文更新所需的计算量决定了撤销的效率。

表3 撤销效率比较Table 3 Comparison of revocation efficiency

由于群上的指数运算与双线性配对带来的计算开销远大于模乘运算,因此指数运算与双线性配对是撤销效率的主要影响因素。

文献[17]利用KEK树进行撤销,密钥与密文更新所需的指数运算的次数都随撤销属性的数量线性增长。文献[18]利用中国剩余定理求解同余方程组的思想,简化了KEK 树求解最小用户子树的过程,但密钥更新效率只有本文方案的三分之一,且密文更新所需的指数运算的次数与访问策略中的属性数量线性正相关。文献[19]利用版本号标识法进行撤销,每当撤销发生时,与其相关所有密钥和密文都需要进行更新。而本文方案密钥更新只需简单的模乘运算且不需要更新密文。因此,本文方案具有较高的撤销效率。

4.1.3 存储与通信开销比较

如表4 将相关方案中终端设备的存储与通信开销进行比较。存储开销与用户密钥的长度相关,通信开销与用户密文的长度相关。

表4 存储与通信开销比较Table 4 Comparison of storage and communication cost

在存储开销方面,文献[17]和[18]中用户密钥的长度随用户属性数量线性增长,此外文献[17]利用KEK树进行撤销,还需要额外存储KEK 密钥。因此上述方案造成较大的存储负担。文献[8]和[19]与本文方案固定了密钥长度,但本文方案的存储开销低于其他方案,仅为一个群元素的长度。

在通信开销方面,文献[18]中密文的长度随访问策略中的属性数量线性增长。文献[19]中密文的长度与全局属性数量呈线性正相关。因此上述文献造成较大的通信负担。文献[8]和[17]与本文方案将密文长度固定,本文方案的通信开销仅为4个群元素的长度,同样较优。

4.2 实验分析

通过实验对比了本文方案与文献[17]和[19]的加解密时间,密钥与密文更新时间。实验环境采用Windows 64位操作系统,AMD Ryzen 7 PRO 2700八核处理器,8 GB内存。通过Eclipse软件,基于JPBC库,使用512 位有限域中超奇异曲线y2=x3+x的160 位椭圆曲线群对相关方案进行模拟,实验结果如图2~5所示。

图2 DO加密时间对比Fig.2 Comparison of DO encryption time

加解密阶段的实验数据为各方案在属性数量为10、20、30、40、50情况下分别模拟20次的平均值。文献[19]中加解密时间随着属性数量线性增长,文献[17]与本文方案都进行了加解密外包,将加密过程中与访问策略相关的复杂计算和解密过程中的双线性配对等操作转载到雾节点,数据拥有者与用户只需完成少量计算即可,时间开销几乎为一个定值。但本文方案的加解密效率仍优于文献[17]。

图3 DU解密时间对比Fig.3 Comparison of DU decryption time

图4 密钥更新时间对比Fig.4 Comparison of keys update time

图5 密文更新时间对比Fig.5 Comparison of ciphertexts update time

撤销阶段的实验数据为各方案在撤销属性数量为2、4、6、8、10 情况下分别模拟20 次的平均值。令文献[19]中与版本号相关的密钥和密文数量等于撤销的属性数量。文献[17]和[19]与本文方案的密钥更新时间都随撤销属性数量线性增长,且文献[17]引入KEK 密钥,造成了更高的时间开销,但本文方案仅需要更新部分RSA 密钥即可,密钥更新效率较高。文献[17]和[19]中密文更新时间也随撤销属性数量线性增长,而本文方案无需更新密文。综上,本文方案的撤销效率较高。

5 结束语

本文对现有的密文策略属性加密方案进行改进,提出了一种支持用户与属性撤销的轻量级访问控制方案。该方案建立在云雾架构下,利用RSA 密钥管理实现了灵活的用户与属性即时撤销,通过将密钥与密文定长和部分加解密外包,减少了存储与通信开销,减轻了用户端的计算负担。另外基于aMSE-DDH 难题,在随机预言机模型中,可以证明本文方案具有选择密文攻击安全性。最后通过理论分析和实验仿真,表明所提方案适合应用于5G时代用户终端受限的设备与雾计算平台交互的访问控制环境中,具有较高的系统效率。但目前本文方案仅基于单授权中心,易导致单点失效与负担过重等问题。因此,如何在去中心化的环境下实现数据的安全共享是接下来研究工作的重点[22]。

猜你喜欢
加解密密文密钥
一种支持动态更新的可排名密文搜索方案
幻中邂逅之金色密钥
幻中邂逅之金色密钥
基于模糊数学的通信网络密文信息差错恢复
密码系统中密钥的状态与保护*
基于网络报文流量的协议密文分析方法
密钥共享下跨用户密文数据去重挖掘方法*
TPM 2.0密钥迁移协议研究
PDF中隐私数据的保护方法
电子取证中常见数据加解密理论与方法研究