一种基于代理撤销的密钥策略属性基加密方法技术

技术编号:20246188 阅读:43 留言:0更新日期:2019-01-30 00:31
一种基于代理撤销的密钥策略属性基加密方法,授权机构调用系统初始设置算法,生成系统公钥发送给数据发送者,生成系统主密钥发送给撤销代理服务器,调用密钥生成算法,生成用户私钥发送给数据接收者,调用代理撤销密钥生成算法,生成代理撤销密钥发送给撤销代理服务器;撤销代理服务器调用代理密文转换算法,生成用于属性撤销运算的密文发送给数据接收者;数据发送者调用加密算法,生成密文发送给撤销代理服务器;数据接收者调用解密算法输出明文。本发明专利技术引入半可信的第三方授权机构所持有的所有属性的撤销列表,并且在密文中绑定任意多个属性的用户撤销列表信息,实现了细粒度的即时属性撤销方案,提高了用户属性的撤销效率。

【技术实现步骤摘要】
一种基于代理撤销的密钥策略属性基加密方法
本专利技术涉及一种基于代理撤销的密钥策略属性基加密方法。
技术介绍
在计算机发展的领域中,数据的安全性和是否合法访问不能够得到保证,大量信息数据之间的传输随时都存在着隐私泄露的可能,因此,如何安全而高效的存储数据,共享数据和处理数据是保证数据完整性和安全性的重中之重。属性基加密技术用属性集合来表征用户,对其加密,只有具有特定属性的用户才能成功解密。属性基加密分为密钥策略属性基加密(KP-ABE)和密文策略属性基加密(CP-ABE)。属性基加密技术在实际应用中存在属性到期和变更等问题需要对属性进行撤销,属性撤销机制可分为直接撤销和间接撤销两类,直接撤销是指发送者在加密密文时直接指定撤销列表,而间接撤销是由第三方的授权机构进行撤销。现有的撤销方案很多,但是间接撤销模式下大部分方案存在撤销延时、密文空间大或者需要更新密钥与密文等问题。
技术实现思路
本专利技术提供一种基于代理撤销的密钥策略属性基加密方法,引入半可信的第三方授权机构所持有的所有属性的撤销列表,并且在密文中绑定任意多个属性的用户撤销列表信息,实现了细粒度的即时属性撤销方案,提高了用户属性的撤销效率。为了达到上述目的,本专利技术提供一种基于代理撤销的密钥策略属性基加密方法,包含以下步骤:步骤S1、授权机构输入安全参数,用户的数量m和密文属性集中属性数量最大的可能值n,调用系统初始设置算法,生成系统公钥PK和系统主密钥MSK;步骤S2、授权机构输入用户身份标识ID,访问结构A,系统主密钥MSK和系统公钥PK,授权机构调用密钥生成算法,输出用户私钥SKID,A;步骤S3、数据发送者输入明文M,密文属性集合γ和系统公钥PK,调用加密算法,生成密文CT;步骤S4、授权机构输入系统主密钥MSK和系统初始属性集Q中的所有属性i的撤销列表{RLi}i∈Q,调用代理撤销密钥生成算法,生成所有属性的代理撤销密钥{PRKi}i∈Q;步骤S5、撤销代理服务器输入代理撤销密钥{PRKi}i∈Q,密文中CT的一部分密文E3和用户身份标识ID,调用代理密文转换算法,生成用于属性撤销运算的密文E'3,并将包含了E'3的最终密文CT'发送给数据接收者;步骤S6、数据接收者输入最终密文CT'和用户私钥SKID,A,运行解密算法,如果其属性i满足访问结构A,即用户身份标识ID的属性i未撤销,则成功解密并输出明文M;否则,解密失败输出终止符⊥。所述的步骤S1包含以下步骤:步骤S1.1、定义非对称双线性映射:e:G0×G1→GT,其中,G0和G1是两个阶为素数p的加法群,GT为阶为素数p的乘法群,g为G0的一个随机生成元,h为G1的生成元;步骤S1.2、定义系统初始属性集Q,密文属性集γ和整数和Zp;步骤S1.3、定义用户数量m和密文属性集γ中属性数目的最大可能值n;步骤S1.4、从Zp中为每个属性i∈Q随机生成一个vi阶撤销多项式fi,其中vi为访问树A中的叶子节点i的节点阈值;步骤S1.5、从G0中随机选取n+1个元素gk={g1,g2,…,gn+1},计算Gk=ggk,定义函数其中拉格朗日系数步骤S1.6、随机选取一个元素α∈G1,对计算步骤S1.7、随机选取一个元素β∈Zp,计算ω=gβ;步骤S1.8、输出系统公钥PK=(g,h,{Gk}k∈{1,2,…,n+1},{hj}j∈{1,2,…,m,m+2,…,2m},ω),系统主密钥MSK=(γ,{gk}k∈{1,2,…,n+1},{fi}i∈Q,α,β)。所述的步骤S2包含以下步骤:步骤S2.1、定义访问树A,内部节点为门限操作符,叶子节点为系统属性值,num(x)表示除叶子节点外的节点x的子节点的个数,对于一个内部节点x,其阈值vx满足1≤vx≤num(x),当vx=1时,表示“或”门;vx=num(x)时,表示“与”门;步骤S2.2、为访问树A中的每个节点x随机选取vx-1阶多项式qx,多项式将从根节点自上而下依次选定;步骤S2.3、对于根节点r,令qr(0)=αIDβ;步骤S2.4、对于其他的节点x,令qx(0)=qparent(x)(index(x)),其中parent(x)为节点x的父节点,index(x)为节点x在其所有兄弟节点中的序号,且其满足1≤index(x)≤num(parent(x));步骤S2.5、定义L为访问树A中所有叶子节点x的属性集合,每个叶子节点对应的属性为attr(x),令i=attr(x);步骤S2.6、对于访问树A的叶子节点x,选取随机数ε∈Zp,计算SK2=hε,其中SK0,SK1,SK2,SK3均为用户私钥中的一部分,最后输出用户私钥SKID,A={SK0,SK1,SK2,SK3}i∈L。所述的步骤S3包含以下步骤:步骤S3.1、随机选取一个元素s∈Zp,计算部分密文E0=gs和E'0=hs;步骤S3.2、计算E1=M·e(g,hn)s,E2=ωs,E3={G(i)s}i∈γ,E4={(Gi)s}i∈γ,其中E1,E2,E3,E4均为密文CT的一部分;步骤S3.3、输出密文CT=(E0,E'0,E1,E2,E3,E4,γ)。所述的步骤S4包含以下步骤:步骤S4.1、授权机构对每个系统属性i∈Q,其中用户身份集合U={1,2,…,m},为撤销列表中撤销了属性i的第vi个用户,创建用户属性i的撤销列表并依次计算fi(Ui,u)值;步骤S4.2、生成代理撤销密钥所述的步骤S5包含以下步骤:撤销代理服务器根据数据发送者所发送的部分密文E3和用户身份标识ID,结合密文属性集γ中的密文属性i的代理撤销密钥{PRKi}i∈γ,生成用于属性撤销运算的密文其中并将最终密文CT'=(E0,E'0,E1,E2,E'3,E4,γ)发送给数据接收者。所述的步骤S6包含以下步骤:步骤S6.1、对于用户私钥访问树A中的每个叶子节点x,其属性满足i∈γ,并且用户ID的属性i未撤销,根据密文CT'和用户私钥SKID,A,计算解密结果Fx:否则返回⊥;步骤S6.2、对于访问树A的内部节点x,记Nx为节点x的子节点z输出结果不为⊥的集合,若集合元素数量小于节点x阈值vx,则Fx=⊥;记Sx为从Nx中选取的任意vx个子节点的集合,则Fx做如下计算:其中步骤S6.3、对于访问树A的根节点r:步骤S6.4、最后输出明文正确性:本专利技术还提供一种基于代理撤销的密钥策略属性基加密系统,包含:授权机构,其调用系统初始设置算法,生成系统公钥发送给数据发送者,生成系统主密钥发送给撤销代理服务器,调用密钥生成算法,生成用户私钥发送给数据接收者,调用代理撤销密钥生成算法,生成代理撤销密钥发送给撤销代理服务器;撤销代理服务器,其调用代理密文转换算法,生成用于属性撤销运算的密文发送给数据接收者;数据发送者,其调用加密算法,生成密文发送给撤销代理服务器;数据接收者,其调用解密算法,如果属性未撤销,则解密成功输出明文,否则,解密失败输出终止符。与现有技术相比,本专利技术具有以下优点:1、本专利技术提供了一种基于代理撤销的密钥策略属性基加密方案,引入半可信第三方机构,将撤销信息绑定到密文中,实现细粒度的用户属性i的即时撤销。只有当用户ID的属性i未撤销,数据接收者才能成功解密出密文。2、本专利技术不需要更新密钥,也不需要对密文进本文档来自技高网...

