(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211122468.9
(22)申请日 2022.09.15
(71)申请人 北京天威诚信电子商务 服务有限公
司
地址 100085 北京市海淀区上地八街7号院
4号楼401A室
(72)发明人 龙毅宏 许明 陈韶光
(74)专利代理 机构 武汉科皓知识产权代理事务
所(特殊普通 合伙) 42222
专利代理师 罗飞
(51)Int.Cl.
H04L 9/32(2006.01)
H04L 51/046(2022.01)
(54)发明名称
一种基于微信小程序的数字签名协同生成
方法及系统
(57)摘要
基于微信小程序的数字签名方法: 秘密S1的
密文S2以及S2的解密密钥K1的密文S3保存在用
户移动终端; 当需要使用用户的签名私钥对消息
M数字签名时, 应用客户端程序启动数字签名微
信小程序, 将应用服务系统签发的安全令牌传递
给数字签名微信小程; 数字签名微信小程序从用
户移动终端获取S2、 S3, 将S3以及安全令牌提交
到数字签名协同生成服务系统; 数字签名协同生
成服务系统验证安全令牌, 解密S3, 返回K1; 数字
签名微信小 程序使用K 1解密S2得到S1; 数字签名
微信小程序使用 S1与数字签名协同生成服务系
统协同生成针对消息M的数字签名; 数字签名最
终生成前, 数字签名协同生 成服务系统通过数字
签名微信小程序对用户进行鉴别。
权利要求书5页 说明书14页 附图3页
CN 115529140 A
2022.12.27
CN 115529140 A
1.一种基于微信小程序的数字签名协同生成方法, 其特 征是:
用户的用于数字签名生成的秘密S1经加密后成为密文数据S2; 用于解密密文数据S2的
密钥K1经加密后成为密文 数据S3, 数字签名协同生 成服务系统有用于解密密 文数据S3的密
钥K2; 密文数据S2和密文 数据S3保存在用户移动终端中的数字签名微信小程序的数据存储
区; 所述数字签名微信小程序是在用户移动终端中运行的、 使用用户秘密S1生成数字签名、
向应用客户端程序提供数字签名功能的微信小程序; 所述应用客户端程序是一个网络应用
系统的客户端程序; 所述应用客户端程序对应有服务端的应用服务系统; 所述数字签名协
同生成服务系统是用于数字签名协同生成的服务端系统; 所述数字签名协同生成服务系统
向数字签名微信小程序提供数字签名协同生成或/和计算的功能; 所述数字签名协同生成
服务系统有服 务端的用于协同生成数字签名的秘密;
当用户移动终端中的应用客户端程序需要使用用户的签名私钥针对消息M生成数字签
名时, 应用客户端程序切换或跳转到数字签名微信小程序, 切换或跳转的同时, 应用客户端
程序将应用服务系统签发的安全令牌或应用服务系统签发的安全令牌的获取信息, 以及消
息M或消息M的获取信息传递给数字签名微信小程序; 所述应用服务系统签发的安全令牌是
请求数字签名协同生成系统进行数字签名协同生成或/和计算的授权凭证; 所述安全令牌
包含用户身份信息或/和公钥信息, 或者包含用户身份信息或/和公钥信息的相关信息, 所
述用户身份信息或/和公钥信息的相关信息指与用户身份或/和公钥唯一关联绑定的信息;
所述应用服务系统签发的安全令牌的获取信息是指用于获取应用服务系统签发的安全令
牌的信息, 依据或利用此获取信息能够获得应用服务系统签发的安全令牌, 所述消息M的获
取信息是指用于获取消息 M的信息, 依据或利用此获取信息能够获得消息 M;
或者, 当用户计算机中的应用客户端程序需要使用用户的签名私钥针对消息M生成数
字签名时, 应用客户端程序显示一条码, 用户使用移动终端中的微信客户端扫描 条码, 在用
户移动终端的微信客户端中启动数字签名微信小程序; 用户计算机中的应用客户端程序同
时通过条码将应用服务系统签发的安全令牌或应用服务系统签发的安全令牌的获取信息,
以及消息 M或消息M的获取信息传递给 数字签名微信小程序;
或者, 当用户使用的应用客户端程序需要使用用户的签名私钥针对消息M生成数字签
名时, 应用客户端程序通过应用服务系统向用户手机移动终端发送短信, 短信中有启动数
字签名签名小程序的链接, 且链接或短信中有应用服务系统签发的安全令牌和消息M的获
取信息, 用户通过点击 短信中的链接, 启动数字签名微信小程序; 若链接中不包含有安全令
牌和消息M的获取信息, 则用户将短信中的安全令牌和消息M的获取信息复制输入到数字签
名微信小程序;
数字签名微信小程序从用户移动终端中的微信小程序数据存储区读取或获取密文数
据S2、 密文数据S3, 将密文数据S3以及应用服务系统签发的安全令牌或应用服务系统签发
的安全令牌的获取信息提交到数字签名协同生成服 务系统;
若数字签名微信小程序提交的是应用服务系统签发的安全令牌的获取信 息, 则数字签
名协同生成服 务系统先利用此获取信息获得应用服 务系统签发的安全令牌;
数字签名协同生成服务系统验证安全令牌的有效性后, 使用密钥K2解密密文数据S3,
得到密钥K1, 将密钥K1返回给用户端的数字签名微信小程序;
用户端的数字签名微信小程序利用密钥K1解密密文数据S2, 得到用于数字签名生成的权 利 要 求 书 1/5 页
2
CN 115529140 A
2秘密S1; 用户端的数字签名微信小程序使用秘密S1, 并通过与数字签名协同生成服务系统
交互, 协同生成针对消息 M的数字签名;
在数字签名生成或返回或提交之前, 数字签名协同生成服务系统通过用户端的数字签
名微信小程序对用户进行鉴别, 确认用户是签名私钥或签名私钥对应的公钥的拥有者;
若应用客户端程序向数字签名微信小程序传递的不是消息M而是消息M的获取信 息, 则
在数字签名生成过程中, 数字签名微信小程序和/或数字签名协同生成服务系统利用此消
息M的获取信息获得消息 M;
最终生成的数字签名的提交方式包括: 由数字签名微信小程序获得并提交给应用服务
系统, 或者由数字签名协同生成服务系统提交给应用服务系统, 或者由应用服务系统或应
用客户端程序从数字签名协同生成服务系统获取, 或者最终生成的数字签名被存放在一个
数据存储中介系统, 由应用服务系统或应用客户端程序从数据存储中介系统获取; 所述数
据存储中介系统是一个用于数据存 储交换的系统。
2.根据权利要求1所述的基于微信小程序的数字签名协同生成方法, 其特 征是:
所述用户的用于数字签名生成的秘密S1包括: 用户端的用于数字签名协同生成的签名
私钥的秘密份额, 或者用户端的签名私钥的相关秘密的秘密份额, 或者用户端的被加密并
以密文形式参与数字签名生成运算、 计算的签名私钥的密文, 或者用户端的被加密 并以密
文形式参与数字签名生成运算、 计算的签名私钥的相关秘密的密文, 或者用户端的被加密
并以密文形式参与数字签名生成运 算、 计算的秘密份额的密文。
3.根据权利要求2所述的基于微信小程序的数字签名协同生成方法, 其特 征是:
若用户端所使用的秘密S1原本就是被加密的秘密并以密文形式参与数字签名协同生
成的计算, 则:
此用户端 的用于数字签名生成的秘密S1被再次加密, 得到密文数据S2; 对秘密S1进行
加密从而得到密 文数据S2所使用的加密密钥, 与对签名私钥或签名私钥的相关秘密或秘密
份额进行加密从而得到密文数据S1所使用的加密 密钥不必相同,
或者, 秘密S1不再加密而是直接以密文秘密S1的方式保存在用户移动终端中, 密文数
据S2、 S3不再存在, 相应地, 没有解密密文数据S3、 S2得到秘密S1的操作处理; 当针对消息M
生成数字签名时, 数字签名微信小程序直接从用户移动终端获取密 文秘密S1用于数字签名
生成的运 算、 计算。
4.根据权利要求1所述的基于微信小程序的数字签名协同生成方法, 其特 征是:
若用户的用于数字签名生成的秘密S0经加密后成为密文数据T0存放在网上, 则所述秘
密S1中包含有对网上存放的T0进 行解密的密钥K0; 当针对消息M进行数字签名时, 数字签名
微信小程序从网上下载密 文数据T0, 利用从数字签名服务系统返回的密钥K1解密密 文数据
S2得到秘密S1, 然后使用秘密S1 中的密钥K0, 解密下载的密 文数据T0, 得到用于数字签名生
成的秘密S0, 之后数字签名微信小程序以秘密S0作为秘密S1, 通过与数字签名协同生成服
务系统交互, 按使用秘密S1协同生 成针对消息M的数字签名的方式, 使用秘密S 0协同生成针
对消息M的数字签名。
5.根据权利要求1所述的基于微信小程序的数字签名协同生成方法, 其特 征是:
若密钥K1或密钥K1的密文数据S3或密钥K1的种子秘密存放在数字签名协同生成服务
系统, 则用户移动终端不保存钥 K1的密文数据S3; 当数字签名微信小程序需要使用密钥 K1权 利 要 求 书 2/5 页
3
CN 115529140 A
3
专利 一种基于微信小程序的数字签名协同生成方法及系统
文档预览
中文文档
23 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共23页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-03-03 12:16:11上传分享