分层的基于属性的抗持续辅助输入泄漏加密方法及系统与流程

文档序号:12729048阅读:来源:国知局

技术特征:

1.一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,包括以下步骤:

步骤A、设定系统公开参数params和主私钥msk;

步骤B、根据主公钥mpk、主私钥msk和关于属性向量集合S′,生成一个私钥skS′

步骤C、根据mpk,关于S′的私钥skS′,当且仅当时生成关于S的私钥skS,其中,S′是一个深度为k的属性向量集合,S是一个深度为k+1的属性向量集合,表示S是由S′派生的;

步骤D、根据mpk和msk,生成新的主私钥msk′,其中,|msk′|=|msk|,|*|表示尺寸;

步骤E、根据mpk和skS,生成新的私钥skS′,其中,|skS′|=|skS|;新的主私钥msk′和新的私钥skS′用于下一轮解密;

步骤F、根据mpk,一个访问结构A,对消息M进行加密得到对应的密文C;

步骤G、根据mpk,skS和C,解密出M。

2.根据权利要求1所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤A具体包括:

步骤A1、选取两个阶为N=p1p2p3的循环群其中,p1,p2,p3是三个不同的素数;

步骤A2、选取长度为λ的安全参数1λ,1λ是长度为λ的0,1比特串,令m,其中,是整数集合,m,n是整数;选取一个双线性映射其中,αγ,a是整数,u1,u2,…,uL,h1,h2,…,u1,u2,…,uL,h1,h2,…,hD是模p1中的元素,中阶为p1的子群,L,D是整数,一个随机的矩阵ai,γ是模p1中的元素,i∈[1,m]且i为整数,γ∈[1,n]且γ为整数,表示m×n个的笛卡尔积,以及一个随机的列向量gi是模p1确认中的元素,表示m个确认的笛卡尔积,设置以及其中,Pi是ai,γ取幂次再求和的值且是群中的元素,是一个列向量,αγ中的元素,αγ中的元素,Q是一个列向量,e(gi,Pi)表示gi和Pi求对应的双线性映射的值;

步骤A3、主公钥为其中,e表示双线性映射,表示gi的a次幂,gi是模pi中的元素,是模p3中的元素,选取然后计算msk={mski}i∈[1,m];其中,Ti是群中的元素,矩阵V是属性域,中阶为p3的子群,mski=Pi·Ti

3.根据权利要求2所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤B具体包括:

步骤B1、私钥生成中心随机选取以及来产生S的私钥,其中,R1,i,R2,i是群中的元素S是一个深度为k的属性向量集合,k≤L,L是最大深度,wi是整数,计算其中,是模p1p3中的元素,是gi的awi次幂且是模p1中的元素,是gi的wi次幂且是模p1中的元素;

