APP下载

基于离线/在线加密技术的适应性安全的密文策略属性加密方案*

2020-07-19王光波刘永庆

通信技术 2020年7期
关键词:密文离线密钥

李 锋,王光波,刘永庆

(1.中国人民解放军31008 部队,北京 100089;2.中国人民解放军91977 部队,北京 100841)

0 引言

属性加密方案(Attribute Based Encryption,ABE)是由Sahai 等人在2005 年提出的一种对身份加密方案[1]进行扩展的全新的密码学方案[2],该方案,能够实现更加细粒度的访问控制,因此,自提出后得到了学术界广泛的研究。ABE 方案根据访问控制策略[3]与密文和密钥的不同关系,可以分为密钥策略属性加密方案[4](Key-Policy Attribute Based Encryption,KP-ABE)和密文策略属性加密方案[5](Ciphertext-Policy Attribute Based Encryption,CPABE),其中CP-ABE 方案可以实现由用户自己定义访问控制策略,因此在云存储[6]环境下得到了广泛应用。另外,ABE 方案的安全性由低到高可以分为启发式安全、选择性安全和适应性安全。因此,本文选取能够实现适应性安全的经典CP-ABE 方案[7]进行研究和改进,具有典型的示范意义。但是,在原始方案中,密文长度和密文计算量都与需要加密的访问控制矩阵A的行向量l成正比,随着l的增加而变大,加重了系统负担。为了提高方案的加密性能,本文提出了一种基于离线/在线技术的CP-ABE 方案,对加密算法进行了改进,分为离线和在线两个加密过程。其中,离线加密可以在准备阶段完成加密预处理,在线加密则可以基于预处理结果快速高效地完成最终加密。

1 相关定义

本节首先对方案将用到的合数阶双线性群和Decisional Bilinear Diffie-Hellman(DBDH)假设进行介绍。

1.1 合数阶双线性群

定义1。令 (p1,p2,p3,G, GT,e)表示合数阶双线性群参数,其中p1,p2和p3代表3 个不同的大素数,G 和TG 代表2个阶为N=p1p2p3的合数群,e:G×G→GT代表某个双线性映射,并且需要满足如下条件:

(1)任意选取参数x,y∈G和j,k∈NZ,满足等式e(xj,yk)=e(x,y)jk。

(2)存在某个参数g∈G满足e(g,g)阶为N。

1.2 静态假设

本节主要描述方案证明所基于的3 个静态假设如下。

假设1:给定假设参数如下:

定义攻击者A 攻破假设1 的优势为:

假设2:给定假设参数如下:

定义攻击者A 攻破假设2 的优势为:

假设3:给定假设参数如下:

定义攻击者A 攻破假设3 的优势为:

2 基于离线/在线加密的CP-ABE 方案

本节首先给出了基于离线/在线加密的适应安全性CP-ABE 方案的算法定义,接着,给出了方案的安全模型,并对方案进行了具体的构造,最后,对方案进行了安全证明和性能分析。

2.1 算法定义

本小节给出能够实现离线/在线加密的追踪性密文策略属性加密方案的算法定义,主要包括以下5 个多项式时间算法。

(1)CP-ABE.Setup(GDS,U)→(PP,MK)

系统参数设置算法以群描述参数GDS和属性集合U为输入,最后算法输出系统公开密钥PP和主密钥MK。

(2)CP-ABE.GenKey(S,MK,PP)→(SKS)

密钥生成算法以用户属性集合S、主密钥MK和系统公开密钥PP为输入,最后,算法输出用户解密密钥SKS。

(3)CP-ABE.OfflineEncrypt(PP)→(ICH)离线加密算法以系统公开密钥PP为输入,最后,算法输出预处理的中间密文ICH。

(4)CP-ABE.OnEncrypt(M,(A,ρ),ICH,PP)→CH(A,ρ)

在线加密算法以明文消息M、访问控制策略(A,ρ)、中间密文ICH和系统公开密钥PP为输入。最后,加密算法基于访问控制策略(A,ρ)和中间密文ICH加密明文消息M后输出最终密文CH(A,ρ)。

(5)CP-ABE.Decrypt(CH(A,ρ),SKid,S,PP)→M

解密算法以访问控制策略(A,ρ)下的密文头CH(A,ρ)、属性集合S下的解密密钥SKS和系统公开密钥PP为输入,若属性集合S满足访问控制策略(A,ρ),那么算法解密成功输出明文消息M。

2.2 安全模型定义

本节将在标准模型下对基于离线/在线加密的适应安全性CP-ABE 方案进行证明,其证明基于Lewko等人提出的标准的适应安全性CP-ABE方案[7]进行构造,该安全模型的具体描述如下:

参数设置:仿真者B 运行CP-ABE.Setup算法,生成公开密钥PP和主密钥MK。

密钥查询阶1:攻击者A 适应性地提交一系列的与属性集合(S1,S2,…,Sq1)有关的密钥查询。

密文挑战:A 提交挑战明文M0、M1和访问策略 (A*,ρ*),并且限制如下:任何在密钥查询1 中提交的属性集合(S1,S2,…,Sq1)都不能满足访问策略(A*,ρ*)。然后,仿真者B 随机选择参数β∈{0,1},并加密Mβ,生成挑战密文CT*。最后,B 将CT*发送给A。

密钥查询2:继续进行与密钥查询1 类似的密钥查询。

