[发明专利]SM2三方联合签名方法与系统在审

专利信息
申请号: 202010288792.2 申请日: 2020-04-14
公开(公告)号: CN113541926A 公开(公告)日: 2021-10-22
发明(设计)人: 尚望;兰天 申请(专利权)人: 成都天瑞芯安科技有限公司
主分类号: H04L9/08 分类号: H04L9/08;H04L9/30;H04L9/32
代理公司: 暂无信息 代理人: 暂无信息
地址: 610000 四川省成都市*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: sm2 联合 签名 方法 系统
【说明书】:

发明提出了三方计算中,三方联合签名的方法和系统。具体地,计算参与三方分别具有部分私钥,共有一个公钥。三方分别使用自己的部分私钥,通过联合计算才能对消息进行签名。联合签名计算中,参与三方均无法获取到对方私钥的任何信息。三方联合签名实现了对消息签名的三方共同确认;联合签名可以被三方共有公钥验签,一次验签就验证了三方的不可抵赖性;验签使用SM2算法的标准方法,从而能够兼容现有公钥应用。另外,攻击者在入侵其中任何一方的情况下,都不能伪造签名,从而提高了三方计算中的私钥安全性,也避免了私钥泄露后的签名滥用。

技术领域

本发明涉及SM2三方联合签名方法与应用系统,包括但不仅限于该领域。

背景技术

SM2算法是一种椭圆曲线(ECC)非对称密码算法算法,是我国自主研制的密码算法,并已经发布为国家标准GB/T 32918。SM2算法可以实现签名功能和验签功能。

根据算法规定,SM2算法签名方法描述如下:设G是椭圆曲线上的参考点,dA是私钥,PA是公钥,PA=dA*G,对消息e进行数字签名计算的签名结果为(r,s);首先选取随机数k,计算r=e+x1,其中(x1,y1)=k*G;计算s=(1+dA)-1*(k-r* dA)。

根据算法规定,SM2算法验证签名方法描述如下:已知签名(r,s)、公钥PA和SM2算法规定的椭圆曲线参数;首先计算t=r+s,如果t=0那么就没有验证通过;否则计算r’=x1+e,判断r’是否和r相等,如果相等则验证通过。

基于私钥唯一且由持有人所有,SM2签名可用于保证消息的完整性,保证交易的不可抵赖性。由于公钥可被公开性,该签名可以被各方验证。在签名应用中,如果一个消息需要被三方签名,现有做法是A签名后传递给B,B在A的基础上签名后传递给C,C在B的基础上再签名。该方法签名流程复杂,需要多次确认;同样,验签时需要多次验签和确认,才能证明交易的不可抵赖性。

发明内容

本发明提出一种SM2三方联合签名的方法和系统。具体地,参与三方分别具有部分私钥,共有一个公钥。三方分别使用自己的部分私钥,通过联合计算才能对消息进行签名,联合签名计算中,参与三方均无法获取到对方私钥的任何信息。联合计算得到的签名可以被三方共有的公钥验签,验签使用SM2算法的标准方法。该方法中,对消息的签名必须三方参与,签名同时保证了三方的操作确认。另外,攻击者在入侵其中任何一方的情况下,都不能伪造签名,从而提高了三方计算中的私钥安全性,避免私钥泄露后的签名滥用。签名可以被三方共有公钥验签,一次验证即可证明三方的不可抵赖性。验签使用SM2算法的标准方法,从而能够兼容现有公钥应用。

下面结合附图2对本发明进行详细说明。

本发明所述,参与三方分别具有部分私钥,共有一个公钥,说明如下。如图2中MA1所示,参与第一方记为A,具有私钥a和公钥Pa。如图2中MB1所示,参与第二方记为B,具有私钥b和公钥Pb。如图2中MC1所示,参与第三方记为C,具有私钥c和公钥Pc。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都天瑞芯安科技有限公司,未经成都天瑞芯安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010288792.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top