[发明专利]SM2算法协同签名及解密方法、装置与系统有效
申请号: | 201710546334.2 | 申请日: | 2017-07-06 |
公开(公告)号: | CN107196763B | 公开(公告)日: | 2020-02-18 |
发明(设计)人: | 张永强;刘镪 | 申请(专利权)人: | 数安时代科技股份有限公司;广东信鉴信息科技有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 陈金普 |
地址: | 528200 广东省佛*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | sm2 算法 协同 签名 解密 方法 装置 系统 | ||
本发明涉及一种SM2算法协同签名及解密方法、装置与系统,其中从第一通信方角度实施的SM2算法协同签名方法,包括以下步骤:根据预设的密码杂凑算法,生成待签名消息的消息摘要;接收第二通信方基于第一公钥参数以及选取的随机数反馈的第一椭圆曲线群元素;根据消息摘要和第一椭圆曲线群元素,生成第一部分签名;基于第一部分签名进行模运算,生成混淆中间结果,并将混淆中间结果传输给第二通信方;在接收到第二通信方根据混淆中间结果反馈的中间签名时,根据中间签名和第一部分签名,生成第二部分签名;根据第一部分签名和第二部分签名,得到完整的SM2数字签名。
技术领域
本发明涉及密码学技术领域,特别是涉及一种SM2算法协同签名及解密方法、装置与系统。
背景技术
椭圆曲线密码(简称ECC)是一种基于在有限域上定义的椭圆曲线的数学难题的公开密钥体制。SM2算法是指由国家密码管理局制定的《GM/T 0003-2012 SM2椭圆曲线公钥密码算法》标准中规定的椭圆曲线公钥密码算法,是ECC密码体制的一种具体算法。
为了提高云计算环境中的私钥的安全性,传统技术提出在通信双方分别存储部分私钥,两方联合才能对消息进行签名或解密等操作,通信双方均无法获取到对方私钥的任何信息,因此攻击者在入侵其中任何一方的情况下,都不能伪造签名或解密密文。
在实现过程中,发明人发现传统技术中至少存在如下问题:传统技术将待签名消息的消息摘要发送给另一通信方,不利于保护用户隐私。同时,如果恶意攻击者通过控制信道来替换消息摘要,通信双方会根据被篡改的消息摘要来产生数字签名并输出,使得攻击者可以伪造签名。
发明内容
基于此,有必要针对传统技术无法保护用户隐私、抵抗恶意攻击的问题,提供一种SM2算法协同签名及解密方法、装置与系统。
为了实现上述目的,一方面,本发明实施例提供了从第一通信方角度实施的SM2算法协同签名方法,包括以下步骤:
根据预设的密码杂凑算法,生成待签名消息的消息摘要;
接收第二通信方基于第一公钥参数以及选取的随机数反馈的第一椭圆曲线群元素;根据消息摘要和第一椭圆曲线群元素,生成第一部分签名;
基于第一部分签名进行模运算,生成混淆中间结果,并将混淆中间结果传输给第二通信方;
在接收到第二通信方根据混淆中间结果反馈的中间签名时,根据中间签名和第一部分签名,生成第二部分签名;
根据第一部分签名和第二部分签名,得到完整的SM2数字签名。
另一方面,本发明实施例还提供了一种从第二通信方角度实施的SM2算法协同签名方法,包括以下步骤:
根据选取的随机数以及第一通信方的第一公钥参数,生成第一椭圆曲线群元素,并将第一椭圆曲线群元素传输给第一通信方;
接收第一通信方基于第一椭圆曲线群元素反馈的混淆中间结果,并根据第二私钥分量和混淆中间结果,生成中间签名;
将中间签名传输给第一通信方。
一方面,本发明实施例提供了一种从第二通信方角度实施的SM2算法协同解密方法,包括以下步骤:
接收第一通信方传输的根据第一私钥分量和所述第一比特串对应的椭圆曲线群元素得到的第一点乘结果;
将第二私钥分量与第一点乘结果进行乘积运算,得到第二点乘结果;
接收第一通信方根据SM2密文的第一比特串传输的第一比特串对应的椭圆曲线群元素;
根据第二点乘结果和第一比特串对应的椭圆曲线群元素,得到临时对称密钥,并提取SM2密文的第二比特串;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于数安时代科技股份有限公司;广东信鉴信息科技有限公司,未经数安时代科技股份有限公司;广东信鉴信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710546334.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种芯片保护夹
- 下一篇:一种多功能木塑化妆品收纳座