[发明专利]一种基于加法密钥分割的SM2签名方法有效

专利信息
申请号: 201711068252.8 申请日: 2017-11-03
公开(公告)号: CN107623570B 公开(公告)日: 2020-12-04
发明(设计)人: 袁峰;张立圆;封维端;张样攀 申请(专利权)人: 北京无字天书科技有限公司
主分类号: H04L9/08 分类号: H04L9/08;H04L9/32;H04L9/30
代理公司: 北京世誉鑫诚专利代理有限公司 11368 代理人: 孙国栋
地址: 100000 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 加法 密钥 分割 sm2 签名 方法
【权利要求书】:

1.一种签名密钥生成方法,其特征在于,包括:

S1客户端A生成自身的子私钥dA:客户端A产生一个位于[1,n-1]之间的随机数,将产生的随机数作为dA,即有:dA∈[1,n-1],其中n表示椭圆曲线的基点G的阶;

S2服务端B生成自身的子私钥dB:服务端B产生一个位于[1,n-1]之间的随机数,将产生的随机数作为dB

S3客户端A和服务端B约定一个正整数m,其中m≥112;

S4客户端A产生m-1个位于[1,n-1]之间的随机数,将产生的随机数作为xi,并计算令且取符号u,并令u=0;即有:xi∈[0,n-1];其中mod n表示模n运算;

S5服务端B产生m-1个位于[1,n-1]之间的随机数,将产生的随机数作为yi,并计算并令且产生一个位于[1,n-1]之间的随机数,将产生的随机数作为v;

即有:yi∈[0,n-1];

v∈[l,n-1];

S6对i=1,2,......,m执行如下过程:

S601客户端A产生一个0或1的随机数,将产生的随机数记为k,并产生一个位于[1,n-1]之间的随机数,将产生的随机数记为r,且令hk=xi,将(h0,h1)发送给服务端B;

即有:k∈{0,1};

r∈[l,n-1];

其中表示长度相等的两个比特串按比特的异或运算;

S602服务端B计算(h0+yi)v-1mod n,将计算结果记为f0,计算(hl+yi)v-1mod n,将计算结果记为f1

即有:f0=(h0+yi)v-1mod n;

f1=(hl+yi)v-1mod n;

其中,v-1mod n表示使得v·y≡1(mod n)成立的唯一整数y,1≤y≤n-1;

S603服务端B产生一个位于[1,n-1]之间的随机数,将产生的随机数记为x,并计算[x]G,将计算结果记为X,且将X发送给客户端A;

即有:x∈[1,n-1];

X=[x]G;

其中[x]G表示椭圆曲线上点G的x倍点,x是正整数;

S604客户端A生成一个位于[1,n-1]之间的随机数,将产生的随机数记为y,并计算[y]G,将计算结果记为F,计算H(F),将计算结果记为key;

即有:y∈[1,n-1];

F=[y]G;

key=H(F);

其中,H为密码杂凑函数;

若k=0,则Y=F,若k≠0,则Y=X+F,并将Y发送给服务端B;

S605服务端B计算H([x]Y),将计算结果记为k0,计算H([x](Y-X)),将计算结果记为k1,计算将计算结果记为C0,计算f1+k1},将计算结果记为C1,并将Co和C1发送给客户端A;

即有:k0=H([x]Y);

kl=H([x](Y-X));

S7客户端A计算将计算结果记为fk,计算u+fk mod n,将计算结果记为u;

即有:P=[v-1]([u-1]G)-G;

S8服务端B将[v-1]G发送给客户端A,客户端A计算签名公钥[u-1]([v-1]G)-G,记为P;

即有:P=[u-1]([v-1]G)-G。

2.一种基于加法密钥分割的SM2签名方法,其特征在于,包括:

客户端A生成待签名消息M的消息摘要e和第一部分签名Q1,并将e和第一部分签名发送给服务端B,包括:

客户端A计算H(Z||M),将计算结果记为e,且生成一个位于[1,n-1]之间的随机数,将计算结果记为k1,并计算[kl](P+G),将计算结果记为Q1,将e和Q1发送给服务端B,其中,M为待签名的消息,Z是按照SM2算法对用户标识、标识长度、椭圆曲线参数、用户签名公钥等信息使用密码杂凑函数H计算的杂凑值;

服务端B生成第二部分签名r和第三部分签名s1,将r和s1发送给第一部分客户端A,包括:

服务端B生成一个位于[1,n-1]之间的随机数,将计算结果记为k2,计算椭圆曲线点[k2](P+G)+[kl](P+G),将计算结果记为(x1,y1},计算(e+xl)mod n,将计算结果记为r,其中,若r=0则返回步骤9,否则计算k2+rdB mod n,将计算结果记为s1,并将r,s1发送给客户端A;

客户端A根据Ql、r和s1生成完整签名(r,s)并输出,包括:

客户端A计算k1+rdA+s1-r mod n,将计算结果记为s,其中,若s=0或r+s=0mod n,则返回至客户端A生成待签名消息M的消息摘要e和第一部分签名Q1步骤进行重新计算,否则,消息M的数字签名为(r,s)。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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