[发明专利]一种基于SM9数字签名的盲签名生成方法及系统有效
申请号: | 201810333911.4 | 申请日: | 2018-04-13 |
公开(公告)号: | CN108551392B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 何德彪;张语荻;张宇波;陈泌文 | 申请(专利权)人: | 武汉大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 湖北武汉永嘉专利代理有限公司 42102 | 代理人: | 唐万荣;李丹 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sm9 数字签名 签名 生成 方法 系统 | ||
1.一种基于SM9数字签名的盲签名生成方法,其特征在于,包括以下步骤:
1)由密钥生成中心KGC产生签名者Signer的签名私钥DSA;
2)签名者Signer在集合{1,2,…,N-1}中选择第一个随机数r,计算第一个临时变量w=gr,并将w发送给User;
其中,N为循环群和的阶,g=e(P1,Ppub-s),e为双线性对运算,P1为的生成元,Ppub-s为系统主公钥;
3)用户User收到w后,在集合{1,2,…,N-1}中选择两个随机数α,β,计算第二个临时变量w′=wαgβ,和待签名消息M的哈希值h=H2(M||w′,N),并计算第三个临时变量h′=α-1(h-β)mod N,最后将h′发送给签名者Signer;
4)签名者Signer收到h′后,计算出临时签名S′=[r-h′]DSA,并将S′发送给User;
5)用户User收到s′后计算出签名值S=[α]S′,并输出签名(h,S)。
2.根据权利要求1所述的盲签名生成方法,其特征在于,所述步骤1)中,密钥生成中心KGC产生签名者Signer的签名私钥DSA的过程如下:
1.1)KGC随机选择ks∈[0,N-1]作为签名主私钥,计算Ppub-s=[ks]P2作为签名主公钥;密钥生成中心秘密保存ks,公开Ppub-s;密钥生成中心选择并公开用一个字节表示的签名密钥生成函数识别符hid;其中,P2为的生成元;
1.2)签名者的标识为IDA,KGC为签名者产生签名私钥DSA,具体如下:KGC首先计算临时变量t1=H1(IDA||hid,N)+ks,若t1=0则返回步骤1.1)重新产生签名主私钥,计算和公开签名主公钥;否则计算最后计算DSA=[t2]P1。
3.一种基于SM9数字签名的盲签名生成系统,其特征在于,包括:
签名者签名私钥生成模块,用于通过密钥生成中心KGC产生签名者Signer的签名私钥DSA;
签名者变量生成模块,用于签名者Signer在集合{1,2,…,N-1}中选择第一个随机数r,计算第一个临时变量w=gr,并将w发送给User;
其中,N为循环群和的阶,g=e(P1,Ppub-s),e为双线性对运算,P1为的生成元,Ppub-s为系统主公钥;
用户变量生成模块,用于用户User收到w后,在集合{1,2,…,N-1}中选择两个随机数α,β,计算第二个临时变量w′=wαgβ,和待签名消息M的哈希值h=H2(M||w′,N),并计算第三个临时变量h′=α-1(h-β)mod N,最后将h′发送给签名者Signer;
临时签名生成模块,用于签名者Signer收到h′后,根据公式:S′=[r-h′]DSA计算出临时签名,并将S′发送给User;
盲签名生成模块,用于用户User收到s′后计算出签名值S=[α]S′,并输出签名(h,S)。
4.根据权利要求3所述的盲签名生成系统,其特征在于,所述签名者签名私钥生成模块中,密钥生成中心KGC产生签名者Signer的签名私钥DSA的过程如下:
1)KGC随机选择ks∈[0,N-1]作为签名主私钥,计算Ppub-s=[ks]P2作为签名主公钥;密钥生成中心秘密保存ks,公开Ppub-s;密钥生成中心选择并公开用一个字节表示的签名密钥生成函数识别符hid;其中,P2为的生成元;
2)签名者的标识为IDA,KGC为签名者产生签名私钥DSA,具体如下:KGC首先计算临时变量t1=H1(IDA||hid,N)+ks,若t1=0则返回步骤1.1)重新产生签名主私钥,计算和公开签名主公钥;否则计算最后计算DSA=[t2]P1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810333911.4/1.html,转载请声明来源钻瓜专利网。