技术应用

面向工业物联网高效可撤销的属性基访问控制

  • 肖浩 1, 2, 3 ,
  • 徐子慧 , 1, 2, * ,
  • 姜奇 1, 2 ,
  • 马鑫迪 1 ,
  • 杨力 2, 4 ,
  • 余增文 2, 5
展开
  • 1. 西安电子科技大学网络与信息安全学院,西安 710071
  • 2. 大数据与决策实验室,长沙 410073
  • 3. 海南核电有限公司,昌江 572732
  • 4. 西安电子科技大学计算机科学与技术学院,西安 710071
  • 5. 北京计算机技术及应用研究所,北京 100039

网络出版日期: 2025-07-18

基金资助

国家自然科学基金(62472337,62372350,62125205)

版权

版权所有©《网络空间安全科学学报》编辑部 2025

Efficient and revocable attribute-based access control for industrial Internet of Things

  • XIAO Hao 1, 2, 3 ,
  • XU Zihui , 1, 2, * ,
  • JIANG Qi 1, 2 ,
  • MA Xindi 1 ,
  • YANG Li 2, 4 ,
  • YU Zengwen 2, 5
Expand
  • 1. School of Cyber Engineering, Xidian University, Xi’an 710071, China
  • 2. Laboratory for Big Data and Decision, Changsha 410073, China
  • 3. Hainan Nuclear Power Co., Ltd., Changjiang 572732, China
  • 4. School of Computer Science and Technology, Xidian University, Xi’an 710071, China
  • 5. Beijing Institute of Computer Technology and Application, Beijing 100039, China

Online published: 2025-07-18

Supported by

The National Natural Science Foundation of China (No.62472337, No.62372350, No.62125205)

Copyright

Copyright ©2025 Journal of Aeronautical Materials. All rights reserved.

摘要

属性基访问控制作为保障工业数据合规使用的关键技术,能够有效管理用户对敏感数据的访问权限。针对云端数据管理中的安全隐患,密文策略的属性基加密方案有效解决了数据保护与访问控制的双重需求。然而,现有方案仍存在两方面的局限:(1)策略表达性不足且计算负载高;(2)用户权限撤销不满足前向安全性。为此,提出了一种面向工业物联网高效可撤销的属性基访问控制方案。首先,采用支持非单调策略约束和属性重用的属性基加密提高逻辑表达力,同时融合离线加密与外包解密技术卸载客户端的计算开销。其次,设计一种双层密钥撤销机制,通过对属性层和数据层密钥的协同控制,保障前向安全性。最后,对所提出方案进行性能评估,结果表明其有效降低了客户端的计算开销。

本文引用格式

肖浩 , 徐子慧 , 姜奇 , 马鑫迪 , 杨力 , 余增文 . 面向工业物联网高效可撤销的属性基访问控制[J]. 网络空间安全科学学报, 2025 , 3(2) : 84 -95 . DOI: 10.20172/j.issn.2097-3136.250208

Abstract

Attribute-based access control, as a key technology to guarantee the compliant use of industrial data, can effectively manage users’ rights to access sensitive data. For the security risks in cloud data management, attribute-based encryption schemes of ciphertext policy effectively address the dual needs of data protection and access control. However, the existing schemes have two limitations: 1) low policy expressiveness and high computational burden; 2) insufficient forward security in user right revocation. Therefore, an efficient and revocable attribute-based access control scheme for industrial Internet of Things was proposed. First, an attribute-based encryption supporting non-monotonic policy constraints and attribute reuse was adopted to improve logical expressiveness, and the offline encryption and outsourced decryption techniques were fused to offload the computational overhead of the client. Second, a two-layer key revocation mechanism was designed to guarantee the forward security through the cooperative control of attribute- and data-layer keys. Finally, the proposed scheme was evaluated and the results showed that it effectively reduced the computational overhead of the client.

0 引言

工业物联网[1](Industrial Internet of Things,IIoT)作为工业4.0的核心技术架构,通过智能设备的泛在互联显著提升了工业系统的互操作性与生产效率[2]。随着IIoT设备生成的海量数据突破本地的计算和存储瓶颈,越来越多的中小型制造企业加速将核心业务数据迁移至公有云平台,以获取可扩展的数据计算与托管服务。这种云端化转型在提升资源利用率的同时,也使得数据脱离了所有者的物理控制边界,加剧了数据泄露的风险[3]
属性基访问控制[4]作为保障工业数据合规使用的关键技术,通过匹配用户属性与访问策略,可以精准控制不同用户对敏感数据的访问权限。基于属性的加密作为实现属性基访问控制的主要方法之一,能够同时满足数据保护与访问控制的双重需求。该方法包含密文策略的属性基加密[5](Ciphertext Policy Attribute-Based Encryption,CP-ABE)和密钥策略的属性基加密[6](Key-Policy Attribute-Based Encryption,KP-ABE)两种典型范式,其核心区别在于访问策略的关联对象不同。由于CP-ABE支持数据所有者自主定义访问策略[7-8],这种特性使其在云环境数据共享场景中展现出更强的应用优势。
当前基于CP-ABE实现IIoT属性访问控制的研究,其核心挑战集中在计算效率优化[9-11]与动态用户撤销[12-14]两个维度。一方面,终端设备受限于计算能力,难以承担CP-ABE固有的双线性对运算开销,现有研究[15-19]通过在线/离线加密[20]和外包解密[21]技术,将加/解密计算分别迁移至预处理阶段和云端。例如,Li等[16]提出了一种IIoT中云辅助的高效分层数据共享框架,采用在线/离线和可验证外包解密,减少了用户加/解密的计算开销。杜瑞忠等[19]提出了一种雾计算中细粒度属性更新的外包计算访问控制方案,采用模加法一致性秘密分享构建访问控制树,将解密计算操作外包给雾节点,降低了用户的加/解密开销。
另一方面,动态用户撤销需求要求访问控制体系具备高效的撤销能力,当前研究[22-25]通过更新属性基密文或密钥版本实现动态访问权限撤销,避免了重加密带来的额外开销。例如,Ma等[22]提出了一种基于区块链的智能工厂数据共享方案,授权机构通过撤销算法将撤销用户添加到嵌入密文的撤销列表中,实现了用户撤销。张伟航等[25]提出了一种边云辅助下的可撤销属性加密方案,通过引入属性版本以及系统版本,实现了用户属性撤销、系统全局属性撤销以及用户撤销。
然而,上述方案仍存在两方面的不足:(1)不支持非单调访问结构(如逻辑非门)和属性重用,难以满足IIoT场景对精细表达能力的需求,其中逻辑非门是实现黑名单式访问控制的核心要素,而属性重用则是构建复杂权限组合的必要条件,如策略表达式(A AND B) OR (A AND C) OR (B AND D)。(2)上述方案采用的是混合加密,且仅依赖属性基加密层单点更新执行用户权限撤销,而未处理数据加密层的密钥缓存问题,可能会导致密钥抓取攻击[2627]。因为用户可能在撤销前缓存数据解密密钥,从而恢复历史加密数据。尽管基于下载-重加密-上传的撤销机制能够实现安全撤销,但在IIoT环境下的大规模数据场景中,该方法将给客户端带来高昂的计算负载与通信开销。
因此,目前的方案不能完全满足IIoT的需求。为解决上述问题,本文提出了一种面向IIoT高效可撤销的属性基访问控制方案。主要贡献如下。
(1)针对策略表达和计算效率问题,采用支持非单调策略和属性重用的TKN20[28]来提高访问策略的逻辑表达力,并融合离线加密和外包解密技术实现了客户端计算开销的有效卸载,其中承担外包解密的云服务器也仅须执行常数级双线性对运算。
(2)针对混合加密中撤销存在的前向安全性问题,设计了一种双层密钥撤销机制。在属性层,通过轮换外包解密密钥/用户属性密钥对,确保新生成的转换密文无法被旧属性密钥解密;在数据层,采用可更新加密,实现云端加密数据密钥的高效轮换,撤销用户对数据密文的解密能力。
(3)对所提出方案进行了安全性证明和性能评估,结果表明所提方案是安全的,并且有效降低了客户端的计算开销。当属性数量为100时,属性基加密、外包解密和最终解密的时间分别为0.6 ms、48 ms和0.9 ms。

1 相关工作

本节将阐述面向IIoT的属性基访问控制相关的工作。
属性基访问控制能够防止未授权的访问。Miao等[15]设计了一个支持在线/离线加密和外包解密的安全数据共享框架,展示了如何在云辅助医疗保健IIoT系统中部署。Li等[16]提出了一种IIoT中云辅助的高效分层数据共享框架,采用分层的CP-ABE实现了访问控制。Li等[17]为云辅助的IIoT应用提出了一种加权的访问控制方案,能够在加权属性上制定细粒度的访问结构。Rani等[18]提出了一种基于属性的双边访问控制方案,使用信任管理对数据所有者进行评价,对不端用户实施惩罚。杜瑞忠等[19]提出了一种雾计算中细粒度属性更新的外包计算访问控制方案,使用秘密分享技术构建访问控制树,将加/解密计算操作外包给雾节点,降低了用户的加/解密开销。针对终端设备资源受限的问题,上述工作都使用了离线加密和外包解密,但都不支持非单调策略和属性重用。
用户权限撤销能够及时中止授权访问。Ma等[22]提出了一个支持区块链的智能工厂数据共享方案,授权机构通过撤销算法将用户添加到嵌入密文的撤销列表中,以实现用户撤销。Wang等[23]提出了与工业互联网框架相匹配的统一CP-ABE数据安全共享方案,将用户信任值设置为属性,通过属性撤销算法实现了撤销。Tian等[24]提出了一种基于属性的异构数据隐私共享方案,通过子集覆盖树实现了用户属性撤销。张伟航等[25]提出了边云辅助下的可撤销属性加密方案,引入属性版本以及系统版本,实现了用户权限撤销。上述撤销方案仅依赖属性基加密层单点更新执行权限撤销,而未处理数据加密层的密钥缓存问题,导致了密钥抓取攻击[26-27]
总体来说,上述基于CP-ABE的IIoT属性访问控制方案无法同时满足丰富的策略表达、各实体高效的计算和前向安全的撤销。为此,本文提出了一种同时满足上述需求的方案,以实现IIOT环境下属性访问控制的多维优化。

