买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:北京天威诚信电子商务服务有限公司
摘要:本发明涉及SM2数字签名生成方法:签名装置有PA=[dA]G,有秘密cA=E1+dA‑1,其中dA为SM2签名私钥,E·为同态加密运算,签名辅助系统有解密运算的私钥;对消息M签名时,签名装置、签名辅助系统在[1,n‑1]内随机选择整数k1、k2,计算Q=[b1k1+b2k2]G或Q=[bk1k2]G,其中b1、b2、b为1或1+dA,n为基点G的阶;利用消息M和Q计算r=e+x1modn;利用同态加密运算计算得到s=k1b1+k2b2+r1+dA‑1‑rmodn或s=bk1k2+r1+dA‑1‑rmodn,则r,s为生成的数字签名。
主权项:1.一种签名者掌控签名制作数据的SM2数字签名生成方法,其特征是:签名装置有PA=[dA]G,有秘密cA=E1+dA-1,其中dA为用户的SM2签名私钥,G为SM2椭圆曲线点群的基点,PA为用户的SM2签名私钥dA对应的公钥,1+dA-1为1+dA的模n乘法逆,n为基点G的阶,n为素数,E·是采用同态加密算法的加密运算;所述签名装置是签名者即SM2签名私钥dA的拥有者的计算装置;所述同态加密算法为加法同态加密算法或全同态加密算法;签名辅助系统有与同态加密算法的加密运算E·所采用的公钥对应的解密运算的私钥,或者与同态加密算法的加密运算E·所采用的公钥对应的解密运算的私钥被签名辅助系统的密钥加密,其中,签名辅助系统的密钥包括对称密钥或公钥;所述签名辅助系统是辅助、协助签名装置完成数字签名生成的计算装置或系统;若与同态加密算法的加密运算E·所采用的公钥对应的解密运算的私钥被签名辅助系统的密钥加密,则签名装置还有解密运算的私钥的密文dE;当需要使用用户的SM2签名私钥dA针对消息M进行数字签名时,签名装置和签名辅助系统按如下方式生成针对消息M的数字签名:签名装置利用消息M计算得到用于计算r=e+x1modn的杂凑值e,其中,r为数字签名的组成部分,x1为后续计算得到的椭圆曲线点Q的横坐标;签名装置将e发送给签名辅助系统;签名装置在[1,n-1]区间内随机选择一个整数k1;签名辅助系统在[1,n-1]区间内随机选择一个整数k2;签名装置和签名辅助系统在不暴露各自秘密k1、k2的情况下完成如下计算:签名装置在确保签名辅助系统不重新选择k2的情况下,通过与签名辅助系统交互计算得到Q=[b1k1+b2k2]G,其中b1=1或1+dA,b2=1或1+dA,其中b2=1仅在E·对应的同态加密算法是全同态加密算法时适用,b1、b2的取值用于选择Q的计算式;签名辅助系统在确保签名装置不重新选择k1的情况下,通过与签名装置交互计算得到Qf=[b1k1+b2k2]G;签名装置、签名辅助系统分别检查Q、Qf是否为零元,若Q和或Qf为零元,则重新选择k1、k2,重新计算Q、Qf,直到Q和Qf为非零元;或者,签名装置和签名辅助系统在不暴露各自秘密k1、k2的情况下完成如下计算:签名装置在确保签名辅助系统不重新选择k2的情况下,通过与签名辅助系统交互计算得到Q=[bk1k2]G,其中b=1或1+dA;签名辅助系统在确保签名装置不重新选择k1的情况下,通过与签名装置交互计算得到Qf=[bk1k2]G;若b=1,则按Q=[bk1k2]G、Qf=[bk1k2]G方式计算Q、Qf仅在E·对应的同态加密算法是全同态加密算法时适用;签名装置计算r=e+x1modn,其中x1取自x1,y1=Q;签名辅助系统计算rf=e+x1fmodn,其中x1f取自x1f,y1f=Qf;签名装置和签名辅助系统分别检查是否会出现s+rmodn=0和或s+rfmodn=0的情况,其中s是将要计算生成的数字签名r,s中的参数s,若是,则重新选择k1、k2,重新计算Q、Qf,重新计算r、rf,直到不会出现s+rmodn=0和或s+rfmodn=0的情况;若不会出现s+rmodn=0和或s+rfmodn=0的情况,则进行后续计算处理;签名装置按如下方式之一计算s1:s1计算方式一:Q按计算式Q=[b1k1+b2k2]G计算得到且b2=1+dA;签名装置利用r、cA、k1通过同态加密算法计算得到s1=Ek1b11+dA-1+r1+dA-1modn;s1计算方式二:Q按计算式Q=[b1k1+b2k2]G计算得到;若b2=1,则E·对应的同态加密算法是全同态加密算法;签名辅助系统计算c2=Ek2,将c2发送给签名装置;签名装置利用r、cA、k1、c2通过同态加密算法计算得到s1=Ek1b11+dA-1+k2b21+dA-1+r1+dA-1modn;s1计算方式三:Q按计算式Q=[bk1k2]G计算得到;若b=1,则E·对应的同态加密算法是全同态加密算法;签名辅助系统计算c2=Ek2,将c2发送给签名装置;签名装置利用r、cA、k1、c2通过同态加密算法计算得到s1=Ek1k2b1+dA-1+r1+dA-1modn;计算得到s1后,签名装置将s1、PA发送给签名辅助系统;若与同态加密算法的加密运算E·所采用的公钥对应的解密运算的私钥被签名辅助系统的密钥加密,其密文为dE,则签名装置还将dE发送给签名辅助系统,而签名辅助系统解密dE得到与同态加密算法的加密运算E·所采用的公钥对应的解密运算的私钥;对于s1计算方式一,签名辅助系统按如下方式计算s:签名辅助系统解密s1得到s1的明文s12,计算s2=s12+k2modn,s=s2-rfmodn,将s返回给签名装置;在将s返回给签名装置之前,签名辅助系统验证s12是否是使用k1、rf和公钥PA对应的私钥dA计算得到,或者验证s2是否是使用k1、k2、rf和公钥PA对应的私钥dA计算得到,若是,则继续,若验证失败,则转入出错处理;对于s1计算方式二、方式三,签名辅助系统按如下方式计算s:签名辅助系统解密s1得到s1的明文s12,计算s2=s12modn,s=s2-rfmodn,将s返回给签名装置;在将s返回给签名装置之前,签名辅助系统验证s2是否是使用k1、k2、rf和公钥PA对应的私钥dA计算得到,若是,则继续,若验证失败,则转入出错处理;签名装置验证s是否是使用k1、k2、r和公钥PA对应的私钥dA按SM2数字签名的计算方式计算得到,若验证通过,则r,s为消息M的数字签名,否则,转入出错处理;在以上采用同态加密算法的加密运算E·的计算式中,amodn,其中a为一个整数,表示与a模n同余的整数;所述签名辅助系统在辅助、协助签名装置完成数字签名的生成之前,先鉴别确认使用签名装置的用户即签名者是否是公钥PA的拥有者;所述签名装置即签名者拥有的计算装置是具有计算能力、包含软硬件的装置;所述签名装置通过其内实施的密码模块、密码程序实施以上所述数字签名计算、生成步骤,实施SM2数字签名功能。
全文数据:
权利要求:
百度查询: 北京天威诚信电子商务服务有限公司 签名者掌控签名制作数据的SM2数字签名生成方法及系统
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。