[发明专利]一种基于加密的私钥秘密的数字签名生成方法及系统有效
申请号: | 201710900625.7 | 申请日: | 2017-09-28 |
公开(公告)号: | CN107483205B | 公开(公告)日: | 2019-08-20 |
发明(设计)人: | 龙毅宏 | 申请(专利权)人: | 武汉理工大学 |
主分类号: | H04L9/30 | 分类号: | H04L9/30;H04L9/32 |
代理公司: | 武汉开元知识产权代理有限公司 42104 | 代理人: | 潘杰 |
地址: | 430070 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于加密的私钥秘密的数字签名生成方法:c1,…,cm是m个装置分别保存的[1,n‑1]中任选的整数秘密,其中一个装置还保存有满足关系cm+1=(c1c2…cm)(1+dA)‑1mod n的cm+1,其中n是SM2椭圆曲线基点的阶;m个装置通过使用c1,…,cm,cm+1及Gc=[(c1c2…cm)‑1]G协同生成使用用户SM2私钥dA针对消息的数字签名;与现有技术不同,本发明不保存不使用私钥的秘密份额,而是使用加密后的私钥秘密,从而提高了方案的安全性;进一步地每个装置可更新自己的秘密ci,从而进一步提高方案的安全性。基于所述方法构建的数字签名生成系统包括应用所述方法的m个装置。 | ||
搜索关键词: | 一种 基于 加密 秘密 数字签名 生成 方法 系统 | ||
【主权项】:
1.一种基于加密的私钥秘密的数字签名生成方法,其特征是:所述方法涉及m个装置,其中m≥2;m个装置分别标号为第1号到第m号装置;m个装置分别保存有[1,n‑1]区间内的整数秘密c1,c2,…,cm,其中ci是由第i号装置保存的秘密,i=1,…,m;第m号装置同时保存有[1,n‑1]区间内的整数cm+1;m个装置保存的秘密满足如下关系:cm+1=(c1c2…cm)‑1(1+dA)‑1mod n,其中,dA是用户的SM2私钥,n是SM2密码运算所使用的椭圆曲线点群的阶,也即SM2密码运算所使用的椭圆曲线点群的基点G的阶;在初始化阶段预先计算得到:Gc=[(c1c2…cm)‑1]G,P=[dA]G,其中,dA是用户的SM2私钥,G是SM2密码运算所使用的椭圆曲线点群的基点,P是dA对应的公钥;将Gc分发给所述m个装置、将P公开发布;当需要使用用户的SM2私钥dA针对消息M进行数字签名时,m个装置按如下方式进行数字签名的生成:第1号装置在[1,n‑1]区间内随机选择一整数k1,计算G1=[k1]Gc或G1=[c1k1]Gc;第1号装置将G1传送给下一个装置即第2号装置;第i号装置接收到Gi‑1后,i=2,…,m,在[1,n‑1]区间内随机选择一整数ki,计算Gi=[ci]Gi‑1+[ki]Gc或Gi=[ci](Gi‑1+[ki]Gc);不同的装置计算Gi采用的计算公式相同或者不同;若i≠m,则完成Gi计算后,第i号装置将Gi传送给下一装置即第i+1号装置,直到第m号装置完成Gm的计算;若i=m,则完成Gm计算后,第m号装置在[0,n‑1]区间内固定或随机选择一个整数km+1,计算Gm+1=Gm+[km+1](G+P)或Gm+1=(Gm+[km+1]Gc),之后转入计算r;完成Gm+1的计算后,由m个装置中的一个装置或者由m个装置之外的一个装置计算r=(e+x1)mod n,其中x1取自(x1,y1)=Gm+1,e是从用户标识和消息M导出的杂凑值;若得到的r、Gm+1满足:r≠0且[r]G+Gm+1不是SM2椭圆曲线点群的零元,则继续计算数字签名,否则,重新计算G1,…,Gm,Gm+1和r,直到r≠0且[r]G+Gm+1不是SM2椭圆曲线点群的零元;完成r的计算后转入s的计算;第1号装置选取s0=r;第1号装置按如下方式计算s1:若之前计算G1采用公式G1=[k1]Gc,则s1=(c1s0+k1)mod n;若之前计算G1采用公式G1=[c1k1]Gc,则s1=(c1s0+c1k1)mod n;第1号装置将s1传送给下一个装置即第2号装置;第i号装置接收到si‑1后,i=2,…,m,按如下方式计算si:若之前计算Gi采用公式Gi=[ci]Gi‑1+[ki]Gc,则si=(cisi‑1+ki)mod n;若之前计算Gi采用公式Gi=[ci](Gi‑1+[ki]Gc),则si=ci(si‑1+ki)mod n;若i≠m,则完成si计算后,第i号装置将si传送给下一装置即第i+1号装置,直到第m号装置完成sm的计算;若i=m,则完成sm计算后,第m号装置按如下方式计算sm+1:若之前计算Gm+1采用公式Gm+1=Gm+[km+1](G+P),则sm+1=(cm+1sm+km+1)mod n;若之前计算Gm+1采用公式Gm+1=(Gm+[km+1]Gc),则sm+1=cm+1(sm+km+1)mod n第m号装置计算得到s=(sm+1‑r)mod n;(r,s)就是生成的针对消息M的数字签名。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉理工大学,未经武汉理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710900625.7/,转载请声明来源钻瓜专利网。