[发明专利]一种高效的SM9两方协同生成数字签名的方法及系统有效
申请号: | 201910147360.7 | 申请日: | 2019-02-27 |
公开(公告)号: | CN110011802B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 何德彪;张佳妮;冯琦;王婧;陈泌文 | 申请(专利权)人: | 武汉大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32 |
代理公司: | 湖北武汉永嘉专利代理有限公司 42102 | 代理人: | 唐万荣;李丹 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种高效的SM9两方协同生成数字签名的方法及系统,该方法包括:1)2)3)。本发明方法给出了一种高效的两方分布式SM9数字签名方案,签名过程两个参与方必须同时在线进行消息的交互,实现了签名的公平性。同时,完整私钥由参与双方拆分保存,且在整个签名过程中未有私钥恢复过程,保证了签名私钥的安全性。 | ||
搜索关键词: | 一种 高效 sm9 协同 生成 数字签名 方法 系统 | ||
【主权项】:
1.一种高效的SM9两方协同生成数字签名的方法,其特征在于,包括以下步骤:1)生成签名所需的参数和签名主私钥;1.1)输入安全参数λ,KGC选择两个q阶加法循环群G1,G2,一个q阶乘法循环群GT,一个双线性映射e:G1×G2→GT,令P1为G1的一个生成元,P2为G2的一个生成元;其中,q阶为大素数,且q>2191;1.2)KGC选择随机数
作为主私钥,计算签名主公钥Ppub‑s=[ks]P2,并计算g=e(p1,ppub‑s);1.3)KGC选择两个安全的密码杂凑函数H1,H2:
以及用一个字节表示的签名密钥生成函数识别符hid;其中,H1和H2是由{0,1}*到
的密码杂凑函数;1.4)KGC秘密保存系统主私钥ks,公开系统参数{λ,q,G1,G2,GT,e,P1,P2,Ppub‑s,g,H1,H2,hid};2)生成分布式签名私钥;给定用户的身份ID,KGC为用户生成签名私钥,具体如下:2.1)KGC计算第一个临时变量t1=H1(ID||hid,q)+ks和第二个临时变量
其中
表示t1模q的逆元,即
2.2)KGC选择一个随机数
计算
其中
表示d1模q的逆元,即
2.3)KGC计算第一部分签名密钥
并设置第二部分签名密钥为
2.4)用户A把
存储到设备A,用户B把
存储到设备B中;3)给定待签名的消息m,通信双方A,B联合生成数字签名(h,S)的过程,具体阐述如下:3.1)通信双方A和B事先协商确认要签名的消息m;3.2)A选择一个随机数
计算第三个临时变量
并将w1发送给B;3.3)B收到w1后,选择一个随机数
计算第四个临时变量
并通过w2计算签名的第一部分h=H2(m||w2,q);然后,B计算第五个临时变量
若s'=0则重新选择r2,否则B将s',h发送给A;3.4)A收到s'后,计算签名的第二部分
A利用SM9的数字签名验证算法验证签名的正确性,若验证通过,则输出SM9数字签名(h,S)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910147360.7/,转载请声明来源钻瓜专利网。