[发明专利]一种保护用户隐私的SM2密码算法协同签名、解密方法在审
| 申请号: | 202111465919.4 | 申请日: | 2021-12-03 |
| 公开(公告)号: | CN114186251A | 公开(公告)日: | 2022-03-15 |
| 发明(设计)人: | 荆继武;王平建;王跃武;王鹏;雷灵光;刘丽敏;孙思维;寇春静 | 申请(专利权)人: | 中国科学院大学 |
| 主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/62;H04L9/30 |
| 代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 司立彬 |
| 地址: | 100049 北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 保护 用户 隐私 sm2 密码 算法 协同 签名 解密 方法 | ||
1.一种保护用户隐私的SM2密码算法协同签名方法,其步骤包括:
1)发起方和服务方分别生成各自的密钥对(d1,P1)和(d2,P2),发起方获得服务方的部分公钥P2并根据P2生成用户A的公钥PA;其中,发起方为用户A所在的终端;
2)发起方计算待签名消息M的摘要e,并根据部分公钥P2生成椭圆曲线点Q1;然后将e和Q1发送给服务方;
3)服务方根据自己的部分私钥d2、e和Q1计算得到部分签名(r,s2)后返回给发起方;
4)发起方根据发起方的部分私钥d1、r、s2计算并输出最终的签名(r,s)。
2.根据权利要求1所述的方法,其特征在于,生成密钥对(d1,P1)和(d2,P2)的方法为:
发起方向服务方发送协同密钥对生成请求;
服务方收到协同密钥对生成请求后,生成随机数d2∈[1,n-1],其中n为椭圆曲线基点G的阶;计算椭圆曲线点P2=[d2]G,得到服务方的密钥对(d2,P2)并将P2发送给发起方;
发起方验证P2是否满足椭圆曲线方程,如果满足则产生随机数d1∈[1,n-1];然后计算椭圆曲线点P1=[d1]G,得到发起方的密钥对为(d1,P1)。
3.根据权利要求2所述的方法,其特征在于,所述发起方产生随机数k1∈[1,n-1],通过Q1=[k1]P2计算椭圆曲线点Q1。
4.根据权利要求3所述的方法,其特征在于,得到所述部分签名(r,s2)的方法为:
31)服务方验证Q1是否满足椭圆曲线方程,如果满足则产生随机数k2∈[1,n-1];
32)计算椭圆曲线点(x1,y1)=[k2]G+Q1,将x1数据类型转换为整数;
33)计算r=e+x1mod n,若r=0或r+k2=n,则重新产生随机数k2返回步骤32);否则计算s2=(d2-1·(r+k2))mod n;得到所述部分签名(r,s2)。
5.根据权利要求4所述的方法,其特征在于,得到所述签名(r,s)的方法为:
41)发起方根据k1、s2进行计算,如果k1+s2=n则返回步骤2)重新生成椭圆曲线点Q1,将e和Q1发送给服务方;
42)计算s=(d1-1·(k1+s2)-r)mod n,若s=0则返回步骤2)重新生成椭圆曲线点Q1,将e和Q1发送给服务方;否则使用公钥PA验证(r,s)是否为消息M的签名,如果不是则本次签名失败;否则输出所述签名(r,s)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院大学,未经中国科学院大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111465919.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种玉石牛羊肉养殖制备流程
- 下一篇:一种浮式生产装卸油装置智能照明系统





