当前位置: 首页 > 专利查询>武汉大学专利>正文

一种基于SM9签名的变色龙签名生成方法及装置制造方法及图纸

技术编号:35187549 阅读:13 留言:0更新日期:2022-10-12 17:59
本发明专利技术公开了一种基于SM9签名的变色龙签名生成方法及装置,其中的方法包括:密钥生成、签名以及验证步骤,该签名生成方法是一种基于SM9签名的变色龙签名方案,可以保证验证者可以验证签名的有效性,但是无法向其他第三方证明该签名的有效性,并且变色龙签名不需要交互过程,降低了使用门槛,减少了系统开销,在保证安全性的同时可以提高签名生成的效率。安全性的同时可以提高签名生成的效率。安全性的同时可以提高签名生成的效率。

【技术实现步骤摘要】
一种基于SM9签名的变色龙签名生成方法及装置


[0001]本专利技术涉及信息安全
,尤其涉及一种基于SM9签名的变色龙签名生成方法及装置。

技术介绍

[0002]数字签名是一种重要的密码方案,它通过某种密码运算生成消息数字签名,来代替书写签名或印章,在我国数字签名目前具有与书写签名相同的法律效力。同时数字签名也是实现认证的重要工具,通过在受信任的身份注册机构进行注册取得数字证书,将证书与签名结合可以验证消息发送方的身份并防止发送方抵赖签名结果以及防止消息接收方伪造,还可以验证消息的完整性,抵抗第三方的伪造攻击。其主要用于鉴别签名人的身份以及信息的合法性,是目前网络通信、电子商务、电子政务中使用最普遍、技术最成熟、可操作性最强的一种密码技术。
[0003]现有基于身份的不可否认签名生成方法,虽然可以验证签名的有效性,但是其是交互式的,加大了系统的开销,因此效率不高。

技术实现思路

[0004]本专利技术提供一种基于SM9签名的变色龙签名生成方法及装置,用以解决或者至少部分解决现有技术中存在的效率不高的技术问题。
[0005]为了解决上述技术问题,本专利技术第一方面提供了一种基于SM9签名的变色龙签名生成方法,包括:
[0006]密钥生成步骤,包括:
[0007]密钥生成中心产生随机数msk,作为系统主私钥,并计算主公钥P
pub
=[d]P2;
[0008]用户A表示ID
A
对应的私钥为
[0009]用户B表示ID<br/>B
对应的私钥为
[0010]其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,....,q

1组成的整数集合,ID
A
、ID
B
分别表示用户A和B的身份;
[0011]签名步骤,用户A进行签名,包括:
[0012]计算G
T
的中的元素g=e(P1,P
pub
),随机选取并计算w=g
r

[0013]给定用户身份ID
B
,消息m以及随机元素R∈G1,输出签名阶段的变色龙哈希值
[0014]计算h=H2(z||w),l=r

h mod q;
[0015]计算输出签名值(R,h,S);
[0016]其中,G
T
为阶为q的乘法循环群,w为第一承诺值,r为随机数,H1(
·
),H2(
·
):由密
码杂凑函数派生的密码函数,均为h为签名阶段的哈希值,l为计算S的中间变量,S为签名步骤输出签名值的组成部分;
[0017]验证步骤,用户B进行验证,包括:
[0018]给定待验证的消息m

,待验证的签名值(R

,h

,S

),验证阶段用户A的身份ID
A

,计算P=[H1(ID
A

)]P2+P
pub

[0019]计算u=e(S

,P);
[0020]计算w

=u
·
g
h

[0021]计算z


[0022][0023]计算h

是否等于H2(z

||w

),
[0024]如果等于,则验证通过,签名值为合法签名,否则,验证失败,签名无效;
[0025]其中,R

为随机数,R

∈G1,S

为待验证的签名值的组成部分,P为计算u的中间变量,ID
B

为验证阶段用户B的身份,u为计算w

的中间变量,w

为第二承诺值,z

为验证阶段的变色龙哈希值,h

