一种属性撤销方法技术

技术编号:21803143 阅读:29 留言:0更新日期:2019-08-07 11:33
本发明专利技术公开了一种属性撤销方法,使用树形用户空间组织方式,定义用户身份识别码为由0\1字符组成的字符串,所有用户的身份识别码拥有相同的长度m,用户身份空间是所有可能出现的用户身份识别码组成的一个全域I,域的大小为2

An Attribute Revocation Method

【技术实现步骤摘要】
一种属性撤销方法
本专利技术属于数据安全
,具体涉及一种属性撤销方法。
技术介绍
属性撤销问题一直是属性加密机制中一个备受关注的研究点。当撤销用户或用户的属性时,需要保证该用户不再拥有该属性对应的权限,而其余用户的权限不受影响。近年来,国内外的学者们提出了各种属性消减方案。Attrapadung等人结合基于属性加密方案和多播加密技术,提出当前的属性撤销方案可以分为两类:直接撤销模式和间接撤销模式。在直接撤销模式中,撤销列表由发送者嵌入到密文中,直接实现属性密钥的撤销。Ostrovsky首先提出基于密文的属性加密的直接撤销思想,方案将用户标识作为属性,每当用户撤销时,将和密文相关联的用户标识写为”非”,从而实现了用户的撤销,但是这种方案导致密文和用户密钥长度过大。王鹏翩等针对属性的细粒度撤销,基于合数阶双线性群实现了属性的直接撤销,但该方案公钥参数与用户数量线性相关,容易造成公钥参数过长。Lewko方案将已撤销权限的用户列表由发送者嵌入在密文中,当用户请求数据时,如果用户已在撤销列表中,那么将无法得到数据。而方案以Lewko的方案为基础,提出了一种在密文和密钥长度方面都有所减少的属性直接撤销方案。综合起来,直接撤销模式的优势是所有未撤销用户无需更新密钥,减轻了授权机构的负担。缺点是撤销列表和用户密文相连,每当有新的用户被加入撤销列表,需要将用户更新到密文中,这会引入比较大的重复存储开销和计算开销。在间接撤销模式研究早期,由授权机构周期性释放密钥的更新,只有权限未撤销的用户才可以更新密钥。Hur提出一种KEKtree的方法,拥有某个属性的用户群被记录下来,拥有同一个属性的群体共享一个属性私钥。当由用户权限被取消时,生成新的属性私钥,并为所有依旧拥有权限的用户更新密钥。Xie等对Hur的方案进行了优化,缩小了密文和密钥的尺寸,并减轻了密钥更新阶段的计算量。Yang提出属性版本号的方法,将版本号添加到用户密钥中,每当有用户权限变化,使用新的版本号更新其余用户的密钥,保证已撤销的用户无法访问到系统后添加的数据。可见,因属性撤销引入的开销主要包含两点:更新所有用户的密钥,更新所有使用该属性的密文的访问结构。在间接撤销模式研究后期,Jahid等通过引入可信第三方的手段提出了一个基于CP-ABE的EASiER方案。但此方案只适用于相关用户规模很小的情况,当相关用户的规模比较大时,需要耗费大量的计算量更新代理密钥。
技术实现思路
本专利技术所要解决的技术问题在于针对上述现有技术中的不足,提供一种属性撤销方法,在满足安全性和存储代价可接受的条件下,使得因用户权限撤销而影响到的其他用户尽可能的少。本专利技术采用以下技术方案:一种属性撤销方法,使用树形用户空间组织方式,定义用户身份识别码为由0\1字符组成的字符串,所有用户的身份识别码拥有相同的长度m,用户身份空间是所有可能出现的用户身份识别码组成的一个全域I,域的大小为2m,根据属性使用情况划分群,然后将用户随机划分到不相关的群中,引入最小覆盖机制,使用最小可覆盖群机制组织已消减用户群,在已撤销用户群中存放代表一个用户群体的群标识码,并引入合并机制,在没有用户进入被撤销权限的用户群时,将相邻的群合并为一个群,更新用户的代理密钥和已消减用户集的插值因子完成属性撤销。具体的,包括以下步骤:S1、系统初始化,设有三个乘法循环群和和拥有相同的素数阶q,且满足双线性映射基于素数阶的双线性循环群,应用于子群子群用于生成随机化的密钥,选定一个足够大的安全参数λ决定系统群的大小,定义拉格朗日系数Δi,S,其中S是中的一个集合;选择哈希函数将一个任意长度0/1字符组成的字符串随机映射为群的整数,选择哈希函数它将一个任意长度0/1字符组成的字符串随机映射为上的一个整数;S2、用户从认证中心处获得解密数据使用的密钥SK,当认证中心收到用户发来的产生密钥的请求时,运行KeyGen(SP,SMK,S)算法,算法输入属性集合S、系统参数SP和系统主密钥SMK,输出访问密钥SK;S3、数据拥有着运行Encrypt(SP,K,Τ)→CT算法将明文数据转换为密文数据,算法依据访问树T,使用系统参数SP对数据K进行加密;S4、代理密钥生成算法ProxyKey(SP,SMK,RL)为已消减用户集RUs和拥有权限的用户集AUs中的用户生成子秘密,算法输入已消减用户列表RL,RL均匀分布于各个一级群中;S5、先密文转换,然后解密数据;S6、当属性撤销操作发生时,调用Revocation(uid,SP,MSK,RL,PXK)算法,输入用户的uid,系统参数SP,系统主密钥SMK和已消减用户列表RUs,代理密钥PSK,更新用户的代理密钥和已消减用户集的插值因子。进一步的,步骤S1具体为:S101、由认证中心运行算法Setup(1λ,m,n)为系统的正常运行生成基础的参数,从乘法群和中分别随机选择生成元g1和g2;选择两个随机指数计算得到系统参数如下:系统主密钥如下:其中,系统主密钥参与到各个密钥生成的阶段,系统参数会参与到密钥生成、加解密、代理密钥生成和属性撤销等各个算法;S102、当用户向认证中心发出携带自己身份描述信息Info的请求时,认证中心运行UserReg(SP,Info)算法,验证请求用户的身份是否合法,如果用户的身份是合法的,则从用户身份空间中为请求用户分配一个全局唯一的用户身份识别码和用户公钥/私钥。更进一步的,步骤S102中,生成UPK/USK,算法选择随机指数生成的用户私钥/公钥如下:为用户生成身份识别码uid,算法UserReg为用户分配身份识别码的过程就是从用户空间I中为用户随机选择一个未分配的字符串。进一步的,步骤S2中,对于属性s∈S,认证中心根据使用属性s用户的数量将用户群划分为2l个一级群,每个一级群包含2m-l个用户,群标识码g的长度为l,记作Gg;每个一级群Gg由已消减用户集(RevokedUsers,RUs)RUsg、不拥有权限的用户集和拥有权限的用户集(AuthorizedUsers,AUs)AUsg;以每个已消减群为单位,使用秘密共享的机制将已消减用户群和拥有权限的用户联系起来,让他们共享一个密钥s,使用拉格朗日插值多项式的机制实现密钥共享;首先,计算得到已销减用户集RUsg的大小t=|RUGg|,算法为每个一级群Gg生成阶为t+1的多项式,选择共享秘密选择一个长度为t+1的随机向量构建多项式为Pg(x)=s+y1·x+y2·x2+…+yt+1·xt+1;得Pg(0)=s,将Pg(0)嵌入所有拥有权限的用户的密钥中,计算uzr=H1(uid),得到用户useruid持有的子秘密Pg(uzr);选择随机指数输入系统主密钥SMK和系统参数SP,计算解码密钥选择随机指数计算如下:算法输出SK如下:进一步的,步骤S3具体为:自根节点R开始,以自顶向下的方式为T中每一个结点x选择一个多项式qx,对于每个多项式qx,设定度dx为比阈值kx小1,即dx=kx-1;选择一个随机指数并设定qx(0)=s,然后为多项式qx选择dx个随机因子构建出多项式Px(y)=s+y1·y+y2·y2+…+yt+1·yt+1;对于其他节点,设定qx(0)=qparent(x)(index(x)),并选择dx本文档来自技高网
...

