基于国密SM9的用户撤销方法技术

技术编号:31629687 阅读:23 留言:0更新日期:2021-12-29 19:08
本发明专利技术公开了基于国密SM9的用户撤销方法,基于SM9标识加密算法的整体架构,对密钥生成算法和密文生成算法进行优化改进,使其支持多个用户解密权限的撤销。只有非撤销的用户才能正确解密密文,撤销用户即使合谋也无法获取数据。该方法中用户密钥和密文长度都是定值,与撤销用户的数量无关,具有较高的计算效率和通信效率,有助于进一步完善SM9标识密码算法体制。此外,该方法也提供了一种高效的广播加密方法,适用于接收者是系统中绝大多数用户的场景,与传统广播加密相比,具有较高的计算效率。率。率。

【技术实现步骤摘要】
基于国密SM9的用户撤销方法


[0001]本专利技术涉及信息安全
,尤其涉及基于国密SM9的用户撤销方法。

技术介绍

[0002]数据加密是保护数据机密性的一种有效方法,通过加密技术对存储或者传输的明文数据进行变换,生成一种无法识别的乱码,也称为密文。该密文只有授权的用户使用解密密钥才能正确解密并恢复出明文数据。没有解密密钥的用户,即使已知密文,也无法恢复出正确明文。加密确保数据在网络传输过程中不会泄露数据内容,保护了传输数据的机密性。数据加密是公钥密码体系中非常重要的一部分,广泛应用于军事、商业等领域用于保护数据隐私。
[0003]在传统的数据加密系统中,通常假设用户能安全且秘密的保存解密密钥。然而,随着科学技术的发展,攻击者的能力越来越强,该假设很难在实际应用中完全实现,用户存在解密密钥泄露和丢失的可能。因此,为保证数据的安全性,需要撤销泄露或者丢失的密钥的解密权限,使得撤销后用户的密钥无法正常解密密文。

技术实现思路

[0004]本专利技术的目的在于提供基于国密SM9的用户撤销方法。
[0005]本专利技术采用的技术方案是:
[0006]基于国密SM9的用户撤销方法,其包括以下步骤:
[0007]S1、密钥生成中心生成密钥生成中心的主公私钥对,将生成的主公钥公开给系统中的用户,并秘密保存主私钥;
[0008]S2、密钥生成中心利用主公私钥对生成用户的解密密钥,将解密密钥通过安全信道发送给用户;
[0009]S3、加密者利用密钥生成中心生成的主公钥和撤销用户列表生成会话密钥和封装密文;
[0010]S4、解密者基于封装密文、撤销用户列表、密钥生成中心的主公钥和解密者的解密密钥,恢复出封装的会话密钥。
[0011]进一步地,作为一种较优实施方式,步骤S1具体包括以下步骤:
[0012]S1

1,选取双线性群BP=(G1,G2,G
T
,e,N),群G1和群G2的生成元分别为P1和P2;
[0013]S1

2,产生随机数α,β,γ∈[1,N

1]作为主私钥,计算群G1中的元素αP1,计算群G
T
中的元素v=e(P1,P2)
αβ

[0014]S1

3,对i=1,2,

,m,计算群G1中的元素γα
i
P1,计算群G2中的元素γα
i
P2;
[0015]S1

4,选择并公开用一个字节表示的签名密钥生成函数识别符hid,密码杂凑函数H,密钥派生函数KDF;
[0016]其中,BP:双线性群;N:循环群G1,G2,G
T
的阶,且N>2
191
的素数;G1:阶为素数N的加法循环群;G2:阶为素数N的加法循环群;G
T
:阶为素数N的乘法循环群;e:从G1×
G2到G
T
的双线
性映射;α,β,γ:系统主私钥;m:一次加密允许撤销用户的最大数量,属于正整数;[1,N

1],不小于1且不大于N

1的整数集合;P1:群G1的生成元;P2:群G2的生成元;v:群G
T
中的元素;hid:用一个字节表示的签名密钥生成函数识别符,由密钥生成中心选择并公开;H:密码杂凑函数;KDF:密钥派生函数。
[0017]进一步地,作为一种较优实施方式,步骤S2中密钥生成中心为用户生成解密密钥具体包括以下步骤:
[0018]S2

1,产生用户ID的解密密钥sk
ID
,计算,计算
[0019]S2

2,将sk
ID
=(d1,d2)作为用户的解密密钥并发送给用户;
[0020]其中,ID:用户的标识,可以唯一确定用户身份的公钥;sk
ID
:用户ID的解密密钥;d1,d2:临时变量,属于群G2中的元素;ID||hid:ID与hid的拼接,其中ID和hid是比特串或字节串;H(ID||hid,N):到由密码杂凑函数派生的密码函数。
[0021]进一步地,作为一种较优实施方式,步骤S3中加密者生成会话密钥和封装密文具体包括以下步骤:
[0022]S3

