法律状态公告日
法律状态信息
法律状态
2019-05-03
授权
授权
2016-11-23
实质审查的生效 IPC(主分类):H04L9/08 申请日:20160729
实质审查的生效
2016-10-26
公开
公开
技术领域
本发明属于网络与信息安全技术领域,特别涉及一种云环境下属性基多机构层次化密文策略权重加密方法。
背景技术
随着云计算的发展,越来越多的用户或者企业选择把数据存储在云端。然而,数据的外包存储模式容易导致非授权访问,例如,云服务器可以在未经用户授权的情况下,获取用户数据,泄露用户隐私。此外,云服务器还有可能受到来自外部的威胁,如被黑客攻击等。针对数据安全问题,云服务使用者大多将数据加密后再上传。传统的公钥加密方法可以保障数据的安全性,但必须提前知道潜在的用户并使用他们的公钥分别加密数据文件,缺乏灵活性和可操作性。
针对传统加密方法的不足,Sahai和Waters在IBE技术的基础上首次提出了属性基加密(Attribute-Based Encryption,简称ABE)机制。由于最初的ABE机制只支持门限访问策略,为了达到更好的灵活性,Goyal等和Bethencourt等分别提出了密钥策略属性基加密(KP-ABE)和密文策略属性基加密(CP(Ciphertext-Policy)-ABE)两类ABE机制。在KP-ABE方案中,密文对应于属性集合,而密钥与访问结构相关联;而在CP-ABE方案中,密文与访问结构相关联,密钥对应于属性集合,只有私钥的属性满足了密文中的访问结构才能恢复明文。CP-ABE机制是由加密方制定访问控制策略,因此更适合于云存储系统中数据属主共享数据文件的情形。
上述方案都采用单一的授权中心机制,即由单个授权中心管理和分发用户私钥,不仅会造成系统性能瓶颈,而且一旦被攻破,整个系统的安全也就被攻破。为了解决这个问题,Chase提出了多授权中心的属性加密方案(MA(Multiple Authority)-ABE),在MA-ABE方案中,有一个中央授权中心CA(Central Authority)负责系统参数的生成,还有多个普通授权中心负责管理和颁发用户属性私钥构件。然而,该方案没有考虑到多个普通授权中心之间的层次关系。Wang结合层次化IBE,在CP-ABE的基础上提出具有等级的属性基加密算法。在该算法中,各个属性在系统中的地位是平等的,不同层次的授权机构所管理的属性集也是同等重要的。而在现实系统中,不同属性的重要性是不相同的。Wang等虽然引入了权重的概念,但却没有考虑分发权重属性私钥的授权机构之间的层次制约关系。
现有专利文献中,公告号为CN103327002B、名称为“基于属性的云存储访问控制系统”的发明专利提出了一种基于属性的云存储访问控制系统,系统包含属性基加解密单元,以实现文件的加解密功能,以及用访问控制的策略和用户私钥分别加解密对称密钥的功能。但也未涉及多授权机构的层次化问题。
发明内容
本发明目的在于提供一种云环境下多机构层次化密文策略权重属性基加密方案,该方法实现了多授权中心共同管理用户属性的分级制度,降低了单一授权中心的工作量,实现了灵活、细粒度的访问控制;该方案将属性权重引入加密方案中,利用不同层次的授权机构可分发的属性权重大小的不同,使得方案更加安全可靠。
为解决上述技术问题,本发明采取的技术方案是提出一种云环境下属性基多机构层次化密文策略权重加密方法,其特征在于,该方法包含如下步骤:
步骤1:中央授权机构为下级属性授权机构或用户生成全局标识AID或UID,并且为系统中的每个属性计算属性权重分割集;
步骤2:中央授权机构生成系统主密钥MK和公钥PK,保留MK,公开PK;
步骤3:中央授权机构为下级属性授权机构或用户分发主密钥或权重属性私钥;
步骤4:数据拥有者选择访问策略,对文件进行加密,并且将密文CT上传至云服务器;
步骤5:用户向云服务器请求访问加密文件,云服务器返回密文CT,用户利用权重属性私钥解密文件,当且仅当私钥中的属性满足密文中的访问策略,才能完全解密;
步骤6:若解密成功,则用户得到明文;若解密不成功,则说明用户无权访问该文件。
进一步,上述步骤1中,所述下级属性授权机构有多个,与中央授权机构分布在不同层次,形成层次化属性授权机构。
进一步,上述层次化授权机构适用于公共域,所述用户为单一授权机构,适用于私人域,不同域中的用户有不同的密钥分配方式。
进一步,上述步骤2中,中央授权机构生成系统主密钥时随机选择双线性映射和双线性群。
与现有技术相比,本发明的优势在于建立了具有等级的层次化多授权中心机制,使不同级别的授权中心掌管不同的属性并且分发私钥组件;本发明将属性权重引入分层模型,按照上级授权中心对下级授权中的信任程度来分发私钥,以构建更加安全可靠的系统。
附图说明
图1是本发明的系统架构图。
图2是本发明的一个实施例的示意图。
图3是本发明另一个实施例的流程图。
具体实施方式
现结合附图对本发明的具体实施方式做进一步详尽的说明。本发明提出了一种层次化授权中心的权重属性基加密方案,不仅将属性权重引入加密方案中,而且采用多层次的授权中心机制,利用不同层次的授权机构可分发的属性权重大小的不同,实现了更细粒度的访问控制。本方法在标准模型下被证明是安全的,性能分析表明本方案比现有方案更适用于云环境。
如图1所示,划分成两个不同的管理区域,分别是公共域(Public Domain,PUD)和个人域(Personal Domain,PSD)。其中的(1)为生成AID或UID,并且分发主密钥或用户私钥,(2)为生成主密钥,(3)为分发用户私钥,(4)为请求文件,(5)为返回密文,(6)为上传加密文件,(7)、(8)分别为用户撤销和文件撤销。
下面对本发明涉及的数学知识给出定义:
定义1(双线性映射):令群G1和G2是以素数p为阶的乘法循环群,令G1的一个生成元为g,存在双线性对映射e:G1×G1→G2满足以下性质:
(a)双线性:假设对于所有的g,h∈G1,a,b∈Zp,有e(ga,hb)=e(g,h)ab。
(b)非退化性:对于任意g∈G,都有e(g,g)≠1。
(c)可计算性:任意g,h∈G1,存在一个多项式时间内算法计算e(g,h)结果。
定义2(访问结构):
假设{p1,p2,···,pn}是参与方的集合,令访问结构是{p1,p2,···,pn}的非空子集,即若访问结构是单调的,则对于若且那么在中的集合称为授权集合,不在中的集合称为非授权集合。
运用上述权重门限访问结构,叶子节点对应属性的权值,根节点对应门限值。图2是一个权重门限访问结构的例子,有3个叶子节点,分别表示一个人的职称,年龄,民族所对应的权值。只有当私钥中这3部分的权重之和大于或等于门限t,才能够解密密文。假设用户1具有的属性为{主任医师,50岁,汉族},用户2具有的属性为{副主任医师,42岁,满族},系统根据实际情况对用户1和用户2的3个属性分别赋予权值{6,3,2}和{4,2,2}。如果系统中的门限值t=10,那么就表示只有当这3个属性的权重值之和大于等于10的时候,才可以恢复出明文。用户1的属性权重之和为11,可以成功解密密文,用户2的属性权重之和为9,不能成功解密密文。
定义3(权重门限访问结构):
设U为全体属性的集合,令ω:U→N为一个权重函数,T∈N为门限值,定义且则Γ为N的权重门限访问结构。
定义4(属性集分割):
属性集分割算法的输入为系统中的所有属性。对于系统属性集Γ={λ1,...,λn}中的每一个属性λi,计算其在系统中的最大权值为ωi=weight(λi),根据ωi对属性λi进行分割,分割后属性λi对应于(λi,1),...,(λi,ωi),设定分割后的最小份额为1,且权值仅为整数,其构成的集合称为属性权重的分割集Γ*。
方法流程
系统建立:
这一步由TA执行。首先,随机选择生成元为g,阶为p的双线性群G0和双线性映射e:G0×G0=GT。
在PUD中,首先,取上的前|Γ*|个元素,也就是说,取1,...,|Γ*|(mod>p中选择令最后,算法从Zp中独立随机地选择元素α1,生成公钥和主密钥:
在PSD中,独立随机地从Zp中选择令然后生成公钥和主密钥:
TA除了生成公钥和主密钥之外,还将为每个新注册的AA和用户生成全局标识AID=r{aid}或UID=r{uid},其中r{aid},r{uid}∈Zp
一级AA授权:
在PUD中,当TA对一级AA进行授权时,TA根据对该一级AA的信任程度,选择作为一级AA的属性分割集。TA为一级AA生成的主密钥为:
一级AA为下级AA授权:
在PUD中,当一级AA对下级AA进行授权时,一级AA将根据对该AA的信任程度,选择作为该AA的属性分割集。一级AA根据该AA的全局标识为其生成主密钥:
为用户生成私钥:
我们这里分成两个区域举例,一个是PUD,另一个是PSD,并且在PUD中,假设一级AA给用户分发私钥。设用户的属性集为S,对应的属性权重分割集为S*。
那么,在PUD中,用户私钥为:
在PSD中,用户生成的私钥为:
加密文件:
用户随机选择对称密钥DK,对需要上传的数据文件m进行加密,得到密文M。然后随机选择一个阶为d-1的随机多项式q,使得q(0)=s,其中d为权重访问树的门限值。对DK进行加密,最终上传到云服务器的密文形式为FCT=(CT,M)。令W*为叶子节点的集合W所对应的属性权重分割集。访问结构为Π,则CT为:
其中,在PUD中表示α1,在PSD中表示α2。在PUD中表示Ti,在PSD中表示Ti'。
文件访问:
用户从云端下载加密后的数据文件FCT,从中取出密文CT,如果用户的属性满足密文CT中的访问策略,也就是说,则从集合K={S*∩W*}中选出个元素来解密密文,得到对称密钥DK。其中,在PUD中表示d,在PSD中表示d'。
在PUD中,解密过程为:
在PSD中,解密过程为:
用户解密得到对称密钥DK之后,就可以用DK来解密M,从而得到明文数据m。
另一个实施例的流程如图3所示,一个数据拥有者上传文件至云端,用户从云端获取密文文件,并使用私钥对其进行解密。其具体实施方式为:中央授权机构为下级属性授权机构或用户生成全局标识AID或UID,并且为系统中的每个属性计算属性权重分割集;中央授权机构随机选择双线性映射和双线性群,生成系统主密钥MK和公钥PK,保留MK,公开PK;
中央授权机构为下级属性授权机构或用户分发主密钥或权重属性私钥;
例如,用户有2个属性,这2个属性构成全体属性集S={s0,s1},则对应的属性权重分割集为S*={((s0,1),...,(s0,ω0)),((s1,1),...,(s1,ω1))}。假设一级AA为其分发私钥,则私钥
数据拥有者选择访问策略,对文件进行加密,并且将密文CT上传至云服务器;
在本方法中,数据拥有者随机选择一个阶为d-1的随机多项式q,使得q(0)=s,其中d为权重访问树的门限值。对DK进行加密,最终上传到云服务器的密文形式为FCT=(CT,M)。令W*为叶子节点的集合W所对应的属性权重分割集。访问结构为Π,则CT为:
用户向云服务器请求访问加密文件,云服务器返回密文CT,用户利用权重属性私钥解密文件,当且仅当私钥中的属性满足密文中的访问策略,才能完全解密。
若解密成功,则用户得到明文;若解密不成功,则说明用户无权访问该文件。
机译: 非线性处理器,流密文加密设备,流密文加密设备,掩码处理方法,流密文加密方法,流密文加密方法和程序
机译: 基于密文策略属性加密的策略隐藏方法和装置
机译: 基于身份的加密方法,包括密文不可链接性和密文认证