时间:2024-05-04
赵郑营,曹伯强
(河南大学计算机与信息工程学院,开封 475004)
现如今,网络是人们信息交换的主要通信平台,人们可以通过网络平台进行数据上传、下载、搜索等操作进行数据资源的交换,以满足人们获取信息的需求。大量的信息在网络上传递、存储,会涉及个人隐私、数据安全保密等问题。为了解决这个问题,我们可以使用密码学对信息进行加密处理,达到安全防范的目的。加密技术分为私钥加密和公钥加密。早期的云存储加密只是在网络通信中采用HTTPS协议进行加密,没有对数据本身进行处理。我们可以在数据加密的基础上采用访问控制策略。为了简化公钥加密系统中密钥管理,身份基加密在1984年被首次提出,即用户以自身的身份信息作为公钥。身份基加密减少了证书权威机构绑定身份与公钥的步骤。
属性基加密(Attribute-Based Encryption,ABE)[1],是一种特殊的公钥加密方案,既能保护数据拥有者的数据安全,还能够实现数据细粒度的访问控制。属性基加密可分为基于密文的属性基加密和基于密钥的属性基加密。高效动态的属性撤销方案是ABE的重要组成部分,是ABE应用的难点之一,所以制定出适应多种应用环境的且高效的属性撤销方案是非常有意义的。GOya1等人[2]和Bethencourt等人[3]在原有ABE基础上提出了基于密钥策略的ABE加密算法KP-ABE和基于密文策略的ABE加密算法CP-ABE。KP-ABE是用户的私钥与访问策略绑定在一起,密文与属性集合绑定在一起,与密文相关的属性集合满足私钥的绑定才能解密。CP-ABE是密文与访问控制结构绑定在一起,用户私钥与属性集合绑定在一起。这是两者的不同之处。
在实际应用系统中,一个用户可以拥有多个不同的属性,同一个属性可以被多个用户所拥有。用户根据拥有不同的属性就获得不同的密文访问控制权限。在实际应用场景中,往往会出现用户更换,用户权限变更及用户私钥泄露等情况,就需要考虑密钥的属性的撤销问题。用户属性的撤销就是失去所撤销属性的访问控制权限。在属性撤销过程中,一个用户可能需要撤销多个不同属性,也有可能不同用户需要撤销同一个属性,用户和属性之间是“多对多”的关系。为了提高加密解密效率,数据拥有者可以将数据信息利用对称加密进行加密,然后上传到云服务器上进行保存,采用密文策略的加密方案CP-ABE对密钥进行管理,密文策略的属性基加密,通过关联到一个可描述的用户属性集合,将密文关联到一棵访问控制树结构,实现密文的访问控制。
如图标识满足属性为:45岁的医师或者副医师可以获得密文。
图1 树形属性图
图2 属性基访问控制过程
以上图2是用户A和用户B按照图1属性访问控制进行服务器的文件申请的图示。很明显只有用户A符合要求,能够拿到解密的文件。
理想状态下的属性撤销应达到以下三点:(1)属性撤销应具有时效性。(2)属性撤销应有精确性,用户某个属性的撤销应不影响其他没有撤销属性的用户。(3)属性撤销应具有高效性,在尽量减少系统负担的同时,减少撤销的复杂性。
Pirretti等人[1]在2006年首次提出了可撤销属性加密(Revocable ABE,RABE)的概念。2006年,Goyal等人[7]提出了一种属性间接撤销的属性加密方案,即给每个属性都带有一个有效期限,时间标签,当某个属性时间超过了带有的时间标签,这个属性就被撤销了。Sahai等人[4]结合“密文代理”的性质,构造了一种高效的且支持用户撤销的属性密码方案,有效解决了密文更新的问题,从而保证了数据的前向性和后向性安全。Shi等人[8]提出了一个支持可验证密文代理的直接可撤销的属性密码方案。该方案使用完全子树(Complete Subtree,CS)的方法实现了用户的直接撤销。同时方案给出了一种有效的方法来验证第三方是否正确地更新了密文。近期,Datta等人[9]给出了第一个在素数阶群上完全安全且无界的可撤销属性加密方案。该方案借助于子集差分(Subset Difference,SD)的方法实现了用户的有效撤销,提高了广播的效率[10]。也有学者提出在云环境下基于属性基加密,引入特殊属性集得方法,和用户原本所有的属性集一起构成新的访问控制,达到对用户密钥分割的目的。密钥的一部分发送给用户,另一部分存放在选取的可信代理服务器上,存在代理服务器端的部分密钥通过代理重加密并发送给用户进行更新,才能使用户得到解密,提升了属性撤销的性能[11]。
根据属性集合中不同的作用分类,可以分为用户(User)、用户属性(User Attribute)和系统属性(System Attribute)。根据撤销执行机构的不同[5],可以分为直接属性撤销和间接属性撤销这两种模式。间接属性撤销又可以分为授权机构撤销、第三方撤销两种模式。直接撤销模式是指数据发送者在加密数据时在密文中设置有用户撤销列表,加密数据的时候直接对用户实现属性撤销,如果用户撤销列表里有用户的信息,则用户不能访问控制密文,大部分直接撤销方案是将现有的广播加密技术应用到ABE中实现的。间接撤销是授权机构周期性的对未撤销用户发送更新密钥,未撤销用户取到更新密钥才能解密。授权机构撤销,是指如果要想对用户的某个属性撤销,授权机可以直接不再更新该用户的这个属性密钥,这样用户就不能对某些数据信息进行访问控制了。
属性撤销按照撤销粒度的不同[6],可分为系统属性撤销、用户撤销和用户属性撤销3种。(1)系统属性撤销,指的是系统中的某个属性撤销,撤销后,拥有这个属性的所有用户都没有该属性的权限。例如某个单位中的“R部门”因工作需要撤销,则所有满足属性是“R部门”的用户都会失效。(2)用户撤销,就是指某个用户失去所有访问权限。如某单位的确定其工作人员A辞职了,系统即可对A进行用户撤销,这样A即会失去在这个单位原享有的所有权限。(3)用户属性的撤销,是指用户失去对其某个属性的访问权限。用户没有撤销的原有其他属性的访问权限不会改变。并且不会影响其他拥有该撤销属性用户的访问权限。例如某个大学,“2018年”办理完毕业手续的“毕业生”,图书馆针对他们已经毕业的情况,将他们的借书权限撤销。所有拥有“2018年”和“毕业生”属性的学生都将不能借书。
根据属性撤销的时效性不同,可以分为即时撤销、周期性撤销两种。即时撤销。直接撤销就属于即时撤销。在间接撤销模式下需要引入半可信第三方。周期性撤销。密钥以周期式更新,所以对于属性的撤销也是周期性的。
直接撤销的过程是:用户被一种属性所标识,被撤销的用户,其属性标识为“否”并和用户访问的密文相关联,这样用户就无法访问解密。基于ABE属性撤销是研究的热点,大部分的属性撤销研究都是采用间接撤销方法。间接撤销可以关联多个用户的多个属性,间接撤销一般会采用授权机构或第三方代理执行,多采用树形属性访问控制结构,来有效实现细粒度的控制属性撤销的操作。
直接撤销和间接撤销的比较:(1)从时效来看,直接撤销更加及时,能够及时地撤销用户的属性,使用户访问控制具有实时性;间接撤销需要密钥周期性的更新,在密钥更新前用户的访问控制权限需要设置好。(2)从复杂性来看,如果用户属性数量多的话,直接撤销会加重加密者的负担;间接撤销一般采用授权机构或者第三方代理执行,计算负担小。
Attrapadung等人[12]在充分结合了两种撤销模式优点的基础上,针对KP-ABE的撤销问题提出了采取二叉树的混合撤销机制HR-ABE。用户可以在加密时决定选择间接撤销模式还是直接撤销模式,每个用户的密钥是由来自每个子系统的密钥发送并组合而成。这种撤销方式可以使得属性撤销更加灵活、高效、适应性。
对云存储数据信息的基于属性基加密,可以实现用户对密文的细粒度的控制。研究者根据不同的应用环境,选择合适的加密解密属性控制及撤销方式,目的就是为了提高效率,节省资源和时间,使用户在感觉不到繁琐过程的同时对用户的权益进行了加固。当然属性撤销至今已经有了很多方面的突破,在未来的研究中还可以在目前直接撤销模式下可撤销ABE的基础上,在不必限制没有授权用户实时在线等条件,也达到即时属性撤销。现有的撤销机制有些为了提高计算效率和交互性,加入第三方机构;有些撤销机制是不能实现即时撤销;有些撤销机制中属性撤销粒度需要细化,因此,未来需要设计出可以不仅满足不同属性集合的属性撤销要求,同时可以无需实时在线交互,支持即时撤销且高效安全的ABE撤销机制,是未来需要研究的工作。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!