[发明专利]基于SM2的两方签名方法及系统有效
申请号: | 201811243198.0 | 申请日: | 2018-10-24 |
公开(公告)号: | CN109450640B | 公开(公告)日: | 2022-05-17 |
发明(设计)人: | 张立廷;王现方;潘文伦 | 申请(专利权)人: | 成都卫士通信息产业股份有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 成都市集智汇华知识产权代理事务所(普通合伙) 51237 | 代理人: | 罗艳 |
地址: | 610041 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sm2 签名 方法 系统 | ||
1.一种基于SM2的两方签名方法,其特征在于,第一通信方和第二通信方共享一套椭圆曲线参数,G为该椭圆曲线的基点,基点的阶数为n,所述方法包括:
第一通信方生成待签名消息M的消息摘要e,并根据G和自身的子私钥d1生成第一参数G1,将e和G1发送给第二通信方,其中,根据G和自身的子私钥d1生成第一参数G1具体包括:所述第一通信方产生一个随机数k1,k1∈[1,n-1],计算第一参数G1=[d1-1k1]G;
所述第二通信方根据e、G1、G和自身的子私钥d2生成第一部分签名r,若r不等于0,则根据r和d2生成第二参数s1,将r和s1发送给所述第一通信方;
所述第一通信方根据s1和d1生成第二部分签名s,若s不等于0且s不等于r,则输出完整签名(s,r)和消息M。
2.根据权利要求1所述的基于SM2的两方签名方法,其特征在于,在所述第一通信方生成待签名消息M的消息摘要e,并根据G和自身的子私钥d1生成第一参数G1,将e和G1发送给第二通信方的步骤前,还包括:第一通信方生成自身的子私钥d1,第二通信方生成自身的子私钥d2;
其中,所述第一通信方生成自身的子私钥d1,所述第二通信方生成自身的子私钥d2的方法,包括:
所述第一通信方产生一个随机数d1’,d1’∈[1,n-1],计算Hash(d1’),并将Hash(d1’)的计算结果转换为d1”,d1”∈[1,n-1],计算子私钥d1=(d1’+d1”)modn;
所述第二通信方产生一个随机数d2’,d2’∈[1,n-1],计算Hash(d2’),并将Hash(d2’)的计算结果转换为d2”,d2”∈[1,n-1],计算子私钥d2=(d2’+d2”)modn;
其中,Hash()表示预定的密码杂凑函数,mod表示求模运算。
3.根据权利要求2所述的基于SM2的两方签名方法,其特征在于,所述方法还包括:
所述第一通信方根据d1计算第三参数Q1=[d1-1]G,将Q1发送给所述第二通信方;
所述第二通信方根据d2和Q1计算P=[d2-1]Q1-G,将P作为公钥公开;
其中,[*]G表示椭圆曲线上的倍点运算。
4.根据权利要求2或3所述的基于SM2的两方签名方法,其特征在于,所述第一通信方生成待签名消息M的消息摘要e,并根据G和自身的子私钥d1生成第一参数G1,将e和G1发送给第二通信方的方法,包括:
所述第一通信方计算待签名的消息M的摘要e=Hash(Z||M),其中,Z表示第一通信方和第二通信方共同的身份标识,Hash()表示预定的密码杂凑函数,||表示级联;
所述第一通信方将e和G1发送给第二通信方。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都卫士通信息产业股份有限公司,未经成都卫士通信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811243198.0/1.html,转载请声明来源钻瓜专利网。