[发明专利]两方协同的EdDSA数字签名生成方法和装置有效
申请号: | 201911343574.8 | 申请日: | 2019-12-24 |
公开(公告)号: | CN111147254B | 公开(公告)日: | 2022-09-02 |
发明(设计)人: | 何德彪;冯琦;谢翔;孙立林 | 申请(专利权)人: | 矩阵元技术(深圳)有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/08 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 周达;刘飞 |
地址: | 518061 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 协同 eddsa 数字签名 生成 方法 装置 | ||
本申请提供了一种两方协同的EdDSA数字签名生成方法和装置,其中,该方法包括:第二用户端生成并根据第二部分私钥,生成第二部分公钥,并将第二部分公钥发送给第一用户端;第二用户端接收并根据第一用户端发送的第一部分公钥,生成协同公钥;第二用户端获取待签名的目标信息,根据第二部分私钥、目标信息和第二部分公钥生成临时公钥,并将临时公钥发送给第一用户端;第二用户端接收第一用户端发送的第一部分签名和中间变量;第二用户端根据中间变量生成第二部分签名,并根据第一部分签名和第二部分签名生成目标信息的目标签名。上述方案实现了两方协同完成对目标信息进行EdDSA数字签名,可以有效保证签名密钥的安全性和参与方的公平性。
技术领域
本申请涉及数字签名技术领域,特别涉及一种两方协同的EdDSA数字签名生成方法和装置。
背景技术
随着互联网的发展,许多事务在网络上开展,如电子商务和电子证券等。这些电子事务的完成通常涉及多个参与方,需要多个参与者同时对相关消息进行签名,因此对签名的安全性和参与者的公平性需求较高。
目前,数字签名算法的安全性和公平性较低,因此,需要提供一种提高签名的安全性和公平性的数字签名生成方法。
发明内容
本申请实施例提供了一种两方协同的EdDSA数字签名生成方法和装置,以提供一种提高签名的安全性和公平性的数字签名生成方法。
本申请实施例提供了一种两方协同的EdDSA数字签名生成方法,应用于第二用户端,包括:第二用户端生成并根据第二部分私钥,生成第二部分公钥,并将第二部分公钥发送给第一用户端,其中,第一用户端用于根据第二部分公钥生成协同公钥;第二用户端接收并根据第一用户端发送的第一部分公钥,生成协同公钥,其中,第一部分公钥由第一用户端根据第一用户端所生成的第一部分私钥生成;第二用户端获取待签名的目标信息,根据第二部分私钥、目标信息和第二部分公钥生成临时公钥,并将临时公钥发送给第一用户端;第二用户端接收第一用户端发送的第一部分签名和中间变量,其中,第一部分签名和中间变量由第一用户端根据第一部分私钥、目标信息、协同公钥和临时公钥生成;第二用户端根据中间变量生成第二部分签名,并根据第一部分签名和第二部分签名生成目标信息的目标签名。
在一个实施例中,在第二用户端根据第一部分签名和第二部分签名生成目标信息的目标签名之后,还包括:根据协同公钥确定目标签名是否正确;在确定目标签名正确的情况下,输出目标签名。
在一个实施例中,第二用户端根据第二部分私钥生成第二部分公钥,包括:对第二部分私钥进行哈希运算,得到第二杂凑值;根据第二杂凑值生成第二公钥标量;根据第二公钥标量生成第二部分公钥。
在一个实施例中,对第二部分私钥进行哈希运算,得到第二杂凑值,包括按照以下公式得到第二杂凑值:
其中,H(l2)为第二杂凑值,k2为第二部分私钥,为第二杂凑值中的元素,H(·)为在输入为任意长度比特串{0,1}*时输出2b比特长的密码杂凑函数,k2为b比特长的随机数,其中,b为满足2b-1p的整数,p为素数;
根据第二杂凑值生成第二公钥标量,包括按照以下公式生成第二公钥标量:
其中,s2为第二公钥标量,为第二杂凑值中的元素,其中,i=c,…,n-1,其中,c为辅因子,是以2为底的对数,n为满足c≤nb的整数;
根据第二公钥标量生成第二部分公钥,包括按照以下公式生成第二部分公钥:
A2=s2·B;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于矩阵元技术(深圳)有限公司,未经矩阵元技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911343574.8/2.html,转载请声明来源钻瓜专利网。