[发明专利]一种SM9数字签名生成方法及装置有效
| 申请号: | 201910789305.8 | 申请日: | 2019-08-26 |
| 公开(公告)号: | CN110557260B | 公开(公告)日: | 2020-08-04 |
| 发明(设计)人: | 龙毅宏 | 申请(专利权)人: | 武汉理工大学 |
| 主分类号: | H04L9/32 | 分类号: | H04L9/32 |
| 代理公司: | 武汉开元知识产权代理有限公司 42104 | 代理人: | 刘琳 |
| 地址: | 430070 湖*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 sm9 数字签名 生成 方法 装置 | ||
1.一种SM9数字签名生成方法,其特征是:
所述方法涉及一个生成SM9数字签名的装置;所述装置有[1,n-1]区间内的一个整数秘密c,非秘密PA=[c-1]dA,非秘密gc=g^(c-1),其中n为SM9密码算法中群G1、G2、GT的阶,dA为用户的SM9标识私钥,c-1为c的模n乘法逆,^表示幂运算,g=e(P1,Ppub),P1为G1中的生成元,Ppub为主公钥;
当需要使用用户的SM9标识私钥dA针对消息M进行数字签名时,所述装置在[1,n-1]内随机选择一个整数r,计算w=gc^r;
计算h=H2(M||w,n),其中H2为SM9中规定的散列函数,M||w表示M和w的字串合并,n为G1、G2、GT的阶;
计算v=(r-ch)mod n;
检查v是否为0,若为0,则重新选择r,重新计算w、h、v,直到v≠0;
所述装置将(h,v,PA)作为初始签名数据或最终签名数据返回给调用所述装置请求进行数字签名操作的调用方,或者将(h,v,PA)作为初始签名数据或最终签名数据提交给数字签名的使用或信赖方。
2.根据权利要求1所述的SM9数字签名生成方法,其特征是:
若(h,v,PA)是作为初始签名数据返回给调用所述装置请求进行数字签名操作的调用方,或者作为初始签名数据提交给数字签名的使用或信赖方,则请求进行数字签名操作的调用方,或数字签名的使用或信赖方,在获得(h,v,PA)后,计算S=[v]PA,形成最终的数字签名(h,S)。
3.根据权利要求2所述的SM9数字签名生成方法,其特征是:
若(h,v,PA)是作为最终签名数据返回给调用所述装置请求进行数字签名操作的调用方,或作为最终签名数据提交给数字签名的使用或信赖方,则数字签名的验证方按如下方式进行签名验证:
按u=e(PA,P)v计算得到u=e(S,P)的值,其中P=[h1]P2+Ppub,h1=H1(IDA||hid,n),IDA是用户的标识,hid是用一个字节表示的签名私钥生成函数识别符,H1()是SM9规范中定义的散列或哈希函数,P2是群G2的生成元,其他的验证操作与SM9规范规定的签名验证过程中的操作相同;
所述u=e(S,P)为SM9规范规定的对消息M的数字签名(h,S)进行签名验证的过程中计算u的计算式;
所述数字签名的验证方中包括数字签名的最终使用或信赖方。
4.根据权利要求1所述的SM9数字签名生成方法,其特征是:
对于以上所述SM9数字签名生成方法,生成SM9数字签名的装置中保存的秘密c由所述装置自己生成,或者由标识私钥生成系统生成,或者由其他系统生成;PA=[c-1]dA、gc=g^(c-1)的计算,由生成SM9数字签名的装置计算,或者由标识私钥生成系统计算,或者由其他系统计算。
5.一种基于权利要求1-4中任一项所述的SM9数字签名生成方法构建的SM9数字签名生成装置,其特征是:
所述装置包括秘密管理模块和签名生成模块;所述秘密管理模块用于秘密c的管理,所述秘密c的管理包括秘密c的生成或获得以及存储;所述签名生成模块用于按所述SM9数字签名生成方法生成针对消息的SM9数字签名。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉理工大学,未经武汉理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910789305.8/1.html,转载请声明来源钻瓜专利网。