【技术保护点】
1.一种基于代理撤销的密钥策略属性基加密方法,其特征在于,包含以下步骤:步骤S1、授权机构输入安全参数,用户的数量m和密文属性集中属性数量最大的可能值n,调用系统初始设置算法,生成系统公钥PK和系统主密钥MSK;步骤S2、授权机构输入用户身份标识ID,访问结构A,系统主密钥MSK和系统公钥PK,授权机构调用密钥生成算法,输出用户私钥SKID,A;步骤S3、数据发送者输入明文M,密文属性集合γ和系统公钥PK,调用加密算法,生成密文CT;步骤S4、授权机构输入系统主密钥MSK和系统初始属性集Q中的所有属性i的撤销列表{RLi}i∈Q,调用代理撤销密钥生成算法,生成所有属性的代理撤销密钥{PRKi}i∈Q;步骤S5、撤销代理服务器输入代理撤销密钥{PRKi}i∈Q,密文中CT的一部分密文E3和用户身份标识ID,调用代理密文转换算法,生成用于属性撤销运算的密文E′3,并将包含了E′3的最终密文CT'发送给数据接收者;步骤S6、数据接收者输入最终密文CT'和用户私钥SKID,A,运行解密算法,如果其属性i满足访问结构A,即用户身份标识ID的属性i未撤销,则成功解密并输出明文M;否则,解密失败输出终止符⊥。...