为验证阶段的哈希值。
[0026]基于同样的专利技术构思,本专利技术第二方面提供了一种基于SM9签名的变色龙签名生成装置,包括:
[0027]密钥生成模块,用于执行密钥生成步骤,包括:
[0028]密钥生成中心产生随机数msk,作为系统主私钥,并计算主公钥P
pub
=[d]P2;
[0029]用户A表示ID
A
对应的私钥为
[0030]用户B表示ID
B
对应的私钥为
[0031]其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,....,q

1组成的整数集合,ID
A
、ID
B
分别表示用户A和B的身份;
[0032]签名生成模块,用于执行签名步骤,用户A进行签名,包括:
[0033]计算G
T
的中的元素g=e(P1,P
pub
),随机选取并计算w=g
r

[0034]给定用户身份ID
B
,待签名的消息m以及随机元素R∈G1,输出签名阶段的变色龙哈希值
[0035]计算h=H2(z||w),l=r

h mod q;
[0036]计算输出签名值(R,h,S);
[0037]其中,G
T
为阶为q的乘法循环群,w为第一承诺值,r为随机数,H1(
·
),H2(
·
):由密码杂凑函数派生的密码函数,均为h为签名阶段的哈希值,l为计算S的中间变量,S为签名步骤输出签名值的组成部分;
[0038]签名验证模块,用于执行验证步骤,用户B进行验证,包括:
[0039]计算G
T
的中的元素g=e(P1,P
pub
),随机选取并计算w=g
r

[0040]给定用户身份ID
B
,消息m以及随机元素R∈G1,输出签名阶段的变色龙哈希值
[0041]计算h=H2(z||w),l=r

h mod q;
[0042]计算输出签名值(R,h,S);
[0043]其中,G
T
为阶为q的乘法循环群,w为第一承诺值,r为随机数,H1(
·
),H2(
·
):由密码杂凑函数派生的密码函数,均为h为签名阶段的哈希值,l为计算S的中间变量,S为签名步骤输出签名值的组成部分;
[0044]验证步骤,用户B进行验证,包括:
[0045]给定待验证的消本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于SM9签名的变色龙签名生成方法,其特征在于,包括:密钥生成步骤,包括:密钥生成中心产生随机数msk,作为系统主私钥,并计算主公钥P
pub
=[d]P2;用户A表示ID
A
对应的私钥为用户B表示ID
B
对应的私钥为其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,

,q

1组成的整数集合,ID
A
、ID
B
分别表示用户A和B的身份;签名步骤,用户A进行签名,包括:计算G
T
的中的元素g=e(P1,P
pub
),随机选取并计算w=g
r
;给定用户身份ID
B
,消息m以及随机元素R∈G1,输出签名阶段的变色龙哈希值计算h=H2(z||w),l=r

h mod q;计算输出签名值(R,h,S);其中,G
T
为阶为q的乘法循环群,w为第一承诺值,r为随机数,H1(
·
),H2(
·
):由密码杂凑函数派生的密码函数,均为h为签名阶段的哈希值,l为计算S的中间变量,S为签名步骤输出签名值的组成部分;验证步骤,用户B进行验证,包括:给定待验证的消息m

,待验证的签名值(R

,h

,S

),验证阶段用户A的身份ID
A

,计算P=[H1(ID
A

)]P2+P
pub
;计算u=e(S

,P);计算w

=u
·
g
h
;计算z

,计算h

是否等于H2(z

||w

),如果等于,则验证通过,签名值为合法签名,否则,验证失败,签名无效;其中,R

为随机数,R

∈G1,S

为待验证的签名值的组成部分,P为计算u的中间变量,ID
B

为验证阶段用户B的身份,u为计算w

的中间变量,w

为第二承诺值,z

为验证阶段的变色龙哈希值,h

为验证阶段的哈希值。2.一种基于SM9签名的变色龙签名生成装置,其特征在于,包括:密钥生成模块,用于执行密钥生成步骤,包括:密钥生成中心产生随机数msk,作为系统主私钥,并计算主公钥P
pub
=[d]P2;用户A表示ID
A
对应的私钥为
用户B表示ID
B
对应的私钥为其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,

,q
‑...

【专利技术属性】
技术研发人员:包子健何德彪朱鑫杰贾小英许芷岩黄欣沂王连海
申请(专利权)人:武汉大学
类型:发明
国别省市:

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

1