2 预备知识

2.1 符号

对于$ n\in \mathbb{N} $$ \left[n\right] $表示集合$ \{1,\cdots ,n\} $$ s\leftarrow S $表示s从集合S中均匀选取。大写粗体字母表示矩阵,小写粗体字母表示向量。若矩阵$ {\boldsymbol{A}}_{1} $$ {\boldsymbol{A}}_{2} $拥有相同的行数,则$ \left({\boldsymbol{A}}_{1}\right|\left|{\boldsymbol{A}}_{2}\right) $表示它们串联生成的矩阵。给定矩阵$ \boldsymbol{A} $中的每个元素$ {a}_{j,k}\in {\mathbb{Z}}_{p} $$ \left[\boldsymbol{A}{]}_{i}\right(i=\mathrm{1,2},T) $表示$ {\mathbb{G}_i} $上的矩阵,其中第$ (j,k) $项为$ {g}_{i}^{{a}_{j,k}} $。在双线性配对中,定义$ e\left(\right[\boldsymbol{A}{]}_{1},\left[\boldsymbol{B}{]}_{2}\right)=[{\boldsymbol{A}}^{\mathrm{T}}\boldsymbol{B}{]}_{T} $

2.2 密钥同态的伪随机函数

密钥同态的伪随机函数[29](Key Homomorphic Pseudorandom Function,KH-PRF)就密钥而言是同态的,其通常作为基于对称密钥代理重加密方案的基础。定义如下:
定义1(KH-PRF[29]) 令$ {F}_{{\mathrm{KH}}}:\mathcal{K}\times \mathcal{X}\to \mathcal{Y} $为安全的伪随机函数,其密钥空间$ \mathcal{K} $具有群结构。如果给定$ {F}_{{\mathrm{KH}}}({k}_{1},x) $$ {F}_{{\mathrm{KH}}}({k}_{2},x) $,存在一个输出$ {F}_{{\mathrm{KH}}}({k}_{1}\oplus{k}_{2},x) $的有效过程,则$ {F}_{{\mathrm{KH}}} $是密钥同态的,其中$ \oplus $表示群运算。

2.3 访问结构和线性秘密共享

在CP-ABE中,访问结构和线性秘密共享是其核心技术,定义如下:
定义2(访问结构[30]) 设$ \mathcal{P}=\{{P}_{1},{P}_{2},\cdots,{P}_{n}\} $表示参与者的集合。集合$ \mathbb{A}\subseteq {2}^{\{{P}_{1},\cdots,{P}_{n}\}} $是单调的,当且仅当对于任意子集BC,如果$ B\in \mathbb{A} $$ B\in C $,则$ C\in \mathbb{A} $成立。一个访问结构被定义为集合$ \{{P}_{1},{P}_{2},\cdots,{P}_{n}\} $中的非空子集$ \mathbb{A} $,包含于$ \mathbb{A} $内的集合称为授权集,反之,称为未授权集。
定义3(线性秘密共享[31]) 设$ \Pi $为针对访问结构$ \mathbb{A} $的一个线性秘密共享方案,其中份额生成矩阵为$ {\boldsymbol{M}}_{l\times n} $$ \Pi $满足如下两个条件:
共享:给定列向量$ \overrightarrow{\boldsymbol{v}}=({s}_{0},{r}_{2},\cdots,{r}_{n}){\in }_{R}{\mathbb{Z}}_{p}^{n} $,计算$ \overrightarrow{\boldsymbol{\lambda }}=(\boldsymbol{M}\cdot \overrightarrow{\boldsymbol{v}}) $,其中,$ \overrightarrow{\boldsymbol{\lambda }} $是一个$ l $维的份额向量,$ {\lambda }_{i} $表示秘密$ {s}_{0} $的第$ i $个份额。
重构:给定$ S\in \mathbb{A} $为授权集合,定义$ I=\{i:\rho (i)\in S\} $,其中$ I\subset \{1,\cdots,l\} $$ \rho \left(i\right) $映射M中第i行到$ \mathcal{P} $中。存在常数$ \{{w}_{i}\in {\mathbb{Z}}_{p}{\}}_{i\in I} $使得$ {\displaystyle\sum }_{i\in I}{w}_{i}{\lambda }_{i}={s}_{0} $,这些常数$ \left\{{w}_{i}\right\} $的求解时间与份额生成矩阵$ {\boldsymbol{M}}_{l\times n} $的大小呈多项式关系。
定义4$ {\mathcal{D}}_{j,k}\text{-}{\mathrm{MDDH}} $假设[32]) 设$ {\mathcal{D}}_{j,k}(j > k) $$ {\mathbb{Z}}_{p}^{j\times k} $上的矩阵分布,其能以压倒性的概率生成满秩矩阵。考虑以下分布:
$ \mathbb{G}\leftarrow {\mathcal{G}}_{{\mathrm{BG}}}({1}^{\lambda }),\boldsymbol{A}\leftarrow {\mathcal{D}}_{k},\boldsymbol{v}\leftarrow {\mathbb{Z}}_{p}^{k},{\boldsymbol{t}}_{0}=\boldsymbol{A}\boldsymbol{v}, $
$ {\boldsymbol{t}}_{1}\leftarrow {\mathbb{Z}}_{p}^{j},\{{P}_{\beta }{\}}_{\beta \in \left\{\mathrm{0,1}\right\}}=(\mathbb{G},[\boldsymbol{A}{]}_{\mathrm{1,2}},[{\boldsymbol{t}}_{\beta }{]}_{\mathrm{1,2}}) $
其中$ {\mathcal{D}}_{k} $用于表示$ {\mathcal{D}}_{k+1,k} $$ {\mathcal{D}}_{j,k}\text{-}{\mathrm{MDDH}} $假设成立,如果对于任何概率多项式时间(Probabilistic Polynomial Time,PPT)敌手,满足:
$ {\mathrm{Ad{v}}}_{\mathcal{A}}^{{\mathcal{D}}_{j,k}\text{-}{\mathrm{MDDH}}}\left(\lambda \right)=\left|\mathrm{Pr}[{P}_{0}\right]-\mathrm{Pr}[{P}_{1}\left]\right|\leqslant \mathrm{n}\mathrm{e}\mathrm{g}\mathrm{l}\left(\lambda \right) $
$ {\mathcal{D}}_{k}\text{-}{\mathrm{MDDH}} $存在以下性质:设$ \boldsymbol{A}\in {\mathcal{D}}_{k} $$ {\boldsymbol{a}}_{1} $k+1维向量,最后一项为1,其余为0。定义$ \bar{\boldsymbol{A}}=\left(\boldsymbol{A}\right|\left|{\boldsymbol{a}}_{1}\right) $,其中$ k\geqslant 2 $$ {\boldsymbol{A}}^{*} $$ ({\bar{\boldsymbol{A}}}^{{\mathrm{T}}}{)}^{-1} $的左k列矩阵,$ {\boldsymbol{a}}_{1}^{*} $$ ({\bar{\boldsymbol{A}}}^{{\mathrm{T}}}{)}^{-1} $的右1列向量,则$ {\bar{\boldsymbol{A}}}^{{\mathrm{T}}}{\boldsymbol{A}}^{*}={\boldsymbol{I}}_{k} $$ {\boldsymbol{A}}^{{\mathrm{T}}}{\boldsymbol{a}}_{1}^{*}=0 $$ {\boldsymbol{A}}^{*}{\boldsymbol{A}}^{{\mathrm{T}}}+{\boldsymbol{a}}_{1}^{*}{\boldsymbol{a}}_{1}^{{\mathrm{T}}}= {\boldsymbol{I}}_{k+1} $。类似地,对于$ \bar{\boldsymbol{B}}\in \mathrm{G}{\mathrm{L}}_{\mathrm{k}+\mathrm{\eta }}\left({\mathbb{Z}}_{p}\right) $也满足上述性质,为了方便,$ \left({\boldsymbol{b}}_{1}\right|\left|{\boldsymbol{b}}_{2}\right) $被表示为$ {\boldsymbol{B}}_{12} $

3 系统架构

3.1 系统模型

方案的系统模型如图1所示,实体包括密钥生成中心(Key Generation Center,KGC)、数据拥有者(Data Owner,DO)、云服务器(Cloud Server,CS)和数据使用者(Data User,DU),各实体功能如下:
图 1 系统模型

Fig.1 System Model

密钥生成中心。KGC是加密系统的权威机构,负责初始化系统并分发密钥,同时通过更新属性密钥撤销DU解密属性基密文的能力。
数据拥有者。DO是数据的所有者,利用属性基加密与对称加密相结合的方式,实现对数据的属性基访问控制。同时,DO通过生成更新令牌并委托CS更新数据密文,以撤销DU解密数据密文的能力。
云服务器。CS是具备计算和存储能力的实体,负责托管DO的密文数据,并通过部分解密来减轻DU的解密负担。同时,CS还能够根据DO提供的更新令牌来更新密文。
数据使用者。DU是使用数据的实体,只有当其满足DO制定的属性基访问策略时,才能解密数据。

3.2 威胁模型

KGC被认为是完全可信的实体,可由政府部门或可信执行环境充当,这意味它们诚实地执行协议规定的操作。DO、DU和CS被认为是半诚实的实体,这意味着他们会通过观察好奇地收集敏感信息,但不会偏离协议。
假设未授权的DU之间能够合谋,而其余各参与方之间不能合谋。未授权的DU合谋这一攻击类型可以在安全模型中被捕获。例如,给定一个属性基密文的策略P=(Year: 2021 AND Country: US),存在两个未授权的DU,其属性基密钥相关的属性分别是(Year: 2021 AND Age: 25)和(Country: US AND Hobby: Baseball)。此时,即使他们合谋也无法解密由策略P制定的密文。

3.3 设计目标

方案的设计目标如下:
属性基访问控制。实现约束表现丰富的属性基访问控制,支持非单调的和属性重用的属性基访问控制策略。
高效的加解密运算。参与方的计算是高效的,其中包括DO的属性基加密、CS的外包解密和DU的最终解密。
前向安全的用户权限撤销。DU权限被撤销后,之前的加密数据都是安全的,不会因为撤销操作而暴露。

4 方案构造

4.1 主要思想

本方案旨在实现丰富的策略表达、各实体高效的计算和前向安全撤销三个目标,其主要思想如下:
针对策略表达和计算效率问题,采用支持非单调策略约束和属性重用的TKN20[28]来提高访问策略的逻辑表达力,并融合离线加密和外包解密技术实现客户端计算开销的有效卸载。在外包解密设计中,通过盲化的思想[21],密钥权威中心将属性私钥拆分为转换密钥和属性密钥,CS持转换密钥执行部分解密,授权DU持属性密钥仅需要执行一次指数运算即可解密数据。
在离线加密设计中,TKN20以(标签:属性)键值对的形式表达属性,其策略嵌入方式与文献[15-19]存在差异,难以直接通过随机化技术[20]进行扩展。为解决这一问题,设置了有边界的标签域,并要求加密方在离线阶段仅在有边界的标签域下随机选择属性。当组装密文时,新引入了一个包含线性秘密共享份额与属性混合的变量,使得DO仅需若干乘法操作就能将真实(标签:属性)进行编码,以抵消离线阶段中选取的(标签:属性)。
针对混合加密中撤销存在的前向安全性问题,设计了一种双层密钥撤销机制,其包括属性密钥撤销和数据密钥撤销。在属性层,通过轮换外包解密密钥/用户属性密钥对,确保新生成的转换密文无法被旧属性密钥解密;在数据层,采用可更新加密,实现云端加密数据密钥的高效轮换,撤销用户对数据密文的解密能力。

4.2 细节构造