步骤B2、选取其中,τj是整数,Ri,j,0,Ri,j,1,Ri,j,k+1,Ri,j,k+2,…,Ri,j,L是模p3中的元素,对于集合S中的任一属性向量是属性域V中深度是k的属性向量,vk表示属性域V中某属性向量的分量,v1与下标(1,x)相关,v1是属性矩阵V的第一行第x个条目,选择hx,选定x后,hx表示从主公钥的h1,h2,…,hD中,选定一个下标为x的群元素并计算最终生成私钥其中,j∈[1,|S'|]以及|S'|是S'的基数,x∈[1,D],D是一个整数,是模p1中的元素,是模p1中的元素。

4.根据权利要求3所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤C具体包括:

步骤C1、根据集合S'的私钥选取其中,是整数,是模p3中的元素,计算其中,是gi次幂,是gi次幂,是模p1中的元素,是模p3中的元素;

步骤C2、选取其中,是整数,都是模p3中的元素,对于任一属性向量存在一个前缀是属性集合的元素且表示的前缀,计算

<mrow> <msub> <mi>sk</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>,</mo> <mn>0</mn> </mrow> </msub> <mo>=</mo> <mi>s</mi> <msub> <mover> <mi>k</mi> <mo>~</mo> </mover> <mrow> <mi>i</mi> <mo>,</mo> <mover> <mi>j</mi> <mo>~</mo> </mover> <mo>,</mo> <mn>0</mn> </mrow> </msub> <mo>&CenterDot;</mo> <msubsup> <mi>h</mi> <mi>x</mi> <msub> <mover> <mi>w</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> </msubsup> <msup> <mrow> <mo>(</mo> <mi>s</mi> <msub> <mover> <mi>k</mi> <mo>~</mo> </mover> <mrow> <mi>i</mi> <mo>,</mo> <mover> <mi>j</mi> <mo>~</mo> </mover> <mo>,</mo> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <msub> <mi>v</mi> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> </msup> <msup> <mrow> <mo>(</mo> <msubsup> <mi>u</mi> <mn>1</mn> <msub> <mi>v</mi> <mn>1</mn> </msub> </msubsup> <mo>...</mo> <msubsup> <mi>u</mi> <mi>k</mi> <msub> <mi>v</mi> <mi>k</mi> </msub> </msubsup> <mo>)</mo> </mrow> <msub> <mover> <mi>&tau;</mi> <mo>~</mo> </mover> <mi>j</mi> </msub> </msup> <msub> <mover> <mi>R</mi> <mo>~</mo> </mover> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>,</mo> <mn>0</mn> </mrow> </msub> <mo>,</mo> <msub> <mi>sk</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>,</mo> <mn>1</mn> </mrow> </msub> <mo>=</mo> <mi>s</mi> <msub> <mover> <mi>k</mi> <mo>~</mo> </mover> <mrow> <mi>i</mi> <mo>,</mo> <mover> <mi>j</mi> <mo>~</mo> </mover> <mo>,</mo> <mn>1</mn> </mrow> </msub> <mo>&CenterDot;</mo> <msubsup> <mi>g</mi> <mi>i</mi> <msub> <mover> <mi>&tau;</mi> <mo>~</mo> </mover> <mi>j</mi> </msub> </msubsup> <msub> <mover> <mi>R</mi> <mo>~</mo> </mover> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>,</mo> <mn>1</mn> </mrow> </msub> <mo>,</mo> </mrow>

最后,输出私钥

其中vk+1表示属性域V中某属性向量的分量。

5.根据权利要求4所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤D具体包括:

根据msk={mski}i∈[1,m],选取计算新的主私钥msk′={mski′}i∈[1,m],其中mski′=mski·Ti′,Ti′是模p3中的元素。

6.根据权利要求5所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤E具体包括:

根据skS={sk1,i,sk2,i,{ski,j,0,ski,j,1,ski,j,k+1,…,ski,j,L}j∈[1,|S|]}i∈[1,m],选取其中,wi′是整数,R′1,i,R′2,i是模p3中的元素,计算sk′1,i是模p1p3中的元素,sk1,i是更新前的私钥,是模p1p3中的元素,是gi的aw′次幂,是模p1中的元素,R′1,i是模p3中的元素;选取其中,τj′是整数,R′i,j,0,R′i,j,1,R′i,j,k+1,R′i,j,k+2,R′i,j,L均是模p3中的元素,对集合S中的任意属性向量计算计算新的私钥skS′={sk′1,i,sk′2,i,{sk′i,j,0,sk′i,j,1,sk′i,j,k+1,…,sk′i,j,L}j∈[1,S|]}i∈[1,m]

7.根据权利要求6所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤F具体包括:

F1:选取一个访问结构选取一个向量其中δγ是整数,并计算份额其中,是m行n列的共享生成矩阵,ρ是一个将的某行映射到某个属性向量上的函数,的第行并且被ρ映射到一个属性向量上,其中,vk表示属性域V中某属性向量的分量;

F2:如果v1是矩阵V的第一行第x个条目,从mpk中选取hx,随机选择是整数,并计算其中,qi=e(gi,Pi)是双线性映射的值,gi,Pi是模p1中的元素,是gi的δ次幂,是gi次幂,是hx次幂,是gi次幂,均是模p1中的元素,以及其中,是主公钥中的u1,u2,…,uL表示幂次相乘再求幂次,是模p1中的元素,密文为

8.根据权利要求7所述的一种分层的基于属性的抗持续辅助输入泄漏加密方法,其特征在于,所述步骤G具体包括:

G1:根据关于的密文和关于S的私钥如果S∈A,计算常量使得其中,是一个满足的整数常量,是属性集合中的一个元素,就是在属性集合S中对应的为下标的值才能参与求和运算;

G2:计算M=C1,i/M′,

其中,e(,)是双线性映射,e(C2,i,sk1,i)表示对C2,i和sk1,i求对应的双线性映射值。

9.一种分层的基于属性的抗持续辅助输入泄漏加密系统,其特征在于,包括系统参数设置模块、私钥生成模块、授权模块、主私钥更新模块、私钥更新模块、加密模块和解密模块;其中,

系统参数设置模块,用于生成一个主公钥和一个主私钥,主公钥发送给私钥生成模块、授权模块、主私钥更新模块、私钥更新模块、加密模块和解密模块;主私钥发送给私钥生成模块以及主私钥更新模块;

私钥生成模块,使用主公钥、主私钥生成该用户的私钥,并将私钥发送给解密模块以及私钥更新模块;

授权模块,使用主公钥产生下级属性用户的私钥,用于解密;

主私钥更新模块,使用主公钥、主私钥更新主私钥,用于下一次生成私钥;

私钥更新模块,使用主公钥更新用户的私钥,用于下一次的解密;

加密模块,使用主公钥对消息进行加密,并将产生的密文发送给解密模块;

解密模块,使用主公钥根据私钥和密文解密出消息。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1