CN117439737B - 协同签名方法和协同签名*** - Google Patents
协同签名方法和协同签名*** Download PDFInfo
- Publication number
- CN117439737B CN117439737B CN202311745141.1A CN202311745141A CN117439737B CN 117439737 B CN117439737 B CN 117439737B CN 202311745141 A CN202311745141 A CN 202311745141A CN 117439737 B CN117439737 B CN 117439737B
- Authority
- CN
- China
- Prior art keywords
- type
- target
- user equipment
- parameters
- parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000012795 verification Methods 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 230000006854 communication Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例提供一种协同签名方法和协同签名***,该方法包括:随机生成密钥参数以及第一类型的目标参数;基于密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;基于第一类型的目标参数和第二类型的目标参数,确定第三类型的目标参数,并向其他用户设备广播第三类型的目标参数;若接收到其他所有设备广播的第三类型的参数,则向其他用户设备广播第一类型的目标参数和第二类型的目标参数;若接收到其他所有设备广播的第一类型的参数以及第二类型的参数,则对其他所有设备对应的第三类型的参数进行验证;若任一设备验证不通过,则上报错误信息,并停止签名过程。保证了私钥的安全性。
Description
技术领域
本发明涉及加密通信技术领域,尤其涉及一种协同签名方法和协同签名***。
背景技术
相关技术中,为了保护私钥的安全性,可以将私钥拆分成多个私钥分量,然后将各私钥分量分发给不同用户设备。当需要使用私钥签名时,需要持有私钥分量的多个用户设备协同完成签名过程。简单来说,该协同签名的过程包括:任一用户设备i计算第一参数并广播第一参数,中心设备基于所有用户设备广播的第一参数以及待签名的消息计算共享参数并在参与签名过程的所有用户设备内部共享该共享参数,用户设备i基于共享参数以及用户设备i所持有的私钥分量计算第二参数并将第二参数发送给中心设备,最后中心设备基于所有用户设备发送的第二参数确定签名结果。
在上述过程中,如果参与签名过程的用户设备中存在恶意用户设备,恶意用户设备在接收到其他所有用户设备广播的第一参数之后,再根据其他所有用户设备的第一参数计算自己的第一参数Rx,并使用该第一参数Rx参与到中心设备计算共享参数的过程中,这样会导致恶意用户设备在接收到签名结果之后,基于签名结果反推出整个的私钥,进而对加密通信的安全性造成威胁。
发明内容
本发明实施例提供一种协同签名方法和协同签名***,用以实现保证私钥的安全性,保证加密通信的安全性。
第一方面,本发明实施例提供一种协同签名方法,应用于协同签名***,所述协同签名***中包括参与签名过程的目标用户设备以及其他用户设备,所述方法包括:
所述目标用户设备随机生成密钥参数以及第一类型的目标参数;
所述目标用户设备基于所述密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;
所述目标用户设备基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,并向所述其他用户设备广播所述第三类型的目标参数;
若所述目标用户设备接收到所述其他用户设备中的所有设备广播的第三类型的参数,则向所述其他用户设备广播所述第一类型的目标参数和所述第二类型的目标参数;
若所述目标用户设备接收到所述其他用户设备中的所有设备广播的第一类型的参数以及第二类型的参数,则基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证;
若所述其他用户设备中存在任一设备验证不通过,所述目标用户设备则上报错误信息,并停止签名过程。
可选地,所述协同签名***中还包括中心设备,所述目标用户设备向所述其他用户设备广播所述第二类型的目标参数,包括:
所述目标用户设备向所述其他用户设备以及所述中心设备广播所述第二类型的目标参数;
所述方法还包括:
所述中心设备接收所述目标用户设备广播的所述第二类型的目标参数以及所述其他用户设备中的所有设备广播的第二类型的参数;
若所述目标用户设备以及所述其他用户设备中的所有设备验证均通过,所述中心设备则基于所述第二类型的目标参数、所述第二类型的参数以及待签名的消息,确定共享参数;
所述中心设备将所述共享参数共享给所述目标用户设备以及所述其他用户设备;
所述目标用户设备基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,并向所述中心设备发送所述第四类型的目标参数;
所述中心设备基于所述目标用户设备发送的所述第四类型的目标参数以及所述其他用户设备中的所有设备发送的第四类型的参数,确定签名结果。
可选地,所述目标用户设备基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,包括:
所述目标用户设备基于所述密钥参数、所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数。
可选地,所述目标用户设备基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,包括:
所述目标用户设备基于所述第一类型的目标参数、所述第二类型的目标参数以及哈希算法,确定第三类型的目标参数。
可选地,所述基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证,包括:
通过哈希算法,基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证。
第二方面,本发明实施例提供一种协同签名***,所述协同签名***中包括参与签名过程的目标用户设备以及其他用户设备,其中,所述目标用户设备,用于:
随机生成密钥参数以及第一类型的目标参数;
基于所述密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;
基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,并向所述其他用户设备广播所述第三类型的目标参数;
若接收到所述其他用户设备中的所有设备广播的第三类型的参数,则向所述其他用户设备广播所述第一类型的目标参数和所述第二类型的目标参数;
若所述目标用户设备接收到所述其他用户设备中的所有设备广播的第一类型的参数以及第二类型的参数,则基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证;
若所述其他用户设备中存在任一设备验证不通过,所述目标用户设备则上报错误信息,并停止签名过程。
可选地,所述协同签名***中还包括中心设备;
所述目标用户设备,用于向所述其他用户设备以及所述中心设备广播所述第二类型的目标参数;
所述中心设备,用于接收所述目标用户设备广播的所述第二类型的目标参数以及所述其他用户设备中的所有设备广播的第二类型的参数;若所述目标用户设备以及所述其他用户设备中的所有设备验证均通过,则基于所述第二类型的目标参数、所述第二类型的参数以及待签名的消息,确定共享参数;将所述共享参数共享给所述目标用户设备以及所述其他用户设备;
所述目标用户设备,用于基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,并向所述中心设备发送所述第四类型的目标参数;
所述中心设备,用于基于所述目标用户设备发送的所述第四类型的目标参数以及所述其他用户设备中的所有设备发送的第四类型的参数,确定签名结果。
可选地,所述目标用户设备,用于:
基于所述密钥参数、所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数。
可选地,所述目标用户设备,用于:
基于所述第一类型的目标参数、所述第二类型的目标参数以及哈希算法,确定第三类型的目标参数。
可选地,所述目标用户设备,用于:
通过哈希算法,基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证。
在本发明实施例中,即使是恶意用户设备,恶意用户设备先接收到其他用户设备的/>,同时也需要广播自己的/>,如果向外广播了自己的/>,就必然要先计算出/>。其中,/>和/>是第三类型的参数。如果恶意用户设备/>不广播/>,那么对于其他用户设备来说,就无法实现接收到其余所有用户设备的/>,进而也就不会执行后续的广播的步骤,进而无法执行后面的操作。其中,/>和/>依次为第一类型的参数、第二类型的参数。那么由此可见,恶意用户设备/>必须要广播自己的/>。在广播了/>之后,在满足条件的情况下,恶意用户设备/>还需要广播/>,并且不能篡改已预先计算出的,因为其他用户设备会基于之前接收到的/>去验证/>。其中,/>和/>依次为第一类型的参数、第二类型的参数。即使恶意用户设备/>等待其他用户设备先广播自己的,再想利用/>计算新的/>也无法实现了,因为与预先计算出的/>相匹配的/>已经被广播出去了,如果恶意用户设备/>后续篡改之前计算出的/>,则新的/>与/>不匹配,验证无法通过。基于此,采用本发明实施例提供的方法,可以保证私钥的安全性,进而保证通信过程的安全性不遭受威胁。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种协同签名方法的流程示意图;
图2为本发明实施例提供的一种协同签名***的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
本发明实施例提供一种协同签名方法,该方法可以应用于协同签名***。其中,该协同签名***可以包括参与签名过程的目标用户设备以及其他用户设备。需要说明的是,可以将私钥拆分为N个私钥分量,在实际进行签名时,持有私钥分量的M个用户设备可以参与签名过程,其中,M≤N。
值得注意的是,参与签名过程的各用户设备的计算过程相类似,在本发明实施例中以目标用户设备为例来说明在单个用户设备中的计算过程,其他用户设备中的计算过程可以参照目标用户设备中的计算过程来实施,对此不再重复说明。
下面先介绍生成私钥分量的方法。
假设为私钥,/>为相应的公钥,/>。其中,G可以是椭圆曲线的基点坐标,/>为基点的阶。其中,公私钥对可以采用schnorr算法生成。
设定门限为t,并假设需要将私钥拆分为n份。
可以随机选择,且/>满足/>。可以构造多项式/>,/>。可以随机选择/>,且/>满足,然后可以计算/>,/>即为用户设备所持有的私钥分量。
其中,需要说明的是,多项式可以是拉格朗日插值多项式,/>是一个通过n个点/>并且次数不大于(n-1)的多项式。拉格朗日插值多项式的一般公式可以是:/>。其中,/>。
假设目标用户设备为,目标用户设备可以使用相应的私钥分量/>与其他用户设备等协同完成签名过程。图1为本发明实施例提供的一种协同签名方法的流程图,如图1所示,该方法包括如下步骤:
101、目标用户设备随机生成密钥参数以及第一类型的目标参数。
102、目标用户设备基于密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数。
103、目标用户设备基于第一类型的目标参数和第二类型的目标参数,确定第三类型的目标参数,并向其他用户设备广播第三类型的目标参数。
104、若目标用户设备接收到其他用户设备中的所有设备广播的第三类型的参数,则向其他用户设备广播第一类型的目标参数和第二类型的目标参数。
105、若目标用户设备接收到其他用户设备中的所有设备广播的第一类型的参数以及第二类型的参数,则基于其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对各用户设备对应的第三类型的参数进行验证。
106、若其他用户设备中存在任一设备验证不通过,目标用户设备则上报错误信息,并停止签名过程。
实际应用中,目标用户设备可以随机生成密钥参数以及第一类型的目标参数,其中,/>。
目标用户设备可以基于密钥参数以及预设的椭圆曲线的基点坐标G,确定第二类型的目标参数/>。其中,第二类型的目标参数的计算表达式可以是:/>。
在确定出第二类型的目标参数以及第三类型的目标参数之后,目标用户设备可以基于第一类型的目标参数和第二类型的目标参数/>,确定第三类型的目标参数/>,并向其他用户设备广播第三类型的目标参数/>。
在某些可选实施例中,上述确定第三类型的目标参数的过程可以实现为:目标用户设备基于第一类型的目标参数、第二类型的目标参数以及哈希算法,确定第三类型的目标参数。基于此,计算第三类型的目标参数的表达式可以是:。其中,H()表示哈希算法。
对于目标用户设备来说,目标用户设备对外广播了第三类型的目标参数。对于其他用户设备来说,其他用户设备也可以参照上述介绍的计算第三类型的目标参数的方式那样,各自计算各自的第三类型的参数/>。其他用户设备中的每个用户设备在计算完第三类型的参数之后,也需对外广播自己的第三类型的参数。这样,其他用户设备会一一对外广播自己计算的第三类型的参数,而目标用户设备则会一一收到其他用户设备广播的第三类型的参数。
目标用户设备可以收集所有其他用户设备广播的第三类型的参数,当检测到已接收到其他用户设备中所有的用户设备广播的第三类型的参数之后,可以对外广播第一类型的目标参数和第二类型的目标参数。
与目标用户设备相同的,其他用户设备中的所有的用户设备也需在接收到所有的第三类型的参数之后,对外广播各自的第一类型的参数和第二类型的参数。目标用户设备可以一一接收各个其他用户设备广播的第一类型的参数和第二类型的参数,在接收到其他用户设备中的所有的用户设备广播的第一类型的参数以及第二类型的参数之后,进一步地,目标用户设备可以一一基于其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对各用户设备对应的第三类型的参数进行验证。
在某些可选实施例中,上述验证过程可以实现为:通过哈希算法,基于其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对各用户设备对应的第三类型的参数进行验证。基于此,验证过程可以表示为:。
只有在目标用户设备一一对其他用户设备中的所有的用户设备的第三类型的参数验证都通过之后,才可以执行后续步骤,否则只要有任一其他用户设备未验证通过,则可以上报错误并停止签名过程的后续步骤。
下面介绍在其他用户设备中的所有的用户设备的第三类型的参数均通过验证后的签名过程。
可选地,协同签名***中还包括中心设备。目标用户设备向其他用户设备以及中心设备广播第二类型的目标参数;中心设备接收目标用户设备广播的第二类型的目标参数以及其他用户设备中的所有设备广播的第二类型的参数;若目标用户设备以及其他用户设备中的所有设备验证均通过,中心设备则基于第二类型的目标参数、第二类型的参数以及待签名的消息,确定共享参数;中心设备将共享参数共享给目标用户设备以及其他用户设备;目标用户设备基于共享参数以及目标用户设备对应的私钥分量,确定第四类型的目标参数,并向中心设备发送第四类型的目标参数;中心设备基于目标用户设备发送的第四类型的目标参数以及其他用户设备中的所有设备发送的第四类型的参数,确定签名结果。
实际应用中,目标用户设备可以对外广播第二类型的目标参数,其中,也包括中心设备。基于此,中心设备也可以接收到目标用户设备广播的第二类型的目标参数。与此同时,其他用户设备也需要对外广播各自的第二类型的参数,因此中心设备最终可以收集到目标用户设备广播的第二类型的目标参数,以及其他用户设备中的所有的用户设备广播的第二类型的参数。接着,中心设备可以基于上述接收到的参数,协同基于第二类型的目标参数、第二类型的参数以及待签名的消息,确定共享参数。
在某些可选实施例中,上述确定共享参数的过程可以实现为:中心设备计算R,其中,。即中心设备基于目标用户设备广播的第二类型的目标参数,以及其他用户设备中的所有的用户设备广播的第二类型的参数,计算R。接着,中心设备可以基于R、待签名的消息、以及公钥/>,计算共享参数。其中,计算共享参数的过程可以表示为:。
在中心设备计算出共享参数之后,可以在内部共享该共享参数,即将共享参数共享给目标用户设备以及其他用户设备。这样,目标用户设备可以获取到共享参数。
在目标用户设备获取到共享参数之后,可以基于密钥参数、共享参数以及目标用户设备对应的私钥分量,确定第四类型的目标参数,该过程具体可以实现为:计算。其中,/>为第四类型的目标参数,/>为密钥参数,e为共享参数,/>为目标用户设备所持有的私钥分量,/>为/>的变形,设。
在目标用户设备计算出第四类型的目标参数之后,可以对外广播第四类型的目标参数。相类似地,其他用户设备也可以参照计算第四类型的目标参数的方式计算各自的第四类型的参数,并对外广播第四类型的参数。这样,中心设备可以接收到目标用户设备广播的第四类型的目标参数以及其他用户设备中的所有的用户设备广播的第四类型的参数。进而中心设备可以基于上述接收到的参数,计算签名结果。其中,计算签名结果的过程可以表示为:。其中,/>为目标用户设备广播的第四类型的目标参数以及其他用户设备中的所有的用户设备广播的第四类型的参数中的任一参数。最终,/>即为签名结果。
在上述过程中,假设存在恶意用户设备,该恶意用户设备/>在协作计算R的过程中,在接收到其余所有的用户设备计算的/>之后,选择/>,并计算,使用/>参与到协作计算R的过程中。在这样的情况下,会导致协作计算而得的/>。当中心设备生成签名结果之后,恶意用户设备/>获取到该签名结果,基于其中的S来计算/>即可反推出整个的私钥/>。由此可见,如果让任何用户设备都能在接收到其余所有的用户设备计算的/>之后再去计算自己的/>,就会对私钥的安全性造成威胁。
为了避免上述问题,在本发明实施例中,即使是恶意用户设备,恶意用户设备先接收到其他用户设备的/>,同时也需要广播自己的/>,如果向外广播了自己的/>,就必然要先计算出/>。如果恶意用户设备/>不广播/>,那么对于其他用户设备来说,就无法实现接收到其余所有用户设备的/>,进而也就不会执行后续的广播/>的步骤,进而无法执行后面的操作。那么由此可见,恶意用户设备/>必须要广播自己的/>。在广播了之后,在满足条件的情况下,恶意用户设备/>还需要广播/>,并且不能篡改已预先计算出的/>,因为其他用户设备会基于之前接收到的/>去验证/>。即使恶意用户设备/>等待其他用户设备先广播自己的/>,再想利用/>计算新的/>也无法实现了,因为与预先计算出的/>相匹配的/>已经被广播出去了,如果恶意用户设备/>后续篡改之前计算出的/>,则新的/>与/>不匹配,验证无法通过。基于此,采用本发明实施例提供的方法,可以保证私钥的安全性,进而保证通信过程的安全性不遭受威胁。
图2为本发明实施例提供的一种协同签名***的结构示意图,如图2所示,所述协同签名***中包括参与签名过程的目标用户设备21以及其他用户设备22,其中,所述目标用户设备21,用于:
随机生成密钥参数以及第一类型的目标参数;
基于所述密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;
基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,并向所述其他用户设备22广播所述第三类型的目标参数;
若接收到所述其他用户设备22中的所有设备广播的第三类型的参数,则向所述其他用户设备22广播所述第一类型的目标参数和所述第二类型的目标参数;
若接收到所述其他用户设备22中的所有设备广播的第一类型的参数以及第二类型的参数,则基于所述其他用户设备22中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证;
若所述其他用户设备22中存在任一设备验证不通过,则上报错误信息,并停止签名过程。
可选地,所述协同签名***中还包括中心设备23;
所述目标用户设备21,用于向所述其他用户设备22以及所述中心设备23广播所述第二类型的目标参数;
所述中心设备23,用于接收所述目标用户设备21广播的所述第二类型的目标参数以及所述其他用户设备22中的所有设备广播的第二类型的参数;若所述目标用户设备21以及所述其他用户设备22中的所有设备验证均通过,则基于所述第二类型的目标参数、所述第二类型的参数以及待签名的消息,确定共享参数;将所述共享参数共享给所述目标用户设备21以及所述其他用户设备22;
所述目标用户设备21,用于基于所述共享参数以及所述目标用户设备21对应的私钥分量,确定第四类型的目标参数,并向所述中心设备23发送所述第四类型的目标参数;
所述中心设备23,用于基于所述目标用户设备21发送的所述第四类型的目标参数以及所述其他用户设备22中的所有设备发送的第四类型的参数,确定签名结果。
可选地,所述目标用户设备21,用于:
基于所述密钥参数、所述共享参数以及所述目标用户设备21对应的私钥分量,确定第四类型的目标参数。
可选地,所述目标用户设备21,用于:
基于所述第一类型的目标参数、所述第二类型的目标参数以及哈希算法,确定第三类型的目标参数。
可选地,所述目标用户设备21,用于:
通过哈希算法,基于所述其他用户设备22中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证。
图2所示***可以执行前述图1所示实施例中提供的协同签名方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例提供的协同签名方法可以由某种程序/软件来执行,该程序/软件可以由网络侧提供,前述实施例中提及的电子设备可以将该程序/软件下载到本地的非易失性存储介质中,并在其需要执行前述协同签名方法时,通过CPU将该程序/软件读取到内存中,进而由CPU执行该程序/软件以实现前述实施例中所提供的协同签名方法,执行过程可以参见前述图1中的示意。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种协同签名方法,其特征在于,应用于协同签名***,所述协同签名***中包括参与签名过程的目标用户设备以及其他用户设备,所述方法包括:
所述目标用户设备随机生成密钥参数以及第一类型的目标参数;
所述目标用户设备基于所述密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;
所述目标用户设备基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,并向所述其他用户设备广播所述第三类型的目标参数;
若所述目标用户设备接收到所述其他用户设备中的所有设备广播的第三类型的参数,则向所述其他用户设备广播所述第一类型的目标参数和所述第二类型的目标参数;
若所述目标用户设备接收到所述其他用户设备中的所有设备广播的第一类型的参数以及第二类型的参数,则基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证;
若所述其他用户设备中存在任一设备验证不通过,所述目标用户设备则上报错误信息,并停止签名过程。
2.根据权利要求1所述的方法,其特征在于,所述协同签名***中还包括中心设备,所述目标用户设备向所述其他用户设备广播所述第二类型的目标参数,包括:
所述目标用户设备向所述其他用户设备以及所述中心设备广播所述第二类型的目标参数;
所述方法还包括:
所述中心设备接收所述目标用户设备广播的所述第二类型的目标参数以及所述其他用户设备中的所有设备广播的第二类型的参数;
若所述目标用户设备以及所述其他用户设备中的所有设备验证均通过,所述中心设备则基于所述第二类型的目标参数、所述第二类型的参数以及待签名的消息,确定共享参数;
所述中心设备将所述共享参数共享给所述目标用户设备以及所述其他用户设备;
所述目标用户设备基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,并向所述中心设备发送所述第四类型的目标参数;
所述中心设备基于所述目标用户设备发送的所述第四类型的目标参数以及所述其他用户设备中的所有设备发送的第四类型的参数,确定签名结果。
3.根据权利要求2所述的方法,其特征在于,所述目标用户设备基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,包括:
所述目标用户设备基于所述密钥参数、所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数。
4.根据权利要求1所述的方法,其特征在于,所述目标用户设备基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,包括:
所述目标用户设备基于所述第一类型的目标参数、所述第二类型的目标参数以及哈希算法,确定第三类型的目标参数。
5.根据权利要求1所述的方法,其特征在于,所述基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证,包括:
通过哈希算法,基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证。
6.一种协同签名***,其特征在于,所述协同签名***中包括参与签名过程的目标用户设备以及其他用户设备,其中,所述目标用户设备,用于:
随机生成密钥参数以及第一类型的目标参数;
基于所述密钥参数以及预设的椭圆曲线的基点坐标,确定第二类型的目标参数;
基于所述第一类型的目标参数和所述第二类型的目标参数,确定第三类型的目标参数,并向所述其他用户设备广播所述第三类型的目标参数;
若接收到所述其他用户设备中的所有设备广播的第三类型的参数,则向所述其他用户设备广播所述第一类型的目标参数和所述第二类型的目标参数;
若接收到所述其他用户设备中的所有设备广播的第一类型的参数以及第二类型的参数,则基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证;
若所述其他用户设备中存在任一设备验证不通过,则上报错误信息,并停止签名过程。
7.根据权利要求6所述的***,其特征在于,所述协同签名***中还包括中心设备;
所述目标用户设备,用于向所述其他用户设备以及所述中心设备广播所述第二类型的目标参数;
所述中心设备,用于接收所述目标用户设备广播的所述第二类型的目标参数以及所述其他用户设备中的所有设备广播的第二类型的参数;若所述目标用户设备以及所述其他用户设备中的所有设备验证均通过,则基于所述第二类型的目标参数、所述第二类型的参数以及待签名的消息,确定共享参数;将所述共享参数共享给所述目标用户设备以及所述其他用户设备;
所述目标用户设备,用于基于所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数,并向所述中心设备发送所述第四类型的目标参数;
所述中心设备,用于基于所述目标用户设备发送的所述第四类型的目标参数以及所述其他用户设备中的所有设备发送的第四类型的参数,确定签名结果。
8.根据权利要求7所述的***,其特征在于,所述目标用户设备,用于:
基于所述密钥参数、所述共享参数以及所述目标用户设备对应的私钥分量,确定第四类型的目标参数。
9.根据权利要求6所述的***,其特征在于,所述目标用户设备,用于:
基于所述第一类型的目标参数、所述第二类型的目标参数以及哈希算法,确定第三类型的目标参数。
10.根据权利要求6所述的***,其特征在于,所述目标用户设备,用于:
通过哈希算法,基于所述其他用户设备中各用户设备对应的第一类型的参数以及第二类型的参数对所述各用户设备对应的第三类型的参数进行验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311745141.1A CN117439737B (zh) | 2023-12-18 | 2023-12-18 | 协同签名方法和协同签名*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311745141.1A CN117439737B (zh) | 2023-12-18 | 2023-12-18 | 协同签名方法和协同签名*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117439737A CN117439737A (zh) | 2024-01-23 |
CN117439737B true CN117439737B (zh) | 2024-02-27 |
Family
ID=89546514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311745141.1A Active CN117439737B (zh) | 2023-12-18 | 2023-12-18 | 协同签名方法和协同签名*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117439737B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019034951A1 (en) * | 2017-08-15 | 2019-02-21 | nChain Holdings Limited | METHOD AND SYSTEM FOR DIGITAL THRESHOLD SIGNATURE |
CN109474422A (zh) * | 2018-11-19 | 2019-03-15 | 武汉大学 | 一种多方协同产生sm2数字签名的方法 |
CN110971405A (zh) * | 2019-12-06 | 2020-04-07 | 支付宝(杭州)信息技术有限公司 | 多方协同的sm2签名、解密方法及其*** |
WO2022116175A1 (zh) * | 2020-12-04 | 2022-06-09 | 上海阵方科技有限公司 | 数字签名的生成方法、装置和服务器 |
CN115473633A (zh) * | 2022-08-24 | 2022-12-13 | 武汉大学 | 一种多方协同产生sm2数字签名的方法及装置 |
CN116865970A (zh) * | 2023-05-30 | 2023-10-10 | 北京数字认证股份有限公司 | 基于国密算法的多方协同密钥产生和数字签名方法及*** |
CN117240467A (zh) * | 2023-08-31 | 2023-12-15 | 蚂蚁区块链科技(上海)有限公司 | 一种实现门限签名的方法、***和节点 |
-
2023
- 2023-12-18 CN CN202311745141.1A patent/CN117439737B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019034951A1 (en) * | 2017-08-15 | 2019-02-21 | nChain Holdings Limited | METHOD AND SYSTEM FOR DIGITAL THRESHOLD SIGNATURE |
CN109474422A (zh) * | 2018-11-19 | 2019-03-15 | 武汉大学 | 一种多方协同产生sm2数字签名的方法 |
CN110971405A (zh) * | 2019-12-06 | 2020-04-07 | 支付宝(杭州)信息技术有限公司 | 多方协同的sm2签名、解密方法及其*** |
WO2022116175A1 (zh) * | 2020-12-04 | 2022-06-09 | 上海阵方科技有限公司 | 数字签名的生成方法、装置和服务器 |
CN115473633A (zh) * | 2022-08-24 | 2022-12-13 | 武汉大学 | 一种多方协同产生sm2数字签名的方法及装置 |
CN116865970A (zh) * | 2023-05-30 | 2023-10-10 | 北京数字认证股份有限公司 | 基于国密算法的多方协同密钥产生和数字签名方法及*** |
CN117240467A (zh) * | 2023-08-31 | 2023-12-15 | 蚂蚁区块链科技(上海)有限公司 | 一种实现门限签名的方法、***和节点 |
Also Published As
Publication number | Publication date |
---|---|
CN117439737A (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3269082B1 (en) | Methods and systems for managing network activity using biometrics | |
Lyu et al. | PBA: Prediction-based authentication for vehicle-to-vehicle communications | |
CN112970236B (zh) | 协作风险感知认证 | |
US9578004B2 (en) | Authentication of API-based endpoints | |
CN109688107B (zh) | 基于完整性审计与通信时延的云数据安全定位方法 | |
JP6538644B2 (ja) | ルータの物理的位置に基づくセキュアな経路制御 | |
Chikouche et al. | A privacy-preserving code-based authentication protocol for Internet of Things | |
JP2009515480A (ja) | ネットワーク符号化に対するデジタル署名 | |
KR20150036104A (ko) | 로그인 검증의 방법, 클라이언트, 서버 및 시스템 | |
KR20140054151A (ko) | 크레덴셜 검증 | |
CN112436938B (zh) | 数字签名的生成方法、装置和服务器 | |
US20230052608A1 (en) | Remote attestation | |
US20240064027A1 (en) | Identity authentication method and apparatus, and storage medium, program and program product | |
Larson et al. | Secure auctions without an auctioneer via verifiable secret sharing | |
EP3105881A1 (en) | Quantum position based authentication | |
Lyu et al. | CLIP: Continuous location integrity and provenance for mobile phones | |
CN112417489B (zh) | 数字签名的生成方法、装置和服务器 | |
CN117439737B (zh) | 协同签名方法和协同签名*** | |
Ding et al. | An efficient and secure scheme of verifiable computation for intel SGX | |
CN111245611A (zh) | 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及*** | |
CN112132578A (zh) | 一种基于区块链的高效交易处理方法、追踪方法及装置 | |
CN115866189A (zh) | 一种云会议的视频数据安全传输方法 | |
CN116033414A (zh) | 一种VANETs隐私保护方法和设备 | |
CN113553873B (zh) | 疫情防控***中基于云的rfid双向认证协议的设计方法 | |
Liu et al. | Remote attestation for low-end prover devices with post-quantum capabilities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |