iso file download
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210480842.6 (22)申请日 2022.05.05 (71)申请人 北京电子科技学院 地址 100080 北京市丰台区富丰路7号 (72)发明人 许盛伟 刘昌赫 吕姗霖 甘楠  邓烨 和羽辛  (74)专利代理 机构 北京科迪生专利代理有限责 任公司 1 1251 专利代理师 金怡 (51)Int.Cl. H04L 9/08(2006.01) H04L 9/30(2006.01) H04L 9/32(2006.01) (54)发明名称 一种基于SM2算法的协同签名方法及系统 (57)摘要 本发明涉及一种基于SM2算法的协同签名方 法及系统, 其方法包括: 步骤S1: 签名方A和B各自 生成参数(dA, PA, PB, t’A)和(dB, PA, PB, t’B); S2: 签名方A与B共同生成会话密钥sk; 签名方A与B分 别选择随机数kA和kB, 分别计算RA和RB, 并利用sk 加密后计算参数M1与M2; S3: 签名A和B分别对M2、 M1进行解密并计算参数α与β; 签名方A验证α 与β是否相等; 如果不等, 则转至S1, 否则, 签名 方A计算参数r, 并将β发给签名方B; 签名方B验 证α与β是否相等; 如果不等, 则转至步骤S1, 否 则, 签名方B计算参数r; S4: 签名方B计算SigB, 发 给A, 签名方A计算SigA, 并基于SigA、 SigB和r计 算得到参数s, 最终得到签名结果(r, s)。 本发明 提供的方法即保证签名的正确性, 又能保证签名 密钥的安全性。 权利要求书3页 说明书5页 附图2页 CN 114978488 A 2022.08.30 CN 114978488 A 1.一种基于SM2算法的协同签名方法, 其特 征在于, 包括: 步骤S1: 签名方A和B各自生成其私钥dA和dB; 二者分别计算对应的公钥PA和PB发给对方, 分别计算 参数t′A、 t′B, 签名方A保存参数(dA, PA, PB, t′A), 签名方B保存参数(dB, PA, PB, t′B); 步骤S2: 签名方A与B共同生成会话密钥sk; 签名方A与B分别选择随机数kA和kB, 分别计 算其SM2椭圆曲线点RA和RB, 并利用sk加密后计算参数M1与M2, 其中, M1, M2代表所传输的密 文; 步骤S3: 签名方B收到M1后对其解密计算, 得到RA和α, 将(M2, α )发送给签名方A; 签名方A 收到M2后对其解密计算, 得到RB和β; 签名方A验证α与β 是否相等; 如果不等, 则转至步骤S1, 否则, 签名方A计算参数r, 并将β 发给签名方B; 签名方B验证α与β 是否相等; 如果不等, 则转 至步骤S1, 否则, 签名方B计算 参数r; 其中, α 与β 代 表杂凑值; 步骤S4: 签名方A与B分别计算参数t ″A和t″B, 签名方B基于t ′B、 t″B和r计算B方签名SigB, 将其加密后得到M3发送给签名方A, 签名方A对M3解密后得到SigB, 其中, M3代表所传输的密 文, 并基于t ′A、 t″A和r计算A方签名SigA; 签名方A基于SigA、 SigB和r计 算得到参数s, 最终得 到签名结果(r, s)。 2.根据权利 要求1所述的基于SM2算法的协同签名方法, 其特征在于, 所述步骤S1: 签名 方A和B各自生成其私钥dA和dB; 二者分别计算对应的公钥PA和PB发给对方, 分别计算参数t ′A、 t′B, 签名方A保存参数(dA, PA, PB, t′A), 签名方B保存参数(dB, PA, PB, t′B), 具体包括: 步骤S11: 签名方A随机生成一个大整数dA∈Zn作为私钥, 计算公钥PA=[dA]*G, 并将PA发 送给签名方B; 其中, G为椭圆曲线上的基点, Zn为模大整数n的剩余类; n是素数的因子, 作为 基点G的阶; 步骤S12: 签名方B随机生成一个大整数dB∈Zn作为私钥, 计算公钥PB=[dB]*G, 并将PB 发给A; 步骤S13: 签名方A和签名方B输入 和 运行πm, 分别得到输出值t ′A和t′B, 其中, t′A与 t′B是模n大整数; πm为预设的基于不经意传输协议的乘法器, 满足条件: 由两个参与 方A和B 运行, A和B对πm输入分别为大整数a∈Zn和b∈Zn, πm分别返回大整数tA和tB给A和B, 满足 其中, 为大整数a∈Zn模n的逆, 即 为大整数b∈Zn模n的逆; 步骤S14: A保存参数(dA, PA, PB, t′A), B保存参数(dB, PA, PB, t′B)。 3.根据权利 要求1所述的基于SM2算法的协同签名方法, 其特征在于, 所述步骤S2: 签名 方A与B共同生成会话密钥sk; 签名方A与B分别选择随机数kA和kB, 分别计算其SM2椭圆曲线 点RA和RB, 并利用sk加密后计算 参数M1与M2, 其中, M1, M2代表所传输的密文, 具体包括: 步骤S21: 签名方A与B共同生成会话密钥sk; 步骤S22: 签名方A选择一个随机数kA∈Zn, 计算RA=[kA]*G, 并基于sk对RA进行加密计算 得到M1=Encsk(RA); 将M1发送给签名方B; 步骤S23: 签名方B选择一个随机数kB∈Zn, 计算RB=[kB]*G, 并基于sk对RB进行加密计算 得到记M2=Encsk(RB)。 4.根据权利 要求1所述的基于SM2算法的协同签名方法, 其特征在于, 所述步骤S3: 签名 方B收到M1后对其解密计算, 得到RA和α, 将(M2, α )发送给签名方A; 签名方A收到M2后对其解权 利 要 求 书 1/3 页 2 CN 114978488 A 2密计算, 得到RB和β; 签名方A验证α与β 是否相等; 如果不等, 则转至步骤S1, 否则, 签名方A计 算参数r, 并将β 发给签名方B; 签名方B验证α与β 是否相等; 如果不等, 则转至步骤S1, 否则, 签名方B计算 参数r, 其中, α 与β 代 表杂凑值; 具体包括: 步骤S31: 签名方B收到M1后对其解密计算得到RA=Decsk(M1); 对RA, RB, sk进行哈希计算, 得到α =H(RA, RB, sk), 其中, H()为哈希函数; 签名方B将(M2, α )发送给签名方A; 步骤S32: 签名方A收到M2后对其解密计算得到RB=Decsk(M2); 对RA, RB, sk进行哈希计算, 得到β =H(RA, RB, sk); 步骤S33: 签名方A验证α与β 是否相等; 如果不等, 则转至步骤S1, 重新计算, 否则, 签名 方A计算参数: e=H(M)、 [x ′1, y′1]←[kA]*RB和r=e+x ′1, 其中, M为待签名的消息, e为M的杂 凑值, [x′1, y′1]←[kA]*RB: 在椭圆曲线[kA]*RB点上的横纵坐 标x′1和y′1; 同时签名方A将β 发 给签名方B; 步骤S34: 签名方B验证α与β 是否相等; 如果不等, 则转至步骤S1, 重新计算, 否则, 签名 方B计算e=H(M)、 [x ′1, y′1]←[kA]*RB和r=e+x ′1。 5.根据权利 要求1所述的基于SM2算法的协同签名方法, 其特征在于, 所述步骤S4: 签名 方A与B分别计算参数t ″A和t″B, 签名方B 基于t′B、 t″B和r计算B方签名S igB, 将其加密后得到 M3发送给签名方A, 签名方A对M3解密后, 得到SigB, 其中, M3代表所传输的密文, 并基于t ′A、 t″A和r计算A方签名SigA; 签名方A基于SigA、 SigB和r计算得到参数s, 最终得到签名结果 (r, s), 具体包括: 步骤S41: 签名方A与B分别以输入 和 共同运行πm, 分别得到参数t ″A和t″B, 满足条件: 步骤S42: 签名方B计算B方签名: SigB=t ″B+r*t′B; 将SigB加密后得到M3=Encsk(SigB), 并发送M3给签名方A; 步骤S43: 签名方A对M3基于sk进行解密, 得到SigB=Decsk(M3), 并计算A方签名SigA= t″A+r*t′A和参数s=SigA+SigB ‑r; 获得最终签名结果(r, s)。 6.一种基于SM2算法的协同签名系统, 其特 征在于, 包括下述模块: 初始化模块, 用于签名方A和B各自生成其私钥dA和dB; 二者分别计算对应的公钥PA和PB 发给对方, 分别计算参数t ′A、 t′B, 签名方A保存参数(dA, PA, PB, t′A), 签名方B保存参数(dB, PA, PB, t′B); 加密模块, 用于签名方A与B共同生成会话密钥 sk; 签名方A与B分别选择随机数kA和kB, 分别计算其SM2椭圆 曲线点RA和RB, 并利用sk加密后计算参数M1与M2, 其中, M1, M2代表所传输 的密文; 校验模块, 用于签名方B收到M1后对其解密计算, 得到RA和α, 将(M2, α )发送给签名方A; 签名方A收到M2后对其解密计算, 得到RB和β; 签名方A验证α与β 是否相等; 如果不等, 则转至 步骤S1, 否则, 签名方A计算参数r, 并将β 发给签名方B; 签名方B验证α与β 是否相等; 如果不 等, 则转至步骤S1, 否则, 签名方B计算 参数r; 其中, α 与β 代 表杂凑值; 签名模块, 用于

.PDF文档 专利 一种基于SM2算法的协同签名方法及系统

文档预览
中文文档 11 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共11页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于SM2算法的协同签名方法及系统 第 1 页 专利 一种基于SM2算法的协同签名方法及系统 第 2 页 专利 一种基于SM2算法的协同签名方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 08:14:03上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。