1,已知用户撤销列表R=(ID1,ID2,

,ID
n
)(n≤m);
[0023]S3

2,产生随机数k∈[1,N

1];
[0024]S3

3,计算C1=k
·
(αP1),w=v
k
,,K=KDF(C1,C2,w,τ,N,θ);
[0025]S3

4,输出封装密文CT=(C1,C2);
[0026]其中,k:[1,N

1]中的随机数;R:用户撤销列表;n:撤销用户的个数;w:临时变量,属于群G
T
中的元素;τ:临时变量,属于有限域F
N
中的元素;C1,C2:临时变量,属于群G1中的元素;K:封装的会话密钥,长度为l的比特串;CT:封装密文;KDF(C1,C2,w,τ,N,l):到l的密钥派生函数。
[0027]进一步地,作为一种较优实施方式,步骤S4中密文解密的具体包括以下步骤:
[0028]S4

1,设待解密的封装密文为(C1,C2),其中封装密文对应的用户撤销列表为R=(ID1,ID2,

,ID
n
),解密者ID的密钥为sk
ID
=(d1,d2);
[0029]S4

2,解密者根据撤销列表R定义多项式若则
[0030][0031]其中是模N的系数,且z=f(

H(ID||hid,N))≠0;
[0032]S4

3,计算:
[0033][0034]S4

4,计算K'=KDF(C1,C2,w',τ',N,l)。若K'为全0的比特串,则报错并退出,表示解密失败;
[0035]其中,z:临时变量,属于有限域F
N
中的元素;t
i
:多项式系数,属于有限域F
N
中的元素;τ':临时变量,属于有限域F
N
中的元素;w':临时变量,属于群G
T
中的元素;K':临时变量,长度为l的比特串。
[0036]进一步地,解密过程的正确性分析如下:为描述方便用H(ID)代替H(ID||hid,N),若则:
[0037][0038]进一步地,
[0039][0040]最后计算得到:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于国密SM9的用户撤销方法,其特征在于:其包括以下步骤:S1、密钥生成中心生成密钥生成中心的主公私钥对,将生成的主公钥公开给系统中的用户,并秘密保存主私钥;S2、密钥生成中心利用主公私钥对生成用户的解密密钥,将解密密钥通过安全信道发送给用户;S3、加密者利用密钥生成中心生成的主公钥和撤销用户列表生成会话密钥和封装密文;S4、解密者基于封装密文、撤销用户列表、密钥生成中心的主公钥和解密者的解密密钥,恢复出封装的会话密钥。2.根据权利要求1所述的基于国密SM9的用户撤销方法,其特征在于:步骤S1具体包括以下步骤:S1

1,选取双线性群BP=(G1,G2,G
T
,e,N),群G1和群G2的生成元分别为P1和P2;S1

2,产生随机数α,β,γ∈[1,N

1]作为主私钥,计算群G1中的元素αP1,计算群G
T
中的元素v=e(P1,P2)
αβ
;S1

3,对i=1,2,

,m,计算群G1中的元素γα
i
P1,计算群G2中的元素γα
i
P2;S1

4,选择并公开用一个字节表示的签名密钥生成函数识别符hid,密码杂凑函数H,密钥派生函数KDF;其中,BP:双线性群;N:循环群G1,G2,G
T
的阶,且N>2
191
的素数;G1:阶为素数N的加法循环群;G2:阶为素数N的加法循环群;G
T
:阶为素数N的乘法循环群;e:从G1×
G2到G
T
的双线性映射;α,β,γ:系统主私钥;m:一次加密允许撤销用户的最大数量,属于正整数;[1,N

1],不小于1且不大于N

1的整数集合;P1:群G1的生成元;P2:群G2的生成元;v:群G
T
中的元素;hid:用一个字节表示的签名密钥生成函数识别符,由密钥生成中心选择并公开;H:密码杂凑函数;KDF:密钥派生函数。3.根据权利要求1所述的基于国密SM9的用户撤销方法,其特征在于:步骤S2中密钥生成中心为用户生成解密密钥具体包括以下步骤:S2

1,计算S2

2,将sk
ID
=(d1,d2)作为用户的解密密钥并发送给用户;其中,ID:用户的标识,可以唯一确定用户身份的公钥;sk
ID
:用户ID的解密密钥;d1,d...

【专利技术属性】
技术研发人员:赖建昌伍玮何德彪
申请(专利权)人:福建师范大学
类型:发明
国别省市:

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

1