【技术保护点】
1.一种属性撤销方法,其特征在于,使用树形用户空间组织方式,定义用户身份识别码为由0\1字符组成的字符串,所有用户的身份识别码拥有相同的长度m,用户身份空间是所有可能出现的用户身份识别码组成的一个全域I,域的大小为2

【技术特征摘要】
1.一种属性撤销方法,其特征在于,使用树形用户空间组织方式,定义用户身份识别码为由0\1字符组成的字符串,所有用户的身份识别码拥有相同的长度m,用户身份空间是所有可能出现的用户身份识别码组成的一个全域I,域的大小为2m,根据属性使用情况划分群,然后将用户随机划分到不相关的群中,引入最小覆盖机制,使用最小可覆盖群机制组织已消减用户群,在已撤销用户群中存放代表一个用户群体的群标识码,并引入合并机制,在没有用户进入被撤销权限的用户群时,将相邻的群合并为一个群,更新用户的代理密钥和已消减用户集的插值因子完成属性撤销。2.根据权利要求1所述的属性撤销方法,其特征在于,包括以下步骤:S1、系统初始化,设有三个乘法循环群和和拥有相同的素数阶q,且满足双线性映射基于素数阶的双线性循环群,应用于子群子群用于生成随机化的密钥,选定一个足够大的安全参数λ决定系统群的大小,定义拉格朗日系数Δi,S,其中S是中的一个集合;选择哈希函数将一个任意长度0/1字符组成的字符串随机映射为群的整数,选择哈希函数它将一个任意长度0/1字符组成的字符串随机映射为上的一个整数;S2、用户从认证中心处获得解密数据使用的密钥SK,当认证中心收到用户发来的产生密钥的请求时,运行KeyGen(SP,SMK,S)算法,算法输入属性集合S、系统参数SP和系统主密钥SMK,输出访问密钥SK;S3、数据拥有着运行Encrypt(SP,K,Τ)→CT算法将明文数据转换为密文数据,算法依据访问树T,使用系统参数SP对数据K进行加密;S4、代理密钥生成算法ProxyKey(SP,SMK,RL)为已消减用户集RUs和拥有权限的用户集AUs中的用户生成子秘密,算法输入已消减用户列表RL,RL均匀分布于各个一级群中;S5、先密文转换,然后解密数据;S6、当属性撤销操作发生时,调用Revocation(uid,SP,MSK,RL,PXK)算法,输入用户的uid,系统参数SP,系统主密钥SMK和已消减用户列表RUs,代理密钥PSK,更新用户的代理密钥和已消减用户集的插值因子。3.根据权利要求2所述的属性撤销方法,其特征在于,步骤S1具体为:S101、由认证中心运行算法Setup(1λ,m,n)为系统的正常运行生成基础的参数,从乘法群和中分别随机选择生成元g1和g2;选择两个随机指数α,计算得到系统参数如下:系统主密钥如下:其中,系统主密钥参与到各个密钥生成的阶段,系统参数会参与到密钥生成、加解密、代理密钥生成和属性撤销等各个算法;S102、当用户向认证中心发出携带自己身份描述信息Info的请求时,认证中心运行UserReg(SP,Info)算法,验证请求用户的身份是否合法,如果用户的身份是合法的,则从用户身份空间中为请求用户分配一个全局唯一的用户身份识别码和用户公钥/私钥。4.根据权利要求3所述的属性撤销方法,其特征在于,步骤S102中,生成UPK/USK,算法选择随机指数生成的用户私钥/公钥如下:为用户生成身份识别码uid,算法UserReg为用户分配身份识别码的过程就是从用户空间I中为用户随机选择一个未分配的字符串。5.根据权利要求2所述的属性撤销方法,其特征在于,步骤S2中,对于属性s∈S,认证中心根据使用属性s用户的数量将用户群划分为2l个一级群,每个一级群包含2m-l个用户,群标识码g的长度为l,记作Gg;每个一级群Gg由已消减用户集(RevokedUsers,RUs)RUsg、不拥有权限的用户集和拥有权限的用户集(AuthorizedUsers,AUs)AUsg;以每个已消减群为单位,使用秘密共享的机制将已消减用户群和拥有权限的用户联系起来,让他们共享一个密钥s,使用拉格朗日插值多项式的机制实现密钥共享;首先,计算得到已销减用户集RUsg的大小t=|RUGg|,算法为每个一级群Gg生成阶为t+1的多项式,选择共享秘密选择一个长度为t+1的随机向量构建多项式为Pg(x)=s+y1·x+y2·x2+…+yt+1·xt+1;得Pg(0)=s,将Pg(0)嵌入所有拥有权限的用户的密钥中,计算uzr=H1(uid),得到用户useruid持有的子秘密Pg(uzr);选择随机指数输入系统主密钥SMK和系统参数SP,计算解码密钥选择随机指数计算如下:算法输出SK如下:6.根据权利要求2所述的属性撤销方法,其特征在于,步骤S3具体为:自根节点R开始,以自顶向下的方式为T中每一个结点x选择一个多项式qx,对于每个...

【专利技术属性】
技术研发人员:张选平樊兴王嘉寅
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1