【技术特征摘要】
1.一种基于代理撤销的密钥策略属性基加密方法,其特征在于,包含以下步骤:步骤S1、授权机构输入安全参数,用户的数量m和密文属性集中属性数量最大的可能值n,调用系统初始设置算法,生成系统公钥PK和系统主密钥MSK;步骤S2、授权机构输入用户身份标识ID,访问结构A,系统主密钥MSK和系统公钥PK,授权机构调用密钥生成算法,输出用户私钥SKID,A;步骤S3、数据发送者输入明文M,密文属性集合γ和系统公钥PK,调用加密算法,生成密文CT;步骤S4、授权机构输入系统主密钥MSK和系统初始属性集Q中的所有属性i的撤销列表{RLi}i∈Q,调用代理撤销密钥生成算法,生成所有属性的代理撤销密钥{PRKi}i∈Q;步骤S5、撤销代理服务器输入代理撤销密钥{PRKi}i∈Q,密文中CT的一部分密文E3和用户身份标识ID,调用代理密文转换算法,生成用于属性撤销运算的密文E′3,并将包含了E′3的最终密文CT'发送给数据接收者;步骤S6、数据接收者输入最终密文CT'和用户私钥SKID,A,运行解密算法,如果其属性i满足访问结构A,即用户身份标识ID的属性i未撤销,则成功解密并输出明文M;否则,解密失败输出终止符⊥。2.如权利要求1所述的基于代理撤销的密钥策略属性基加密方法,其特征在于,所述的步骤S1包含以下步骤:步骤S1.1、定义非对称双线性映射:e:G0×G1→GT,其中,G0和G1是两个阶为素数p的加法群,GT为阶为素数p的乘法群,g为G0的一个随机生成元,h为G1的生成元;步骤S1.2、定义系统初始属性集Q,密文属性集γ和整数和Zp;步骤S1.3、定义用户数量m和密文属性集γ中属性数目的最大可能值n;步骤S1.4、从Zp中为每个属性i∈Q随机生成一个vi阶撤销多项式fi,其中vi为访问树A中的叶子节点i的节点阈值;步骤S1.5、从G0中随机选取n+1个元素gk={g1,g2,…,gn+1},计算定义函数其中拉格朗日系数步骤S1.6、随机选取一个元素α∈G1,对计算步骤S1.7、随机选取一个元素β∈Zp,计算ω=gβ;步骤S1.8、输出系统公钥PK=(g,h,{Gk}k∈{1,2,…,n+1},{hj}j∈{1,2,…,m,m+2,…,2m},ω),系统主密钥MSK=(γ,{gk}k∈{1,2,…,n+1},{fi}i∈Q,α,β)。3.如权利要求1所述的基于代理撤销的密钥策略属性基加密方法,其特征在于,所述的步骤S2包含以下步骤:步骤S2.1、定义访问树A,内部节点为门限操作符,叶子节点为系统属性值,num(x)表示除叶子节点外的节点x的子节点的个数,对于一个内部节点x,其阈值vx满足1≤vx≤num(x),当vx=1时,表示“或”门;vx=num(x)时,表示“与”门;步骤S2.2、为访问树A中的每个节点x随机选取vx-1阶多项式qx,多项式将从根节点自上而下依次选定;步骤S2.3、对于根节点r,令qr(0)=αIDβ;步骤S2.4、对于其他的节点x,令qx(0)=qparent(x)(index(x)),其中pare...

【专利技术属性】
技术研发人员:潘楠楠韩德志俞云萍路雪
申请(专利权)人:上海海事大学
类型:发明
国别省市:上海,31

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

1