猜测:A 输出对β的猜测β′∈{0,1}

2.3 方案构造

本文所提方案主要包括以下5 个算法。

(1)CP-ABE.Setup(GDS,U)→(PP,MK)

系统参数设置算法以群描述参数GDS=((N=p1p2p3,G,TG,e),g,p1,p2,p3)和属性集合为输入。然后,算法随机选择指数a,和随机元素。对于每个属性i∈U,算法随机选择指数。最后,算法设置主密钥为MK=(α,X3),并设置系统公开密钥如下:

(2)CP-ABE.GenKey(S,MK,PP)→(SKS)

密钥生成算法以用户属性集合S、主密钥MK和系统公开密钥PP为输入。算法首先随机选择参数。最后,算法设置用户私钥如下:

(3)CP-ABE.OfflineEncrypt(PP)→ICH

离线加密算法以系统公开密钥PP为输入。首先,我们构造一个特定场景的离线加密系统,该系统假设最大可能的属性集合为P。对于每个属性i∈P,随机选择,然后进行如下密文组件计算:

(4)CP-ABE.OnEncrypt(M,(A,ρ),ICH,PP)→CH(A,ρ)

在线加密算法以以明文消息M、访问控制策略(A,ρ)、离线加密阶段的中间密文ICH和系统公开密钥PP为输入,其中A是一个l×n阶矩阵,且满足l≤|P|。加密算法首先选择随机参数,并计算密文组件C1=gs。然后,算法随机选择向量,并且对A的每一行Ai,计算内积,并计算密文组件。最后,算法设置最终密文为:

(5)CP-ABE.Decrypt(CH(A,ρ),SKid,S,PP)→M

解密算法以访问控制策略CH(A,ρ)=(C,C1,{C2,i,C3,i,C4,i}1≤i≤l)、解密密钥SKS=(K,K1,{K2,i}i∈S)和系统公开密钥PP为输入,若属性集合S满足访问控制策略(A,ρ),那么算法设置I={i:ρ(i)∈S},并在多项式时间内计算参数使以下等式成立:。然后算法计算:

最后,算法输出明文消息M如下:

2.4 安全性证明

本节主要对所提方案进行安全性证明,将本文方案(记为Σoocpabe)的安全性规约到原始CP-ABE方案[7](记为Σcpabe)的安全性。

证明:假设存在某个攻击者A 能够以不可忽略的优势AduAΣoocpabe攻破方案Σoocpabe,那么我们同样可以构造算法B 以优势AduBΣcpabe攻破方案Σcpabe,并且AduBΣcpabe等于AduAΣoocpabe。

参数阶段:仿真者B向方案Σcpabe查询公开密钥,得到相应的公开密钥PP=((N,G,TG,e),g,ga,{Ti=gti}i∈U,Λ=e(g,g)α1)后,B 将PP发送给攻击者A。

查询查询1:当A 向B 提交属性集合S进行密钥查询时,B 将S提交给方案Σcpabe,并得到如下形式的解密密钥:

最后,B 将解密密钥SKS发送给A。

得到CT´后,B 随机选择参数,并计算:

最后B 将挑战密文CT发送给攻击者A。

密钥查询2:与密钥密钥查询1 类似。

猜测:攻击者A 输出值β′∈{0,1}作为对β的猜测,然后B 将β′发送给方案Σcpabe作为输出。

从上述证明过程可以看出,本文构造的公开参数、密钥和挑战密文与文献[7]具有一样的分布,因此,优势满足AduBΣcpabe=AduAΣoocpabe。

3 方案分析

本节将对提出的基于离线/在线加密的适应安全性CP-ABE 方案与文献[7]提出的原始适应安全性CP-ABE 方案进行具体的性能分析,包括加密计算量和密文长度。E代表 G下的指数计算,ET代表GT下的指数计算,| G|代表 G中的元素长度,| GT|代表TG 中的元素长度,l代表访问控制策略(A,ρ)中矩阵A的行数,|P|代表离线加密阶段假设的属性集合规模,代表中的元素长度。

如表1 所示为本节提出的基于离线/在线加密的适应安全性CP-ABE 方案与文献[7]提出的原始适应安全性CP-ABE 方案进行的性能对比,虽然为了实现离线/在线的加密操作,本节提出的基于离线/在线加密的方案需要增加额外的参数,因此密文长度要高于原始方案,但是采用了离线加密技术,在线加密的计算量要远远小于原始方案的加密计算量。

表1 性能对比

4 结语

本文针对CP-ABE 加密性能问题,提出了一种新的CP-ABE 加密技术,将CP-ABE 方案的加密算法分为两个阶段:离线加密和在线加密。其中,离线加密可以在未得到具体加密访问结构的前提下,完成大部分的加密预处理计算,在线加密则可以利用离线加密的计算结果,快速高效地完成最终加密,大大提高了CP-ABE 方案的加密性能。

猜你喜欢

密文离线密钥
一种支持动态更新的可排名密文搜索方案
幻中邂逅之金色密钥
幻中邂逅之金色密钥
基于模糊数学的通信网络密文信息差错恢复
异步电机离线参数辨识方法
密码系统中密钥的状态与保护*
基于网络报文流量的协议密文分析方法
浅谈ATC离线基础数据的准备
密钥共享下跨用户密文数据去重挖掘方法*
互联互通车载控制器离线数据自动生成方法研究