基于身份加密的组合文档安全删除方案
2021-09-13戴素芬沈薇薇
戴素芬 沈薇薇
摘 要:文章针对可公开发布的组合文档(Publicly Posted Composite Documents,PPCD)在用戶设定的有效期后的安全删除问题,将基于身份加密系统(Identity-Based Encryption,IBE)、云存储系统(Cloud Storage System,CSS)、随机对称加密密钥以及对象存储系统(Object Storage System,OSS)进行结合,同时引入分安全等级思想,提出基于身份加密的组合文档安全删除方案(ICDSS);通过对该方案的综合性分析,证明方案的安全性和可行性。
关键词:PPCD;安全删除;IBE;OSS
0 引言
组合文档是由多个文档组件组成,并由分散在世界各地的顾问、合作伙伴以及顾客等操作,操作的过程可跨越多个不安全的区域。同时,云环境中涉及有商业机密、个人隐私等重要的隐私性信息,例如政府的有关情报、企业新产品的相关定价策略、知识产权或是个人电子病历等[1]。PPCD是近年新提出的一种组合文档,而在PPCD完成相应的工作之后,其安全删除是一个必须解决的问题。
数据安全删除指的是能够在用户设置的有效时间后实现主动删除,最具代表性的是Vanish系统,而该方案的缺陷是数据密文都存储在CSS上。针对此问题,及专家提出SSDD方案[3]。同时,由于Vanish系统中使用DHT网络存在Sybil攻击,专家提出SelfDoc方案[4]。然在上述文献方案中密钥的有效时间由DHT网络决定,而不是用户指定。针对该问题,本文提出ICDSS方案。
1 预备知识
1.1 PPCD技术
PPCD[3]主要由3个部分组成。
入口表:为文档参与者提供一个可以快速定位或识别对应映射记录的记录名。
映射记录:存储文档参与者获得密钥到文档组件的映射。
文档组件:PPCD由多个文档组件组合而成,且根据文档参与者的权限访问对应的文档组件。
本文对PPCD进行分安全等级,引入PPCD分等级的新结构如图1所示。并使用同一个随机对称加密密钥对位于同一安全等级的文档组件进行加密,达到减少随机对称加密密钥的数量以及管理随机对称加密密钥的开销的目的。
1.2 OSS
OSS[5]主要由以下3个实体组成:
(1)用户/应用程序;
(2)元数据服务器;
(3)存储节点。每个存储节点是一个对象存储设备。其中的主动存储对象(Active Storage Object,ASO)是根据用户对象拓展的,用户根据需要设定时间属性(time-to-live,TTL),ASO可以实现在用户设定的有效时间后主动安全删除数据。
2 ICDSS方案的设计
定义PPCD安全主动删除对象(PPCD Secure-destruction Object,CDSO):首先,运用特定的封装算法对PPCD进行封装得到封装密文;其次,将其中的一部分封装密文运用相应的算法定义为CDSO,并存储在CSS上,在文档拥有者指定的有效期后变得不可读。
2.1 方案的构造模型
本方案的构造模型如图2所示,主要包括以下6个实体。
(1)PPCD文档创建者:完成将CDSO发送到CSS上存储,同时将提取密文和随机对称加密密钥密文做处理后的混合密文份额发送到OSS上存储,以及指定混合密文份额的TTL和授予不同PPCD文档参与者相应的访问权限。
(2)PPCD文档参与者:根据具备的访问权限,在有效期内对文档进行操作。(3)PKG:生成具有访问权限文档参与者的公钥和私钥。(4)CSS:存储CDSO。(5)OSS:存储混合密文份额和实现在TTL后实现主动删除。(6)潜在敌手:分别为对OSS和CSS进行攻击。
2.2 方案算法的具体描述
(1)Setup(Θ)
选择一个足够大的安全参数Θ作为算法的输入,算法根据Θ生成混合密文份额为n个、每次从密文中提取的bit数为ε、需要提取的次数共为φ、设置门限值为u、一个Hash函数H:{0,1}*→{0,1}m、N个随机对称加密密钥k1,…,ki,…,kN,其中1
文档创建者根据所有的文档组件具有不同的隐私程度将PPCD分为N个不同安全等级的文档组件mi∈M(1≤i≤N),然后使用同一个ki(1≤i≤N)将具有相同安全等级的文档组件进行加密。相比将不同的文档组件使用不同的ki进行加密,减少了使用ki的数量和管理ki的开销。
(2)Encrypt(ψ,ki,mi)→C
将ψ、N个ki以及mi,其中1
(3)Partition(C,ψ)→(C=(D1,…,Di,…,Ds))
将ψ和C作为算法的输入,算法将C分成大小均为ρbit的块,假如密文的最后一块的大小不足ρbit,使用0bit填充,因此,分成的所有密文块长度是相等的,假设共分成s块,则将C的形式定义为:C=(D1,…,Di,…,Ds)。
(4)Extract(C=(D1,…,Di,…,Ds),ψ)→(Ced,Cf)
将ψ和C=(D1,…,Di,…,Ds)作为算法的输入,其中i=1,…,φ (φ
(5)QKDF(e(α,β))→K
文档创建者根据文档组件的安全等级赋予具备访问权限的文档参与者的身份,例如在本方案中应用的是文档参与者的ID,用以生成该文档参与者的伪私有密钥r;接着,应用PKG的系统公钥y,生成该文档参与者的IBE加密密钥K=QKDF(eH(ID)r,y));最后,文档创建者根据伪私有密钥r计算得出一个伪公钥z=gr,并将该伪公钥安全地传送给对应的文档参与者。
(6)IBEEncrypt(K,ki)→Ck
将上述得到的K作为算法的输入,利用同一密钥生成算法QKDF,根据不同的身份D计算得出不同的K用以将对应的ki进行加密,其中1≤i≤N,生成对称加密密钥密文Cki,最后将所生成Cki组合得出密钥密文Ck。
(9)MixSharesDistribute(Cms)→msi
将以上得到的Cms作为算法的输入,算法通过将Cms与OSS系统中的存储节点进行创建连接。如果能够创建连接成功则选择应用该存储节点;根据预先设置的TTL来创建OSS并将Cms发送到对应的存储节点上进行存储;对节点中的对象进行标记;将所有IBE的加密密钥K和ki都删除。当预先设置的TTL为零时,系统将触发OSS中的Cms进行主动删除。
(10)CDSOEncapsulate(ψ,L,Cf)→CDSO
将ψ,一个随机的密钥定位器L以及Cf作为算法的输入,应用特定的封装算法对其进行封装,然后将其形式定义为:CDSO=(ψ,L,Cf),并将CDSO发送到CSS上进行存储。
(11)CDSODecapsulate(CDSO)→Cf
在PPCD的有效期内,通过对文档参与者的访问权限进行验证,然后根据其访问权限可从CSS上获取对应的CDSO,算法应用L对其进行解封装,最终解封装出Cf。
(12)ExtractShares→(Ced,Ck)
在PPCD有效期内,首先,OSS系统对文档参与者的访问权限进行验证后,通过获取足够多的Cms,即大于或等于u个的msi;然后,应用拉格朗日插值法得出φ+1个的多项式,得到Ced和Ck;最后,将Ced和Cf进行重构得出C。
(13)QKDF(e(α,β))→K'
具有访问权限的文档参与者可以得到伪公钥z=gr,并且通过身份验证后可以从PKG上获取其身份IDi对应的私钥kIDi=H(IDi)x∈G1,最后算法将计算出K'=QKDF(e(kIDi,z))。
(14)IBEDecrypt(K,Ck)→ki
根据双线性对函数e的性质,得出e(kIDi,z)= e(H(IDi)r,y),即K'=K,则算法利用K'解密Ck后可以获得原始的N个ki(1≤i≤N)。
(15)Recover(ψ,ki,C)
将ψ、N个ki(1≤i≤N)以及C作为算法的输入,算法应用对应的ki解密相应的Cpi得到mi,最后将解密好的N个文档组件集合后得到原始PPCD明文M。
3 ICDSS方案的综合性分析
3.1 方案的安全性分析
3.1.1 抵抗传统算法攻击的安全性分析
在本方案中,首先,使用同一个对称加密密钥将具有相同安全等级的文档组件进行加密,同时,利用IBE算法将对称加密密钥进行加密;接着,利用特定的混合算法将密钥密文和提取密文做相应的混合处理。所以,如果无法获取完整的密文和解密密钥,将不能解密出原始的明文。
在本方案中利用特定的算法使PPCD的密文变得不完整,且密钥空间的大小是由密钥密文和提取密文做混合处理得到的混合密文的长度决定的。这样加大了密钥空间,使得蛮力攻击变得更加困难。因此,该方案可有效抵抗传统的蛮力攻击。
同时,在本方案中没有将完整的密文存储在OSS系统上。因此,也可有效抵抗传统的密码分析攻击。
3.1.2 在任意时刻抵抗攻击的安全性分析
该方案可抵抗第三种类型的攻击,即在PPCD的全生命周期内,同时对CSS和OSS进行攻击。假设在PPCD全生命周期内的某一时刻,潜在敌手同时对CSS和OSS发起攻击,并获得足够多的混合密文份额和CDSO,但由于PKG是可信的,因此潜在敌手不可能得到具有访问权限的文档参与者的IBE私钥,从而无法解密出原始的明文。因此,该方案可以同时抵抗潜在敌手对CSS和OSS的攻击,达到本方案的整体安全。
综合以上的论述,证明该方案是安全的。
3.2 方案的性能试验
本方案只对应用到的关键算法进行循环试验,执行300次后取平均值。本方案对PPCD进行分安全等级,在试验时将其分成4个不同的安全等级,即令N=4,门限值u=10,提取密文的次数φ=20。试验得到位于4个不同的安全等级的文档组件的时间开销,如表1所示。
实验结果显示,当4个位于不同安全等级的文档组件的大小越大时,使用对称加密密钥进行加密的时间也越大,但是,相比引入IBE系统后方案获得的安全性,此时间开销是合理的。
4 结语
本文针对PPCD在全生命周期内的安全问题提出ICDSS方案,相比已有的方案,本方案将IBE系统、CSS、OSS、对称加密密钥以及引入多级安全思想等结合起来实现,并对方案的综合性进行分析和试验。
[参考文献]
[1]BALINSKY H,CHEN L,SIMSKE S J.Premature silent workflow termination in publicly posted composite documents[C].Alaska: In Proc.of the 2011 IEEE International Conference on Systems,Man,and Cybernetics(SMC),2011(4):1292-1297.
[2]GEAMBASU R,KOHNO T,LEVY A,et al.Vanish:Increasing data privacy with self-destructing data[C].Montreal:In Proc.of the 18th USENIX Security Symposium,2009(3):299-315.
[3]WANG G,YUE F,LIU Q.A secure self-destructing scheme for electronic data[C].Hong Kong:Journal of Computer and System Sciences,2013(2):279–290.
[4]熊金波,姚志強.基于属性加密的组合文档安全自毁方案[J].电子学报,2014(2):366-376.
[5]ZENG L,CHEN S,WEI Q,et al.SeDas:A self-destructing data system based on active storage framework[J].IEEE Transactions on Magnetics,2013(6):2548-2554.
(编辑 傅金睿)