(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210656980.5
(22)申请日 2022.06.10
(71)申请人 武汉理工大 学
地址 430070 湖北省武汉市洪山区珞狮路
122号
(72)发明人 龙毅宏
(74)专利代理 机构 武汉科皓知识产权代理事务
所(特殊普通 合伙) 42222
专利代理师 罗飞
(51)Int.Cl.
H04L 9/06(2006.01)
H04L 9/08(2006.01)
H04L 9/32(2006.01)
(54)发明名称
签名制作数据安全受控的SM9数字签名生成
方法及系统
(57)摘要
本发明涉及SM9数字签名生成方法: 签名装
置有非秘密PA=[c‑1]dA, 有秘密cA=E(c), 其中 dA
为用户SM9签名私钥,c为[1,n ‑1]内的签名装置
未保存的秘密, n为SM9双线 性映射群的阶, E( ·)
是采用同态加密算法的加密运算, 签名辅助系统
有解密运算的私钥; 对消息M签名时, 签名装置、
签名辅助系统在[1,n ‑1]内随机选择整数r1、 r2,
在不暴露各自秘密的情况下, 计算得到w=g^
(b1r1+b2r2), 其中b1=1或c‑1, b2=1或c‑1, h=H2
(M||w,n), 利用同态加密运算计算得到s2=
(r1b1c+r2b2c‑hc)mod n或s2=(r1r2bc‑hc)mod
n, S=[s2]PA, 则(h,S)为针对消息 M的数字签名。
权利要求书5页 说明书12页 附图1页
CN 115150062 A
2022.10.04
CN 115150062 A
1.一种签名制作数据安全受控的SM9数字签名生成方法, 其特 征是:
签名装置有 非秘密PA=[c‑1]dA, 有秘密cA=E(c), 其中dA为用户的SM9签名私钥,c为[1,
n‑1]内的签名装 置未保存的秘密, c‑1为c的模n乘法逆, n为SM9双线性映射群G1、 G2、 GT的阶, n
为素数, E(·)是采用同态加密算法的加密运 算;
签名装置有 非秘密gc=g^(c‑1), 其中, ^表示幂运算, g=e(P1,Ppub), P1为G1中的生成元,
Ppub为主公钥;
所述签名装置 是签名者 即SM9签名私钥dA的拥有者的计算装置; 所述同态加密算法为加
法同态加密算法或全同态加密算法; 签名辅助系统有与同态加密算法的加密运算E( ·)所
采用的公钥对应的解密运算的私钥, 或者与同态加密算法的加密运算E( ·)所采用的公钥
对应的解密运算的私钥被签名辅助系统的密钥加密, 其中签名辅助系统的密钥包括对称密
钥或公钥; 所述签名辅助系统是辅助、 协助签名装置 完成数字签名生成的计算装置或系统;
若与同态加密算法的加密运算E( ·)所采用的公钥对应的解密运算的私钥被签名辅助
系统的密钥加密, 则签名装置还有被加密的与同态加密算法的加密运算E( ·)所采用的公
钥对应的解密运 算的私钥的密文dE;
当需要使用用户的SM9签名私钥dA针对消息M进行数字签名时, 签名装置和签名辅助系
统按如下 方式生成数字签名:
签名装置在[1,n ‑1]区间内随机 选择一个整数r1;
签名辅助系统在[1,n ‑1]区间内随机 选择一个整数r2;
签名装置和签名辅助系统在不 暴露各自秘密r1、 r2的情况下完成如下计算:
签名装置在确保签名辅助系统不重新选择r2的情况下, 利用g、 gc, 通过与签名辅助系统
交互计算得到w=g^(b1r1+b2r2), 其中b1=1或c‑1, b2=1或c‑1, 而b2=1仅在E( ·)对应的同态
加密算法是全同态加密算法时适用, b1、 b2用于选择w的计算式;
签名辅助系统在确保签名装置不重新选择r1的情况下, 利用g、 gc, 通过与签名装置交互
计算得到wf=g^(b1r1+b2r2);
签名装置、 签名辅助系统分别检查w、 wf是否为单位元, 若w和/或wf为单位元, 则签名装
置、 签名辅助系统重新选择r1、 r2, 重新计算 w、 wf, 直到w和wf为非单位元;
或者,
签名装置和签名辅助系统在不 暴露各自秘密r1、 r2的情况下完成如下计算:
签名装置在确保签名辅助系统不重新选择r2的情况下, 利用g、 gc, 通过与签名辅助系统
交互计算得到w =g^(br1r2), 其中b=1或c‑1, b用于选择w的计算式;
签名辅助系统在确保签名装置不重新选择r1的情况下, 利用g、 gc, 通过与签名装置交互
计算得到wf=g^(br1r2);
若b=1, 则按w=g^(br1r2)、 wf=g^(br1r2)方式计算w、 wf仅在E(·)对应的同态加密算
法是全同态加密算法时适用;
签名装置利用 消息M计算得到h=H2(M||w,n), 其中H2为SM9中规定的杂凑函数, M||w表
示将w转化成字串后与M的字串合并, n 为SM9密码算法中群G1、 G2、 GT的阶;
签名装置检查w与g^h是否相等, 若w=g^h, 则签名装置和签名辅助系统重新选择r1、 r2,
重新计算 w、 wf, 直到w≠g^ h;
签名装置按如下 方式之一计算s1:权 利 要 求 书 1/5 页
2
CN 115150062 A
2s1计算方式一:
w按计算式w =g^(b1r1+b2r2)计算得到且b2=c‑1;
签名装置利用h、 cA、 r1通过同态加密算法计算得到s1=E(r1b1c‑hc(mod n));
s1计算方式二:
w按计算式w=g^(b1r1+b2r2)计算得到, 且b2=1时E(·)对应的同态加密算法是全同态
加密算法;
签名辅助系统计算c2=E(r2),将c2发送给签名装置;
签名装置利用h、 cA、 r1、 c2通过同态加密算法计算得到s1=E(r1b1c+r2b2c‑hc(mod n));
s1计算方式三:
w按计算式w=g^(br1r2)计算得到, 且b=1时E( ·)对应的同态加密算法是全同态加密
算法;
签名辅助系统计算c2=E(r2),将c2发送给签名装置;
签名装置利用r、 cA、 r1、 c2通过同态加密算法计算得到s1=E(r1r2bc‑hc(mod n));
签名装置将h、 PA、 s1、 IDA或hID发送给签名辅助系统, 其中, IDA是用户的标识, hID=H1(IDA
||hid,n);
若与同态加密算法的加密运算E( ·)所采用的公钥对应的解密运算的私钥被签名辅助
系统的密钥加密, 则签名装 置还将dE发送给签名辅助系统, 而签名辅助系统解密dE得到与同
态加密算法的加密运 算E(·)所采用的公钥对应的解密运 算的私钥;
对于s1计算方式一, 签名装置和签名辅助系统按如下 方式计算s:
签名辅助系统解密得到s1的明文s12, 计算s2=(s12+r2)mod n, S=[s2]PA, 然后签名辅助
系统利用wf验证S是否是使用r1、 r2、 h、 以及IDA或hID对应的私钥dA按SM9数字签名的计算方
式计算得到, 若验证失败, 则转入出错处理, 若验证通过, 则签名辅助系统将S返回给签名装
置;
对于s1计算方式二、 方式三, 签名装置和签名辅助系统按如下 方式计算s:
签名辅助系统解密得到 s1的明文s12, 计算s2=s12 mod n, S=[s2]PA, 然后签名辅助系统
利用wf验证S是否是使用r1、 r2、 h、 以及IDA或hID对应的私钥dA按SM9数字签名的计算方式计
算得到, 若验证失败, 则转入出错处 理, 若验证通过, 则签名辅助系统将S返回给签名装置;
签名装置利用w验证S是否是使用r1、 r2、 h、 以及IDA或hID对应的私钥dA按SM9数字签名的
计算方式计算得到, 若验证通过, 则(h,S)为消息 M的数字签名, 否则, 转入出错处 理;
在以上计算式 中, a(mod n), 其中a为一个整数, 表示与a模n同余的数;
所述签名辅助系统在辅助、 协助签名装置完成数字签名的生成之前, 先鉴别确认使用
签名装置的用户即签名者是否是IDA或hID的拥有者;
所述签名装置即签名者拥有的计算装置是具有计算能力、 包含软硬件的装置; 所述签
名装置通过其内实施的密码模块、 密码程序实施以上所述数字签名计算步骤, 实施S M9数字
签名功能。
2.根据权利要求1所述的签名制作数据安全受控的SM9数字签名生成方法, 其特 征是:
对于以上所述签名制作数据安全受控的SM9数字签名生成方法, 签名装置和签名辅助
系统在不暴露自己的秘密r1、 r2和确保对方不重新选择r1、 r2的情况下, 通过交互计算得到w
=g^(b1r1+b2r2), wf=g^(b1r1+b2r2)的一种方法如下:权 利 要 求 书 2/5 页
3
CN 115150062 A
3
专利 签名制作数据安全受控的SM9数字签名生成方法及系统
文档预览
中文文档
19 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共19页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 08:22:01上传分享