方案包含系统初始化、密钥生成、数据加密上传、数据访问请求、数据解密恢复和用户权限撤销六个阶段。
(1)系统初始化阶段。KGC初始化加密系统的公共参数并广播给系统内的所有实体。
属性基加密初始化。KGC生成属性基加密的主公私钥对,具体过程如下:
$ {\mathrm{Setup}}(\lambda ,Label)\to (mpk,msk) $。输入安全参数$ \lambda $和标签集$ Label $,输出主公私钥对$ (mpk,msk) $
$ \begin{aligned} &\mathbb{G}\leftarrow {\mathcal{G}}_{{\mathrm{BG}}}({1}^{\lambda }),{\boldsymbol{A}}\leftarrow {\mathcal{D}}_{k},\overline{{\boldsymbol{B}}}\leftarrow {\mathbb{Z}}_{p}^{(k+2)\times (k+2)}\\& {\boldsymbol{W}}\leftarrow {\mathbb{Z}}_{p}^{(k+1)\times (k+2)},{\boldsymbol{k}}\leftarrow {\mathbb{Z}}_{p}^{k+2},{K}^{\prime }\leftarrow {\mathcal{K}}_{\lambda }\\& H:\{{0},1\}\to {\mathbb{G}}_{1}^{(k+1)\times k}\times {\mathbb{G}}_{1}^{(k+1)\times k}\\& {F}_{{K}^{\prime }}:\{{0},1\}\to {\mathbb{Z}}_{p}^{(k+1)\times 2}\times {\mathbb{Z}}_{p}^{(k+1)\times 2}\\& Label=\{labe{l}_{1},\cdots,labe{l}_{n}\}\\& mpk=(Label,\mathbb{G},[{{\boldsymbol{B}}}]_2,[{{\boldsymbol{WB}}}]_1,[{{{\boldsymbol{B}}}^{T}{\boldsymbol{k}}}]_T,H,{F}_{{K}^{\prime }})\\& msk=({\boldsymbol{A}},{{\boldsymbol{W}}}^{T}{\boldsymbol{A}},{{\boldsymbol{B}}}^{*},{{\boldsymbol{B}}}_{12}^{*},{\boldsymbol{k}},{K}^{\prime })\end{aligned}$
其中,$ {\mathcal{G}}_{{\mathrm{BG}}}\left({1}^{\lambda }\right) $为双线性群生成器,输出双线性群$ \mathbb{G} $H是密码学哈希函数,$ F_{K'} $是带密钥的伪随机函数,$ {\mathcal{K}}_{\lambda } $是PRF的密钥空间,k-Lin族的参数$ k=2 $
(2)密钥生成阶段。KGC根据DU的属性生成属性基密钥,通过盲化的方式将属性基密钥拆分成转换密钥和属性密钥,分别分发给CS和DU。
属性私钥生成。KGC为DU生成属性私钥,具体过程如下:
$ {\mathrm{KeyGen}}(msk,mpk,x)\to s{k}_{x} $。输入mskmpk和属性$ x=(\boldsymbol{x}\in {\mathbb{Z}}_{p}^{m},\varphi ) $,输出属性私钥$ s{k}_{x} $
$ \begin{aligned} &{\boldsymbol{s}} \leftarrow \mathbb{Z}_p^k,({[{{\boldsymbol{U}}_{\phi (i),0}}]_1},{[{{\boldsymbol{U}}_{\phi (i),1}}]_1}) = H(\phi (i)) \\ & ({{\boldsymbol{V}}_{\phi (i),0}},{{\boldsymbol{V}}_{\phi (i),1}}) = {F_{K'}}(\phi (i)) \\ & {k_1} = {[{\boldsymbol{As}}]_2},{k_2} = {[{\boldsymbol{k}} + {{\boldsymbol{W}}^T}{\boldsymbol{As}}]_1} \\ & {k_{3,i}} = [{{\boldsymbol{B}}^*}({x_i}{\boldsymbol{U}}_{\phi (i),0}^T + {\boldsymbol{U}}_{\phi (i),1}^T){\boldsymbol{As}} + {\boldsymbol{B}}_{12}^*{(({x_i}{\boldsymbol{V}}_{\phi (i),0}^T + {\boldsymbol{V}}_{\phi (i),1}^T){\boldsymbol{As}}]_1} \\ & s{k_x} = (x,{k_1},{k_2},{\{ {k_{3,i}}\} _{i \in [m]}})\end{aligned} $
其中,$ \varphi $是属性到标签的映射函数。例如,DU的属性集为(Age: 18,Country: US),则$ \boldsymbol{x}=(18,{H}_{1}(US\left)\right) $$ {H}_{1}:\{\mathrm{0,1}{\}}^{*}\to {\mathbb{Z}}_{p} $是密码学哈希函数。此时,$ \phi \left(1\right)=Age $$ \phi \left(2\right)=Country $
属性密钥拆分。KGC盲化属性私钥,为DU和CS分别生成属性密钥和转换密钥,具体过程如下:
$ {\mathrm{KeyGen.Random}}\left(s{k}_{x}\right)\to (t{k}_{x},a{k}_{x}) $。输入$ s{k}_{x} $,输出转换密钥$ t{k}_{x} $和属性密钥$ a{k}_{x} $
$ \begin{gathered} \tau \leftarrow \mathbb{Z}_p^*,{{k'}_1} = {({k_1})^{\tfrac{1}{\tau }}},{{k'}_2} = {({k_2})^{\tfrac{1}{\tau }}},{{k'}_3} = {({k_3})^{\tfrac{1}{\tau }}} \\ a{k_x} = \tau ,t{k_x} = (x,{{k'}_1},{{k'}_2},{{k'}_3}) \\ \end{gathered} $
(3)数据加密上传阶段。DO采用对称加密保护数据,采用属性基加密保护对称密钥,将数据密文、属性基密文和访问策略上传至CS。
离线加密。设备空闲时,DO生成中间密文,为在线加密提供加密参数。在该阶段,DO针对单调和非单调两种策略在标签域下随机选择属性值。
$ {\mathrm{Enc.Offine}}(mpk,n)\to IT $。输入mpk和线性秘密共享访问结构[31]的最大行边界$ n $,输出中间密文IT。具体过程如下:
$ \begin{aligned} {\boldsymbol{r}},{{\boldsymbol{r}}_1},&\cdots,{{\boldsymbol{r}}_d} \leftarrow \mathbb{Z}_p^k,{{{\boldsymbol{w'}}}_1},\cdots,{{{\boldsymbol{w'}}}_n} \leftarrow \mathbb{Z}_p^{k + 1} \\ Key& = {[{{\boldsymbol{r}}^T}{{\boldsymbol{B}}^T}{\boldsymbol{k}}]_T},{c_1} = {[{\boldsymbol{Br}}]_2} \\ {c_{2,j}} &= {[{\boldsymbol{B}}{{\boldsymbol{r}}_j}]_2},({[{{\boldsymbol{U}}_{labe{l_i},0}}]_1},{[{{\boldsymbol{U}}_{labe{l_i},1}}]_1}) = H(labe{l_i}) \\ t(i) &= 1: \\ {c_{3,i}}& = ({c_{3,i,1}},{c_{3,i,2}}) \\ {\text{ }} &= ({[{{{\boldsymbol{w'}}}_i} + ({{y'}_i}{{\boldsymbol{U}}_{\varphi (i),0}} + {{\boldsymbol{U}}_{\varphi (i),1}}){{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1}) \\ t(i) &= 0: \\ {c_{3,i}} &= ({c_{3,i,1}},{c_{3,i,2}}) \\ {\text{ }}& = ({[ - {{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{y'}_i}{{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),1}}{{\boldsymbol{r}}_{\pi (i)}}]_1}) \\ c{t_{labe{l_i}}} &= (labe{l_i},{{y'}_i},{[{c_{3,i}}]_{t(i) = 0}},{[{c_{3,i}}]_{t(i) = 1}}) \\ IT &= ({c_1},{\{ {c_{2,j}}\} _{j \in [d]}},{\{ c{t_{labe{l_i}}}\} _{i \in [n]}},Key) \end{aligned} $
其中,$ \pi \left(i\right) $用于映射属性重用的次数,d为属性重用的最大次数,$ t\left(i\right) $用于判定属性是否连接到非门,若$ t\left(i\right)=0 $,属性连接到非门,否则,属性连接到单调门。在同密钥派生阶段,$ \phi $是属性到标签的映射函数。若DO的策略为$ (Age:18\,\,AND\,\,Country:NOT\,\,US) $,则$ {{\boldsymbol{y}}}=(18,{H}_{1}(US\left)\right) $$ \phi \left(1\right)=Age $$ \phi \left(2\right)=Country $$ t\left(1\right)=1 $$ t\left(2\right)=0 $
在线加密。当需要共享数据时,DO组装密文,具体过程如下:
$ {\mathrm{Enc.Online}}(mpk,y,m,IT)\to CT $。输入mpk、策略$ y=(\boldsymbol{y},f,\varphi ,t) $、消息mIT,输出密文CT。具体过程如下:
$ \begin{aligned} &{{\boldsymbol{w}}}_{1},\cdots,{{\boldsymbol{w}}}_{n}\leftarrow {\mathrm{Share}}(f,{\boldsymbol{WBr}})\in {\mathbb{Z}}_{p}^{k+1}\\& {c}_{4,j}={{\boldsymbol{w}}}_{i}-{{{\boldsymbol{w}}}^{\prime }}_{i},{c}_{5,j}={y}_{i}-{{y}^{\prime }}_{i},{c}_{6,j}={{\boldsymbol{w}}}_{i}{y}_{i}-{{{\boldsymbol{w}}}^{\prime }}_{i}{{y}^{\prime }}_{i}\\& K\leftarrow {\mathrm{KDF}}(Key),{C}_{{\mathrm{Data}}}\leftarrow {\mathrm{Enc}}_{K}(m)\\ & C{T}_{{\mathrm{ABE}}}=(y,{c}_{1},[{{c}_{2,l}}]_{l \in [d]},\{{{c}_{3,i}},{{c}_{4,i}},{{c}_{5,i}},{{c}_{6,i}}\}_{i\in [n]})\\& CT=(C{T}_{{\mathrm{ABE}}},{C}_{{\mathrm{Data}}})\end{aligned} $
其中,$ {\mathrm{Share}}(\cdot ) $为线性秘密共享函数,$ f $是一个非单调布尔公式[28],用于制定策略,$ C{T}_{{\mathrm{ABE}}} $$ {C}_{{\mathrm{Data}}} $分别表示属性基密文和数据密文,$ {\mathrm{En{c}}}_{K}(\cdot ) $为采用KH-PRF构造的分组加密。加密数据m时,将其划分为$ {n}^{\prime} $个数据块$ {m}_{1},\cdots,{m}_{{n}^{\prime}} $,并采用随机计数模式对每个数据块逐一加密$ {c}_{i}={m}_{i}\cdot {F}_{{\mathrm{KH}}}(K,N+i) $i为数据块的序号,N为随机数。
(4)数据访问请求阶段。DU向CS发起数据访问请求,CS判断DU属性是否满足DO的访问策略。若满足,则执行部分解密,返回转换密文,否则,拒绝访问请求。
外包解密。当接收到DU的解密请求后,CS判断DU的属性x是否满足密文策略y。若满足,CS输出转换密文TCT,否则,输出$ \perp $。具体过程如下:
${\mathrm{ Dec.Out}}(mpk,CT,t{k}_{x})\to TCT $。输入MPK、CT$ t{k}_{x} $,输出转换密文TCT
$ \begin{aligned}& D_{1, j, 1}= {\sum}_{\substack{\pi(i)=j \\i \in S_1}} c_{3, i, 1}+\left[c_{4, i}\right]_1+c_{3, i, 2} \cdot c_{5, i} \\& D_{1, j, 2}= {\sum}_{\substack{\pi(i)=j \\i \in S_0}} \frac{1}{x_i-y_{\phi^{-1}(\varphi(i))}}\Big(y_{\phi^{-1}(\varphi(i))}\left(c_{3, i, 1}-\left[c_{4, i}\right]_1\right) \\ & \qquad\quad+c_{3, i, 2}+[c_{6, i}]_1 \Big) \\& D_{1, j}= e\left(D_{1, j, 1}+D_{1, j, 2}, k_1\right) \\& D_{2, j}= e\left({\sum}_{\substack{\pi(i)=j \\i \in S_1}} k_{3, \phi^{-1}(\varphi(i))}+\right. \\&\left.\quad {\sum}_{\substack{\pi(i)=j \\i \in S_0}} \frac{1}{x_i-y_{\phi^{-1}(\varphi(i))}} k_{3, \phi^{-1}(\varphi(i)),} c_{2, j}\right)^{\mathrm{T}}\end{aligned} $
$\begin{aligned}& T C T_{{\mathrm{A B E}}}=e\left(k_2, c_1\right)^{\mathrm{T}} / \prod_{j \in d]}\left(D_{1, j} / D_{2, j}\right)=\left[\frac{1}{\tau} \boldsymbol{r}^T \boldsymbol{B}^T \boldsymbol{k}\right]_T \\& T C T=\left(T C T_{{\mathrm{A B E}}}, C_{\text {Data }}\right)\end{aligned}$
其中,$ TC{T}_{{\mathrm{ABE}}} $为部分解密后的转换密文。
(5)数据解密恢复阶段。满足策略的DU接收到转换密文,利用属性密钥恢复数据密钥,从而解密数据密文。
解密。DU执行最终解密以恢复消息$ {m}^{\prime} $,具体过程如下:
$ {\mathrm{Dec.User}}(TCT,a{k}_{x})\to {m}^{\prime} $。输入TCT$ a{k}_{x} $,输出$ {m}^{\prime} $
$ \begin{gathered} Key = TCT \cdot a{k_x} = {[{{\boldsymbol{r}}^{T}}{{\boldsymbol{B}}^{T}}{\boldsymbol{k}}]_T} \\ K \leftarrow {\mathrm{KDF}}(Key),m' \leftarrow {\mathrm{De}}{{\mathrm{c}}_K}(C) \\ \end{gathered} $
(6)用户权限撤销阶段。该阶段包含属性密钥撤销和数据密钥撤销两个阶段。在属性密钥撤销中,KGC通过随机化的方式,刷新转换密钥/属性密钥对,撤销DO解密属性基密文的能力;在数据密钥撤销中,DU生成更新令牌,云服务轮换数据密钥,撤销DO解密数据密文的能力。
属性密钥撤销。KGC刷新转换密钥/属性基私钥,使得旧版本属性基私钥无法解密新版转换密钥生成的转换密文。具体过程如下:
$ {\mathrm{Revoke.a{k}}}_{x}(t{k}_{x},a{k}_{x})\to (t{k}_{x}^{\prime},a{k}_{x}^{\prime}) $。输入$ t{k}_{x} $$ a{k}_{x} $,输出新版本的$ t{k}_{x}^{\prime} $$ a{k}_{x}^{\prime} $
$ \tau ' \leftarrow \mathbb{Z}_p^*,{k'_i} = k_i^{\frac{1}{{\tau '}}},a{k'_x} = \tau ' \cdot a{k_x} $
KGC将$ t{k}_{x}^{\prime}=\{{k}_{i}^{\prime}{\}}_{i\in \left[3\right]} $转发给CS。当CS利用$ t{k}_{x}^{\prime} $转换密文$ C{T}_{{\mathrm{ABE}}} $时,得到:
$ TC{T_{{\mathrm{ABE}}}} = {\left[\frac{1}{{\tau \tau '}}{{\boldsymbol{r}}^{{\mathrm{T}}}}{{\boldsymbol{B}}^{{\mathrm{T}}}}{\boldsymbol{k}}\right]_T} $
此时,用户持有$ a{k}_{x} $,无法正确解密$ TC{T}_{{\mathrm{ABE}}} $
数据密钥撤销。DU更新数据密钥,生成更新令牌。首先,选取$ s\in {\mathbb{Z}}_{p}^{*} $,计算$ Ke{y}^{\prime}=Key\cdot [s{]}_{T}= [s{\boldsymbol{r}}^{\mathrm{T}}{\boldsymbol{B}}^{\mathrm{T}}\boldsymbol{k}{]}_{T} $$ {K}^{\prime}={\mathrm{KDF}}\left(Ke{y}^{\prime}\right) $,得到更新密钥$ {K}^{\prime\prime}=-K+ {K}^{\prime} $。然后,计算$ {c}_{1}^{\prime}={c}_{1}\cdot [s{]}_{2}=[s\boldsymbol{B}\boldsymbol{r}{]}_{2} $$ {c}_{2,j}^{\prime}=[s{]}_{2}\cdot {c}_{2,j} $$ {c}_{3,i}^{\prime}=[s{]}_{1}\cdot {c}_{3,i} $,上传更新令牌$ \varDelta =\{{K}^{\prime\prime},{c}_{1}^{\prime},{c}_{2,j}^{\prime},{c}_{3,i}^{\prime}\} $至CS。最后,CS执行数据密文更新操作。具体过程如下:
$ {\mathrm{Revoke.d{k}}}_{x}(\Delta ,CT)\to C{T}^{\prime} $。输入Key,输出更新密文$ C{T}^{\prime} $
$ \begin{aligned}& c_{j, \text { new }}=c_{j, \text { old }} \cdot F\left(K^{\prime \prime}, N+j\right) \\& C T_{{\mathrm{A B E}}}^{\prime}=\left(y, c_1^{\prime},\left[c_{2, j}^{\prime}\right]_{j \in[d]},\left\{c_{3, i}^{\prime}, c_{4, i}, c_{5, i}, c_{6, i}\right\}_{i \in[n]}\right) \\& C_{\text {Data }}^{\prime}=\left\{c_{j, \text { new }}\right\}_{j \in n^{\prime}}^{\prime}, C T^{\prime}=\left(C T_{{\mathrm{A B E}}}^{\prime}, C_{\text {Data }}^{\prime}\right)\end{aligned} $

5 安全性分析

5.1 安全模型

本文集中于证明数据的机密性,因为用户撤销是通过更新密钥的方式实现的,从持有旧密钥的敌手视角来说,其对新生成密文的挑战是不可区分的,这在一定程度上等价于所使用加密方案的机密性。方案的机密性通过所使用的混合加密算法保障,其采用KH-PRF对数据进行分组加密,然后利用属性基加密封装对称密钥。
为证明本方案的安全性,本文首先将离线加密、外包解密和本方案的安全模型分别定义,然后采用混合论证的方式去证明方案的安全性。这里没有单独定义分组加密的安全模型,因为基于KH-PRF随机计数器模式的分组加密,可提供针对选择明文攻击的安全性[29],从而使单个密钥能够加密多个消息。相关定义如下:
定义4 (关系$ {R}_{{\text{CP-ABE}}} $) 与文献[2021]相同,$ x $表示一组属性,$ y $表示一个访问结构,$ ({I}_{key},{I}_{enc}): = (x,y) $被分别定义为密钥生成和在线加密的输入。CP-ABE关系$ {R}_{{\mathrm{CP-ABE}}}(\cdot ) $被定义为:
$ {R_{{\text{CP - ABE}}}}({I_{key}},{I_{enc}}): = \left\{ \begin{aligned} &{1{\quad}{\mathrm{if}}\ \ {}{I_{key}} \in {I_{enc}}} \\ & {0{\quad}{\mathrm{otherwise}}{\text{ }} }\end{aligned} \right. $
下面叙述安全模型定义中使用$ {R}_{{\text{CP-ABE}}} $判断属性密钥中所包含属性是否满足密文中的策略。
定义5 设$ {\Pi }_{{\mathrm{our}}} $为本文设计方案,如下定义了敌手$ \mathcal{A} $与挑战者$ \mathcal{B} $的攻击实验。
设 置$ \mathcal{B} $运行$ {\mathrm{Setup}}(\lambda ,Label)\to (mpk,msk) ,$获取mpkmsk,将主公钥mpk发送给$ \mathcal{A} $
阶段1$ \mathcal{A} $可以自适应地重复以下任何询问。
密钥查询$ \mathcal{A} $查询属性集x的密钥,$ \mathcal{B} $运行$ {\mathrm{KeyGen}}\left(msk,mpk,x\right) $$ {\mathrm{KeyGen.Random}}\left(s{k}_{x}\right) $,分别生成属性私钥$ s{k}_{x} $和转换密钥$ r{k}_{x} $
解密查询$ \mathcal{A} $查询CT的解密结果,$ \mathcal{B} $运行$ {\mathrm{Dec.User}}(TCT,r{k}_{x}) $返回消息$ m $,其中,CT访问策略为yx满足y
挑战$ \mathcal{A} $指定访问策略$ {y}^{*} $,使得密钥查询阶段中的集合x都不满足$ {y}^{*} $,生成两个等长消息$ {M}_{0} $$ {M}_{1} $,将$ ({y}^{*},{M}_{0},{M}_{1}) $发送给$ \mathcal{B} $$ \mathcal{B} $掷硬币$ \beta \in \left\{\mathrm{0,1}\right\} $加密$ {M}_{\beta } $,得到$ C{T}^{*}\leftarrow {\mathrm{Enc.Online}}(mpk,{y}^{*},m,IT) $发送给$ \mathcal{A} $,其中$ IT\leftarrow {\mathrm{Enc.Offine}}(mpk,n) $
阶段2:与第一查询阶段相同,但限制$ \mathcal{A} $查询满足策略$ {y}^{*} $的属性集$ {x}^{*} $的密钥和$ C{T}^{*} $的解密结果。
猜测:攻击者输出对$ \beta $的猜测$ {\beta'} $
定义6 给定安全参数$ \lambda $和标签域$ Label $,方案是选择明文攻击安全的,如果对于所有PPT敌手$ \mathcal{A} $,存在可忽略的函数$ {\mathrm{negl}}(\cdot ) $,使得:
$ \mathrm{Pr}[{\mathrm{E}}{\text{xp}}_{\mathcal{A},{\mathrm{our}}}^{{\text{IND-CPA}}}({1}^{\lambda })=1]\leqslant \frac{1}{2}+\text{negl}(\lambda ) $
类似地,给定安全参数$ \lambda $,离线加密方案$ {\Pi }_{{\mathrm{off}}} $和外包加密方案$ {\Pi }_{{\mathrm{out}}} $在选择明文攻击下是安全的,敌手$ \mathcal{A} $与挑战者$ \mathcal{B} $的攻击实验不再重复定义。

5.2 安全性证明

本节应用混合论证,证明本方案的安全性。
定理1 如果TKN20在选择明文攻击下是安全的,基于KH-PRF的分组加密提供选择明文攻击的安全性,那么本方案在选择明文攻击下也是安全的。
证明 定理1表明,需要证明对于任何PPT敌手$ \mathcal{A} $,攻击本方案,则存在一个敌手$ \mathcal{B} $,可以攻击TKN20和基于KH-PRF的分组加密,具体应用如下混合论证。
$ Gam{e}_{0} $,表示本方案$ {\Pi }_{{\mathrm{our}}} $,支持离线加密,外包解密和用户权限撤销。
$ Gam{e}_{1} $,与$ Gam{e}_{0} $不同,$ \mathcal{B} $对TKN20返回的挑战密文进行随机化构造。
$ Gam{e}_{2} $,与$ Gam{e}_{1} $不同,若$ \mathcal{A} $的询问$ f({I}_{key},{I}_{enc}^{*})\ne 1 $$ \mathcal{B} $随机生成转换密钥。
$ Gam{e}_{3} $,与$ Gam{e}_{2} $不同,随机选择$ Key\in {\mathbb{G}}_{T} $并派生加密密钥K
断言1:从敌手的视角,$ Gam{e}_{0} $$ Gam{e}_{1} $是计算不可区分的,如果实验$ {\mathrm{E}}\text{x}{\text{p}}_{\mathcal{A},{\mathrm{off}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $的获胜概率是可忽略的,证明如定理2所示。
断言2:从敌手的视角,$ Gam{e}_{1} $$ Gam{e}_{2} $是计算不可区分的,如果实验$ {\mathrm{E}}\text{x}{\text{p}}_{\mathcal{A},{\mathrm{out}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $的获胜概率是可忽略的,证明如定理3所示。
断言3:从敌手的视角,$ Gam{e}_{1} $$ Gam{e}_{2} $是计算不可区分的,如果实验${\mathrm{ Ex{p}}}_{\mathcal{A},{\mathrm{SE}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $的获胜概率是可忽略的,证明如定理4所示,其中,${\mathrm{ Ex{p}}}_{\mathcal{A},{\mathrm{SE}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $表示基于KH-PRF的分组加密的攻击实验。
定理2 如果TKN20在选择明文攻击下是安全的,那么本方案的离线加密在选择明文攻击下也是安全的。
证明 定理2表明,需要证明对于任何PPT敌手$ \mathcal{A} $,攻击$ {\Pi }_{{\mathrm{off}}} $,则存在一个敌手$ \mathcal{B} $,可以攻击TKN20方案选择密文攻击的安全性。在$ {\mathrm{E}}\text{x}{\text{p}}_{\mathcal{A},{\mathrm{off}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $中,敌手$ \mathcal{B} $扮演敌手$ \mathcal{A} $的挑战者,安全参数为$ \lambda $
设置$ \mathcal{B} $接收来自TKN20挑战者的主公钥mpk,并转发给$ \mathcal{A} $
$ mpk = (Label,\mathbb{G},{[{\boldsymbol{B}}]_2},{[{\boldsymbol{WB}}]_1},{[{{\boldsymbol{B}}^{\boldsymbol{T}}}{\boldsymbol{k}}]_T},H,{F_K}) $
阶段1:该阶段如定义5所示,由于$ {\Pi }_{{\mathrm{off}}} $和TKN20的密钥是相同的,因此,来自$ \mathcal{A} $的任何密钥生成和解密请求,都被传递给TKN20挑战者。
挑战$ \mathcal{B} $选择两个不同的随机消息$ ({m}_{0},{m}_{1}) $,发送给TKN20挑战者,并接收挑战密文:
$ CT = (\mathbb{A},{c_0},{c_1},{\{ {c_{2,j}}\} _{j \in [d]}},{c_{3,i}}) $
其中,$ {c}_{0}={m}_{b}\cdot [{\boldsymbol{r}}^{T}{\boldsymbol{B}}^{T}\boldsymbol{k}{]}_{T} $$ {c}_{1}=[\boldsymbol{B}\boldsymbol{r}{]}_{2} $$ {c}_{2,j}=[\boldsymbol{B}{\boldsymbol{r}}_{j}{]}_{2} $。对于单调策略和非单调策略,有:
$ \begin{aligned} t(i) &= 1: \\ {c_{3,i}}& = ({c_{3,i,1}},{c_{3,i,2}}) = \\ {\text{ }} &\quad ({[{{{\boldsymbol{w'}}}_i} + ({{y'}_i}{{\boldsymbol{U}}_{\varphi (i),0}} + {{\boldsymbol{U}}_{\varphi (i),1}}){{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1}) \\ t(i) &= 0: \\ {c_{3,i}}& = ({c_{3,i,1}},{c_{3,i,2}})= \\ {\text{ }} & \quad({[ - {{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{y'}_i}{{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),1}}{{\boldsymbol{r}}_{\pi (i)}}]_1})\end{aligned}$
然后,$ \mathcal{B} $随机选择$ {z}_{1},\cdots,{z}_{l}\in {\mathbb{Z}}_{p}^{*} $$ {\boldsymbol{z}}_{1}^{\prime},\cdots,{\boldsymbol{z}}_{l}^{\prime}\in {\mathbb{Z}}_{p}^{k+1} $,计算$ C{T}^{*} $
$ \begin{aligned} t(i)& = 1: \\ {c_{3,i,1}}& = {c_{3,i}} - {[{{{\boldsymbol{z'}}}_i}]_1},{c_{3,i,2}} = - {z_i} \cdot {c_{3,i,2}} \\ {c_{4,i}} &= {{{\boldsymbol{z'}}}_i},{c_{5,i}} = {z_i} \\ t(i)& = 0: \\ {c_{3,i,1}} &= {c_{3,i}} + {[{{{\boldsymbol{z'}}}_i}]_1},{c_{3,i,2}} = {c_{3,i,2}} - {[{{{\boldsymbol{z'}}}_i}{z_i}]_1}, \\ {c_{4,i}}& = - {{{\boldsymbol{z'}}}_i},{c_{6,i}} = {{{\boldsymbol{z'}}}_i}{z_i} \end{aligned} $
$ \mathcal{B} $猜测哪条消息被加密$ {b}_{\mathcal{B}}\in \left\{\mathrm{0,1}\right\} $,计算$ Ke{y}_{{\mathrm{guess}}}:= {c}_{0}/{m}_{{b}_{\mathcal{B}}} $。最后,$ \mathcal{B} $$ \mathcal{A} $发送元组$ (Ke{y}_{{\mathrm{guess}}},C{T}^{*}) $
阶段2: $ \mathcal{B} $重复阶段1。
猜测: $ \mathcal{A} $输出一个比特$ {b}_{\mathcal{A}} $。从$ \mathcal{B} $的视角来讲,如果$ {b}_{\mathcal{A}}=0 $,表示$ \mathcal{A} $猜测的$ Ke{y}_{{\mathrm{guess}}} $是真实封装密钥,此时,$ \mathcal{B} $应该输出$ {b}_{\mathcal{B}} $。如果$ {b}_{\mathcal{A}}=1 $,表示$ \mathcal{A} $猜测的$ Ke{y}_{{\mathrm{guess}}} $是随机密钥,此时,$ \mathcal{B} $应该输出$ 1-{b}_{\mathcal{B}} $。因此,$ \mathcal{A} $在实验中的获胜优势$ \epsilon $等价于则$ \mathcal{B} $破坏TKN20的概率。
定理3 如果TKN20在选择明文攻击下是安全的,那么本方案的外包解密在选择明文攻击下也是安全的。
证明 定理3表明,需要证明对于任何PPT敌手$ \mathcal{A} $,攻击$ {\Pi }_{{\mathrm{out}}} $,则存在一个敌手$ \mathcal{B} $,可以攻击TKN20方案选择明文攻击的安全性。在$ {\mathrm{E}}\text{x}{\text{p}}_{\mathcal{A},{\mathrm{out}}}^{{\text{IND-CPA}}}\left({1}^{\lambda }\right) $中,敌手$ \mathcal{B} $扮演敌手$ \mathcal{A} $的挑战者,安全参数为$ \lambda $
设置$ \mathcal{B} $接收来自TKN20挑战者的公共参数,并转发给$ \mathcal{A} $
$ mpk=(Label,\mathbb{G},[\boldsymbol{B}{]}_{2},[\boldsymbol{W}\boldsymbol{B}{]}_{1},[{\boldsymbol{B}}^{\boldsymbol{T}}\boldsymbol{k}{]}_{T},H,{F}_{K}) $
阶段1:该阶段如定义5所示,由于$ {\Pi }_{{\mathrm{out}}} $和TKN20的密钥是相同的,因此,来自$ \mathcal{A} $的任何密钥生成和解密请求,都被传递给TKN20挑战者。
密钥查询$ \mathcal{A} $输入$ {I}_{key} $,TKN20的挑战者运行$ {\mathrm{KeyGen}}\left(msk,{I}_{key}\right) $,将$ s{k}_{x}=(x,{k}_{1},{k}_{2},\{{k}_{3,i}{\}}_{i\in \left[m+1\right]}) $返回给$ \mathcal{B} $。然后,$ \mathcal{B} $随机选择$ z\in {\mathbb{Z}}_{p}^{*} $,计算:
$ \begin{aligned} &{k}_{1}^{\prime}=({k}_{1}{)}^{\tfrac{1}{z}},{k}_{2}^{\prime}=({k}_{2}{)}^{\tfrac{1}{z}},{k}_{3}^{\prime}=({k}_{3}{)}^{\tfrac{1}{z}}\\&a{k}_{x}=z,t{k}_{x}=(x,{k}_{1}^{\prime},{k}_{2}^{\prime},{k}_{3}^{\prime})\end{aligned} $
最后,$ \mathcal{B} $存储$ (i,{I}_{key},a{k}_{x},t{k}_{x}) $到表T中,并返回$ a{k}_{x} $$ \mathcal{A} $
解密查询$ \mathcal{A} $输入$ CT $,TKN20的挑战者运行${\mathrm{ Dec.Out}}(CT,t{k}_{x}) $,输出转换密文$ TC{T}_{{\mathrm{ABE}}} $
$ \begin{aligned}& D_{1, j}=\\&\quad e\left({\sum}_{\substack{\pi(i)=j \\i \in S_1}} c_{3, i, 1} + {\sum}_{\substack{\pi(i)=j \\i \in S_0}} \frac{1}{x_i-y_{\phi^{-1}(\varphi(i))}}\left(y_{\phi^{-1}(\varphi(i))} c_{3, i, 1} + c_{3, i, 2}\right), k_1\right) \\& D_{2, j}=\\&\quad e\left({\sum}_{\substack{\pi i(i)=j \\i \in S_1}} k_{3, \phi^{-1}(\varphi(i))}+{\sum}_{\substack{\pi(i)=j \\i=S_0}} \frac{1}{x_i-y_{\phi-1}(\varphi(i))} k_{\left.3, \phi^{-1}(\varphi(i))\right)}, c_{2, j}\right)^{{T}} \\& T C T_{{\mathrm{A B E}}}=e\left(k_2, c_1\right)^{{T}} / \prod_{j \in[d]}\left(D_{1, j} / D_{2, j}\right)=\left[\frac{1}{\tau} \boldsymbol{r}^{\mathrm{T}} \boldsymbol{B}^{\mathrm{T}} \boldsymbol{k}\right]_T\end{aligned} $
然后,由$ \mathcal{B} $将转换密文转发给$ \mathcal{A} $
挑战$ \mathcal{B} $选择两个不同的随机消息$ ({m}_{0},{m}_{1}) $,发送给TKN20挑战者,接收挑战密文:
$ CT=(\mathbb{A},{c}_{0},{c}_{1},\{{c}_{2,j}{\}}_{j\in \left[d\right]},{c}_{3,i}) $
其中,$ {c}_{0}={m}_{b}\cdot [{\boldsymbol{r}}^{T}{\boldsymbol{B}}^{T}\boldsymbol{k}{]}_{T} $$ {c}_{1}=[\boldsymbol{B}\boldsymbol{r}{]}_{2} $$ {c}_{2,j}=[\boldsymbol{B}{\boldsymbol{r}}_{j}{]}_{2} $,对于单调策略和非单调策略,有:
$ \begin{aligned} t(i) & = 1: \\ {c_{3,i}}& = ({c_{3,i,1}},{c_{3,i,2}}) \\ {\text{ }}& = ({[{{{\boldsymbol{w'}}}_i} + ({{y'}_i}{{\boldsymbol{U}}_{\varphi (i),0}} + {{\boldsymbol{U}}_{\varphi (i),1}}){{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1}) \\ t(i)& = 0: \\ {c_{3,i}}& = ({c_{3,i,1}},{c_{3,i,2}}) \\ {\text{ }} & = ({[ - {{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),0}}{{\boldsymbol{r}}_{\pi (i)}}]_1},{[{{y'}_i}{{{\boldsymbol{w'}}}_i} + {{\boldsymbol{U}}_{\varphi (i),1}}{{\boldsymbol{r}}_{\pi (i)}}]_1})\end{aligned} $
$ \mathcal{B} $猜测哪条消息被加密$ {b}_{\mathcal{B}}\in \left\{\mathrm{0,1}\right\} $,计算$ Ke{y}_{{\mathrm{guess}}}:= {c}_{0}/{m}_{{b}_{\mathcal{B}}} $。最后,$ \mathcal{B} $$ \mathcal{A} $发送元组$ (Ke{y}_{{\mathrm{guess}}},CT) $
阶段2: $ \mathcal{B} $重复阶段1。
猜测$ \mathcal{A} $输出一个比特$ {b}_{\mathcal{A}} $。从$ \mathcal{B} $的视角来讲,如果$ {b}_{\mathcal{A}}=0 $,表示$ \mathcal{A} $猜测的$ Ke{y}_{{\mathrm{guess}}} $是真实封装密钥,此时,$ \mathcal{B} $应该输出$ {b}_{\mathcal{B}} $。如果$ {b}_{\mathcal{A}}=1 $,表示$ \mathcal{A} $猜测的$ Ke{y}_{{\mathrm{guess}}} $是随机密钥,此时,$ \mathcal{B} $应该输出$ 1-{b}_{\mathcal{B}} $。因此,$ \mathcal{A} $在实验中的获胜优势$ \epsilon $等价于则$ \mathcal{B} $破坏TKN20的概率。
定理4 如果基于KH-PRF的分组加密在选择明文攻击下是安全的,那么方案的分组加密在选择明文攻击下也是安全的。
证明 定理4表明,需要证明对于任何PPT敌手$ \mathcal{A} $,攻击本方案的数据加密,则存在一个敌手$ \mathcal{B} $,可以攻击基于KH-PRF的分组加密。本方案采用Boneh等提出的可更新加密,详细的安全证明参考文献[29]

6 实验评估

6.1 理论分析

属性基加密是本方案的核心密码学组件,是资源消耗的主要组成部分。为评估其表现,本节从功能特性、计算效率和通信开销三个维度对其进行理论分析,并与当前较为实用的FAME[33]、ABGW[34]和FABEO[35]方案进行对比。
表1所示,在功能特性上,FAME、ABGW和FABEO方案都满足属性重用和快速解密,但这些方案只支持单调策略。本方案满足表1中的所有性质,能够同时支持计算的高效性、丰富的表达性。
表 1 功能对比

Table 1 Function comparison

方案属性重用非单调策略离线加密外包解密快速解密
FAME
ABGW
FABEO
本方案
表2所示,计算开销对比涉及密钥生成、加密和解密三个部分,其中,$ {E}_{1} $$ {E}_{2} $分别表示$ {\mathbb{G}}_{1} $$ {\mathbb{G}}_{2} $群上的指数操作,$ H $表示哈希到$ {\mathbb{G}}_{1} $的操作,$ P $表示配对操作,$ d $表示属性重用的次数,m表示属性的个数,$ {n}_{1} $$ {n}_{2} $分别表示策略中的属性个数和满足策略的属性阈值,$ {n}_{t} $$ {n}_{f} $分别表示单调策略个数和非单调策略个数,$ {n}^{\prime}={n}_{t}+{n}_{f} $
表 2 计算开销对比

Table 2 Computation cost comparison

方案密钥生成加密解密
FAME$ \left(9m+9\right){E}_{1}+\left(6m+6\right)H+3{E}_{2} $$ 6{n}_{1}{E}_{1} $+$ 6\left({n}_{1}+{n}_{2}\right)H+3{E}_{2} $$ 6P $
ABGW$ (2m+1){E}_{2} $$ 5{n}_{1}{E}_{1} $$ (I+2 $)$ P $
FABEO$ (m+2){E}_{1}+(m+1)H+{E}_{2} $$ 2{n}_{1}{E}_{1}+({n}_{1}+1)H+(d+1){E}_{2} $$ (2I+1 $)$ P $
本方案$ (21m+4){E}_{1}+12mH+3{E}_{2} $$ (13{n}_{t}+10{n}_{f}){E}_{1}+12{n}^{\text{'}}H+(2+2d){E}_{2} $$ \left(4d+1\right)P $
为实现公平比较,本节将本方案$ {\mathrm{KeyGen}}(\cdot ) $$ {\mathrm{Enc}}.{\mathrm{Offine}}\left(\cdot \right)\mathrm{和}{\mathrm{Dec.Out}}(\cdot ) $算法的计算开销与属性基加密的密钥生成、加密和解密算法进行对比。这是因为本方案的密钥生成等价于属性基加密的密钥生成阶段,离线加密等价于属性基加密的加密阶段,只不过策略是随机选择的,外包解密等价于属性基加密的解密阶段,只不过是由CS执行。
对于本方案的其他算法,$ {\mathrm{KeyGen.Random}}(\cdot ) $仅需要在$ {\mathbb{G}}_{1} $上执行$ 4+4m $次指数操作,在$ {\mathbb{G}}_{2} $上执行3次指数操作。$ {\mathrm{Enc.Online}}(\cdot ) $由已知策略的DO执行,只需要在$ {\mathbb{Z}}_{p} $上执行$ 6{n}_{f} $次乘法操作。$ {\mathrm{Dec.User}}(\cdot ) $用户解密由满足策略的DU执行,其需要在$ {\mathbb{G}}_{T} $上执行1次指数运算。
表3所示,通信开销对比涉及到密钥和密文尺寸两个部分,其中,$ \left|{\mathbb{G}}_{1}\right|\mathrm{和}\left|{\mathbb{G}}_{2}\right| $分别表示$ {\mathbb{G}}_{1} $$ {\mathbb{G}}_{2} $的尺寸。为实现公平比较,表3展示的是本方案$ {\mathrm{KeyGen}}(\cdot ) $$ {\mathrm{Enc.Offine}}(\cdot ) $的通信开销。这是因为在$ {\mathrm{KeyGen.Random}}(\cdot ) $中,客户端只得到一个尺寸为$ \left|{\mathbb{Z}}_{p}^{*}\right| $的密钥。在${\mathrm{ Enc.Online}}(\cdot ) $中,客户端的密钥尺寸为$ ({n}_{t}+3{n}_{f}+3n)\left|{\mathbb{Z}}_{p}\right| $。在$ {\mathrm{Dec.Out}}(\cdot ) $中,客户端只得到一个尺寸为$ \left|{\mathbb{G}}_{T}\right| $的密文。
表 3 通信开销对比

Table 3 Communication cost comparison

方案密钥尺寸密文尺寸
FAME$ \left(3m+3\right)\left|{\mathbb{G}}_{1}\right|+3\left|{\mathbb{G}}_{2}\right| $$ 3{n}_{1}\left|{\mathbb{G}}_{1}\right|+3\left|{\mathbb{G}}_{2}\right| $
ABGW$ (m+2)\left|{\mathbb{G}}_{2}\right| $$ 3{n}_{1}\left|{\mathbb{G}}_{1}\right| $
FABEO$ \left(m+1\right)\left|{\mathbb{G}}_{1}\right|+\left|{\mathbb{G}}_{2}\right| $$ {n}_{1}\left|{\mathbb{G}}_{1}\right|+(d+1)\left|{\mathbb{G}}_{2}\right| $
本方案$ \left(4m+4\right)\left|{\mathbb{G}}_{1}\right|+3\left|{\mathbb{G}}_{2}\right| $$ 6{n}^{\text{'}}\left|{\mathbb{G}}_{1}\right|+(4d+4)\left|{\mathbb{G}}_{2}\right| $
综上可得,在密钥生成和加密阶段的计算开销方面,FABEO和ABGW方案较为有效,但这两个方案都不支持非单调策略。当属性重用次数设为1时,本方案的加密开销是FAME方案的2~3倍。但是,由于本方案支持离线加密,客户端只需要在$ {\mathbb{Z}}_{p} $上执行$ 6{n}_{f} $次乘法操作,提高了用户的加密效率。
在解密阶段的计算开销方面,FAME和FABEO较为高效,当属性重用次数设为1时,本方案的解密开销是FABEO的1倍且几乎与FAME等效。同样,由于本方案支持外包解密,满足策略的客户端只需要在$ {\mathbb{G}}_{T} $上执行1次指数运算,提高了用户的解密效率。
在密钥和密文尺寸方面,本方案是FAME的1~2倍,是FABEO的4倍。由于本方案支持外包解密,客户端只得到一个尺寸为$ \left|{\mathbb{Z}}_{p}^{*}\right| $的密钥,在$ {\mathrm{Dec.Out}}(\cdot ) $中,客户端只得到一个尺寸为$ \left|{\mathbb{G}}_{T}\right| $的密文。

6.2 实验结果

本文以配置2.40 GHz的第13代英特尔酷睿i7-13700H处理器和16 GB RAM的联想ThinkBook 14 Gen 5笔记本作为实验环境,使用Ladd等[36]的go代码测试了运算耗时,其曲线为BLS12-381,安全性为128 bit。BLS12-381压缩后的群尺寸分别为$ \left|{\mathbb{G}}_{1}\right| $=48字节、$ \left|{\mathbb{G}}_{2}\right| $=96字节$ \mathrm{和}\left|{\mathbb{G}}_{T}\right| $=576字节,各操作的平均耗时分别为$ {E}_{1} $=0.148 ms、$ {E}_{2} $=0.466 ms、$ {E}_{T} $=0.904 ms、$ H $=0.081 ms和$ P $=1.353 ms。
基于属性的加密和基于KH-PRF的分组加密是本方案的核心密码学组件,本节分别测试了其性能表现。与上一节理论分析中涉及的对比方法一致,在实验中,以属性个数10~100为自变量,比较各方案密钥生成、加密和解密的计算开销,以及密文尺寸和密钥尺寸的大小。为了对比方便,设置重用次数为1。在加密和解密阶段,分别将策略设置为全单调(全单)和全非单调(全非)两种类型进行测量。
图2描述了密钥生成的计算耗时,结果显示基于10~100个属性,FAME、ABGW、FABEO和本方案的密钥生成分别需要0.020~0.190 s、0.010~0.090 s、0.003~0.020 s和0.040~0.410 s。对于$ {\mathrm{KeyGen.Random}}(\cdot ) $,其耗时为0.008~0.060 s。
图 2 密钥生成执行时间

Fig.2 Execution time for key generation

图3描述了加密的计算耗时,结果显示基于10~100个属性,FAME、ABGW、FABEO、本方案/全单和本方案/全非的密文生成分别需要0.020~0190 s、0.001~0.074 s、0.004~0.040 s、0.026~0.250 s和0.030~0.300 s。对于全非单调策略的$ {\mathrm{Enc.Online}}(\cdot ) $,其耗时为0.060~0.600 ms。注意,若加密策略为全单调策略,加密操作只涉及加法操作,计算开销更低。
图 3 加密执行时间

Fig.3 Execution time for encryption

图4描述了解密阶段的计算耗时,结果显示基于10~100个属性,FAME、ABGW、FABEO、本方案/全单和本方案/全非的解密分别需要0.054 s、0.010~0.090 s、0.030 s、0.080~0.048 s和0.026~0.230 s。由于FAME和FABEO支持快速解密,解密时间与策略和属性无关,因此,其解密时间是常数级。对于$ {\mathrm{Dec.User}}(\cdot ) $,解密操作只需要在$ {\mathbb{G}}_{T} $上执行1次指数运算,大约为0.900 ms。
图 4 解密执行时间

Fig.4 Execution time for decryption

由于基于KH-PRF的分组加密的加密、解密和更新算法性能一致,这里以加密算法作为评估标准,选择加密文本大小分别为10 KB、100 KB和1 MB,加密时间大约为0.084 s、0.800 s和8.500 s。作为对比,本节采用AES-CTR-128进行测试,选择加密文本大小分别为10 KB、100 KB和1 MB,加密时间大约为0.120、1.000和11.000 ms。实验数据表明,尽管AES-CTR-128在加密效率上占据优势,但其无法支持云环境下加密数据的密钥轮换,限制了云环境下的动态管理需求。
图5描述了密钥尺寸,结果显示基于10~100个属性,FAME、ABGW、FABEO和本方案的密钥尺寸分别为14.63~115.89 Kb、9.00~76.5 Kb、4.88~38.63 Kb、18.75~153.75 Kb。由于本方案支持外包解密,因此无论属性个数多少,DO的密钥总为48字节。
图 5 密钥尺寸

Fig.5 Size of key

图6描述的是密文尺寸,并针对两种策略类型进行测量。结果显示基于10~100个属性,FAME、ABGW、FABEO、本方案/全单和本方案/全非的密文尺寸分别13.50~114.75 Kb、22.50~225.00 Kb、5.25~39.00 Kb、28.50~231.00 Kb。由于本方案支持外包解密,因此,无论属性个数多少,DU得到的密文尺寸总是4.5 Kb。
图 6 密文尺寸

Fig.6 Size of ciphertext

综上,在属性设置为100时,得益于离线加密,DU在最坏情况下只需要0.600 ms就能够快速组装密文。得益于快速解密,当属性重用次数为1时,CS部分解密时间为0.048 s,当属性重用次数为d时,解密时间也只有4d倍。得益于外包解密,DU在解密阶段,密钥尺寸、密文尺寸和解密耗时都与属性个数无关,恒定为48字节、4.5 Kb和0.900 ms。

7 结束语

本文提出了一种面向工业物联网高效可撤销的属性访问控制方案。首先,采用支持非单调策略约束和属性重用的属性基加密来提高访问策略的逻辑表达力,并融合离线加密与外包解密技术实现了客户端计算开销的有效卸载。其次,设计一种双层密钥撤销机制,通过对属性层和数据层密钥的协同控制,保障了用户撤销的前向安全性。最后,通过安全证明和实验评估表明了本方案的安全性和高效性。
在未来的工作中,我们将考虑系统属性和用户属性撤销机制,并权衡其中的安全和效率问题。这两种撤销机制考虑属性的关联性问题,在撤销用户属性时,不能影响该用户剩余属性集和拥有该属性的其他用户的解密权限。在撤销系统属性时,需要撤销拥有该属性用户的解密能力并对访问策略涉及该属性的密文进行更新。对这两种撤销机制的研究,能进一步满足动态访问控制的需求。
1
SUN D, HU J, WU H, et al. A comprehensive survey on collaborative data-access enablers in the IIoT[J]. ACM Computing Surveys, 2023, 56 (2): 1- 37.

2
MISHRA N, ISLAM S K H, ZEADALLY S. A survey on security and cryptographic perspective of Industrial-Internet-of-Things[J]. Internet of Things, 2024, 25, 101037.

DOI

3
刘奇旭, 靳泽, 陈灿华, 等. 物联网访问控制安全性综述[J]. 计算机研究与发展, 2022, 59 (10): 2190- 2211.

DOI

LIU Q X, JIN Z, CHEN C H, et al. Survey on Internet of Things access control security[J]. Journal of Computer Research and Development, 2022, 59 (10): 2190- 2211.

DOI

4
房梁, 殷丽华, 郭云川, 等. 基于属性的访问控制关键技术研究综述[J]. 计算机学报, 2017, 40 (7): 1680- 1698.

DOI

FANG L, YIN L H, GUO Y C, et al. A survey of key technologies in attribute-based access control scheme[J]. Chinese Journal of Computers, 2017, 40 (7): 1680- 1698.

DOI

5
BETHENCOURT J,SAHAI A,WATERS B. Ciphertext-policy attribute-based encryption[C]//2007 IEEE symposium on security and privacy (SP’07). IEEE,2007:321-334.

6
GOYAL V,PANDEY O,SAHAI A,et al. Attribute-based encryption for fine-grained access control of encrypted data[C]//Proceedings of the 13th ACM conference on Computer and communications security. New York:Association for Computing Machinery,2006:89-98.

7
AGHILI S F, SEDAGHAT M, SINGELéE D, et al. MLS-ABAC: Efficient multi-level security attribute-based access control scheme[J]. Future Generation Computer Systems, 2022, 131, 75- 90.

DOI

8
ZHU Y, YU R, MA D, et al. Cryptographic attribute-based access control (ABAC) for secure decision making of dynamic policy with multiauthority attribute tokens[J]. IEEE Transactions on Reliability, 2019, 68 (4): 1330- 1346.

DOI

9
王生玉, 汪金苗, 董清风, 等. 基于属性加密技术研究综述[J]. 信息网络安全, 2019, 19 (9): 76- 80.

DOI

WANG S Y, WANG J M, DONG Q F, et al. A survey of attribute-based encryption technology[J]. Netinfo Security, 2019, 19 (9): 76- 80.

DOI

10
RASORI M, LA MANNA M, PERAZZO P, et al. A survey on attribute-based encryption schemes suitable for the internet of things[J]. IEEE Internet of Things Journal, 2022, 9 (11): 8269- 8290.

DOI

11
ZHANG Y, DENG R H, XU S, et al. Attribute-based encryption for cloud computing access control: A survey[J]. ACM Computing Surveys (CSUR), 2020, 53 (4): 1- 41.

12
李莉, 朱江文, 杨春艳. 基于属性加密的可撤销机制研究综述[J]. 信息网络安全, 2023, 23 (4): 39- 50.

DOI

LI L, ZHU J W, YANG C Y. Overview of research on the revocable mechanism of attribute-based encryption[J]. Netinfo Security, 2023, 23 (4): 39- 50.

DOI

13
GARRISON W C,SHULL A,MYERS S,et al. On the practicality of cryptographically enforcing dynamic access control policies in the cloud[C]//2016 IEEE Symposium on Security and Privacy (SP). IEEE,2016:819-838.

14
QI S, ZHENG Y. Crypt-DAC: Cryptographically enforced dynamic access control in the cloud[J]. IEEE Transactions on Dependable and Secure Computing, 2021, 18 (2): 765- 779.

DOI

15
MIAO Y, TONG Q, CHOO K K R, et al. Secure online/offline data sharing framework for cloud-assisted industrial Internet of Things[J]. IEEE Internet of Things Journal, 2019, 6 (5): 8681- 8691.

DOI

16
LI T, ZHANG J, SHEN Y, et al. Hierarchical and multi-group data sharing for cloud-assisted industrial internet of things[J]. IEEE Transactions on Services Computing, 2023, 16 (5): 3425- 3438.

DOI

17
LI Q, ZHANG Q, HUANG H, et al. Secure, efficient, and weighted access control for cloud-assisted industrial IoT[J]. IEEE Internet of Things Journal, 2022, 9 (18): 16917- 16927.

DOI

18
RANI S, SRIVASTAVA G. Secure hierarchical fog computing-based architecture for industry 5.0 using an attribute-based encryption scheme[J]. Expert Systems with Applications, 2024, 235, 121180.

DOI

19
杜瑞忠, 闫沛文, 刘妍. 雾计算中细粒度属性更新的外包计算访问控制方案[J]. 通信学报, 2021, 42 (3): 160- 170.

DOI

DU R Z, YAN P W, LIU Y. Fine-grained attribute update and outsourcing computing access control scheme in fog computing[J]. Journal on Communications, 2021, 42 (3): 160- 170.

DOI

20
HOHENBERGER S,WATERS B. Online/offline attribute-based encryption[C]//17th International Conference on Practice and Theory in Public-Key Cryptography. Berlin, Heidelberg:Springer,2014:293-310.

21
GREEN M,HOHENBERGER S,WATERS B. Outsourcing the decryption of ABE ciphertexts[C]//20th USENIX Security Symposium. Berkeley:USENIX Association,2011:34.

22
MA R, ZHANG L, WU Q, et al. BE-TRDSS: Blockchain-enabled secure and efficient traceable-revocable data-sharing scheme in industrial internet of things[J]. IEEE Transactions on Industrial Informatics, 2023, 19 (11): 10821- 10830.

DOI

23
WANG Z, FU Y. A unified attribute-based encryption data sharing scheme matching industrial internet framework[J]. IEEE Internet of Things Journal, 2023, 11 (5): 9153- 9170.

24
TIAN T, SHEN Y, GAO H, et al. Attribute-based heterogeneous data privacy sharing in blockchain-assisted industrial IoT[J]. IEEE Internet of Things Journal, 2024, 2 (8): 10404- 10419.

25
张伟航,钟永彦,向元柱,等. 边云辅助下的可撤销属性加密方案[OL]. [2025-03-05]. http://www.ecice06.com/CN/10.19678/j.issn.1000-3428.0069341.

ZHANG W H ,ZHONG Y Y ,XIANG Y Z,et al. Reversible attribute encryption scheme assisted by edge and cloud[OL]. [2025-03-05]. http://www.ecice06.com/CN/10.19678/j.issn.1000-3428.0069341.

26
MYERS,STEVEN,ADAM S. Practical revocation and key rotation[C]//Cryptology–CT-RSA 2018. Springer International Publishing,2018:157-178.

27
RASO E,BRACCIALE L,LORETI P,et al. ABEBox:A data driven access control for securing public cloud storage with efficient key revocation[C]//Proceedings of the 16th International Conference on Availability,Reliability and Security. New York:Association for Computing Machinery,2021:1-7.

28
TOMIDA J, KAWAHARA Y, NISHIMAKI R. Fast, compact, and expressive attribute-based encryption[J]. Designs, Codes and Cryptography, 2021, 89, 2577- 2626.

DOI

29
BONEH D,LEWI K,MONTGOMERY H,et al. Key homomorphic PRFs and their applications[C]//Annual Cryptology Conference. Berlin,Heidelberg:Springer,2013:410-428.

30
WATERS B. Ciphertext-policy attribute-based encryption:An expressive,efficient,and provably secure realization[C]//International Workshop on Public Key Cryptography. Berlin,Heidelberg:Springer,2011,6571:53-70.

31
BEIMEL A. Secure schemes for secret sharing and key distribution[D]. Israel:Israel Institute of Technology,1996.

32
KOWALCZYK L, WEE H. Compact adaptively secure ABE for NC 1 from k-Lin[J]. Journal of Cryptology, 2020, 33 (3): 954- 1002.

DOI

33
Agrawal S, Chase M. FAME: Fast attribute-based message encryption[C]//Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security. New York: Association for Computing Machinery, 2017: 665-682.

34
Ambrona M, Barthe G, Gay R, et al. Attribute-based encryption in the generic group model: Automated proofs and new constructions[C]//Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security. New York: Association for Computing Machinery, 2017: 647-664.

35
Riepel D, Wee H. FABEO: Fast attribute-based encryption with optimal security[C]//Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. New York: Association for Computing Machinery, 2022: 2491-2504.

36
LADD W,VERMA T,VENEMA M,et al. Portunus:Re-imagining access control in distributed systems[C]//2023 USENIX Annual Technical Conference. Berkeley:USENIX Association,2023:35-52.

文章导航

/