CN116318728B - 分布式证书自动颁发方法、装置及系统 - Google Patents

分布式证书自动颁发方法、装置及系统 Download PDF

Info

Publication number
CN116318728B
CN116318728B CN202310272972.5A CN202310272972A CN116318728B CN 116318728 B CN116318728 B CN 116318728B CN 202310272972 A CN202310272972 A CN 202310272972A CN 116318728 B CN116318728 B CN 116318728B
Authority
CN
China
Prior art keywords
certificate
signature
applicant
application information
threshold
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
Application number
CN202310272972.5A
Other languages
English (en)
Other versions
CN116318728A (zh
Inventor
张振峰
韩将
程昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN202310272972.5A priority Critical patent/CN116318728B/zh
Publication of CN116318728A publication Critical patent/CN116318728A/zh
Application granted granted Critical
Publication of CN116318728B publication Critical patent/CN116318728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • H04L9/3255Cryptographic 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 using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Abstract

本发明涉及一种分布式证书自动颁发方法、装置及系统。所述方法包括:证书颁发机构接收一证书申请人的证书申请信息;联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,生成所述证书申请人的门限签名;将所述证书申请信息与所述门限签名组装成数字证书,并发送给所述证书申请人。本发明可以帮助没有域名但有证书需求的用户进行身份认证。

Description

分布式证书自动颁发方法、装置及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种分布式证书自动颁发方法、装置及系统。
技术背景
CA证书是由CA(Certificate Authority)机构发布的数字证书,数字证书的作用是证明证书中列出的用户合法拥有证书中列出的公开密钥,提供了一种在网上验证身份的方式。CA机构的数字签名使得攻击者不能伪造和篡改证书。
在现有的CA机构中,主流的证书颁发方法可以分为自动化和非自动化两种。非自动化证书颁发方法的流程一般较长,有些CA机构在认证申请人身份时还需要人工的帮助,这在需要签发大量证书或者申请人需要快速得到证书的情境下会产生负面影响。而自动化证书颁发方法一般流程较短,证书申请人和CA机构的交互都是自动进行的,不需要额外的人工参与,但目前支持自动化方法的CA机构仅支持基于域名控制权的申请人身份认证模式。然而,大多数个人用户由于经济方面等原因并没有域名,但同时又有证书的需求,无法通过基于域名控制权的方式申请证书。
此外,现有数字证书的颁发完全依赖第三方CA机构,它负责产生、分配并管理所有个体所需的数字证书,CA机构的可靠性直接决定整个PKI(Public Key Infrastructure)系统的可靠性,权力过于集中,若第三方CA机构出现问题将会影响所有该CA颁发的证书。
发明内容
鉴于现有技术中存在的技术问题,本发明的目的在于提供一种分布式证书自动颁发方法、装置及系统,同时支持域名控制权和邮箱控制权两种申请人身份认证模式。
本发明的技术内容包括:
一种分布式证书自动颁发方法,应用于一证书颁发机构,所述方法包括:
接收一证书申请人的证书申请信息;
联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,生成所述证书申请人的门限签名;
将所述证书申请信息与所述门限签名组装成数字证书,并发送给所述证书申请人。
进一步地,所述证书申请信息包括:该证书申请人所申请证书的域名。
进一步地,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;其中,t表示门限签名协议中的门限数量。
进一步地,所述证书申请信息包括:该证书申请人所申请证书的邮箱的邮箱地址签名。
进一步地,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使该证书申请人通过所述邮箱发送一包含所述挑战值的邮件给所有证书颁发机构;
验证所述邮件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;其中,t表示门限签名协议中的门限数量。
进一步地,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,以使每一证书颁发机构使用自身的签名私钥对所述证书申请信息签名后,将签名值通过邮件发送至所述邮箱;
接收所述证书申请人发送的签名集合;其中,所述签名集合是所述证书申请人基于所述邮件中的正确签名所构建,且所述签名集合中的签名数量至少为t个,t表示门限签名协议中的门限数量;
将所述签名集合对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名。
进一步地,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,以使所有证书颁发机构共同运行共同执行第二门限签名协议,并将得到的签名份额通过邮件发送至所述邮箱;
接收所述证书申请人发送的第二门限签名;其中,所述第二门限签名是该证书申请人判定邮箱中的签名份额至少为t个时,基于该签名份额组合的签名;
将所述第二门限签名发送给对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名。
进一步地,所述接收一证书申请人的证书申请信息之后,还包括:
接收证书申请人的公钥;
使用所述公钥对所述证书申请信息进行验证;
在所述证书申请信息验证失败的情况下,拒绝对所述证书申请人颁发证书,或返回至所述接收一证书申请人的证书申请信息。
在所述证书申请信息验证成功的情况下,跳转至所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份验证成功后,获取所述证书申请人的门限签名。
一种分布式证书自动颁发装置,所述装置包括:
信息接收模块,用于接收一证书申请人的证书申请信息;
身份认证模块,用于联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名;
证书颁发模块,用于将所述证书申请信息与所述门限签名组装成完整版证书,并发送给所述证书申请人。
一种分布式证书自动颁发系统,所述系统包括:若干个证书申请人和n个证书颁发机构;
其中,在任一证书申请人欲获取数字证书时,将证书申请信息发送给任一证书颁发机构,以使该证书颁发机构联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,根据所述证书申请信息和身份认证成功后生成的门限签名组装成数字证书,并发送给所述证书申请人。
与现有的技术相比,本发明不仅可以完全自动化执行,避免单点故障问题,还可以帮助没有域名但有证书需求的用户进行身份认证,以获取数字证书。
附图说明
图1是实施例中一种基于域名控制权的分布式自动化证书颁发方法的流程图。
具体实施方法
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例的一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
本发明的分布式证书自动颁发系统中包含两类实体:证书申请人和CA机构。需要注意的是,在一次证书颁发过程中,会有至少一个证书申请人以及多个CA机构参与,所述一个CA机构同时也包含了其对应的RA(Registration Authority)机构。
具体的说,本发明包括以下两个重要的方面:
一、基于域名控制权的分布式自动化证书颁发。
所述方法对证书申请人的身份认证主要依赖于验证申请人对所申请证书中声明的域名的控制权。具体来讲,CA机构在收到证书申请人的申请信息后,会和其他系统内的CA机构通过运行一个分布式协议获得一个随机数和一个与所述随机数对应的证明,所述证明可以帮助证书申请人验证所述随机数是否是按照系统设计的方案生成。所述分布式协议可以但不限于使用门限签名协议和哈希函数来构造。
本发明所述的基于域名控制权的分布式自动化证书颁发方法是这样实现的:
1.所述方法的参与者为n个CA机构,以及若干个提出证书申请的用户。在一次成功的证书申请流程中,用户只会主动和系统的一个CA机构进行通信。在一次成功的证书申请流程中,每种分布式协议只会存在一个实例。
2.执行流程:
1)用户生成所申请证书对应的公私钥对,使用所述私钥对所申请证书的域名以及其他信息进行签名;然后用户选定一个系统内的CA机构,并将所述签名以及所述公钥发送给该CA机构。
2)1)中所述CA机构在收到用户请求后,首先验证请求中的签名是否正确。若验证失败,退出;若成功,该CA机构将把所述请求消息转发给所有系统内的其他CA机构,并和系统内的其他CA机构共同运行一个分布式协议来获得挑战值。然后所述CA机构将该挑战值发送给对应的用户。
3)用户在收到挑战值后,将其放至于申请证书对应的域名的本系统设定的路径下的文件,该路径是全局已知的,然后向1)中所述CA机构发送消息表明自己已经准备好接受检验。
4)所述CA机构收到3)中所述消息后,将其转发给其他CA机构。
5)所有收到3)中所述消息的CA机构都会通过http请求获取3)中所述文件,然后验证其是否包含2)中所述挑战值,若验证失败,退出;若成功,则和系统内的其他CA机构共同运行一个门限签名协议,获得的门限签名就是1)中所述用户最终证书内的数字签名,门限签名签署的内容是1)中所述用户申请的证书主体内容。
6)2)中所述CA机构在获得5)中所述门限签名后,将其与1)中所述用户的证书申请信息组装成最终的完整版证书,然后将其发送给1)中所述用户。
7)1)中所述用户在收到6)中所述完整版证书后,退出。
二、基于邮箱控制权的分布式自动化证书颁发。
除了域名认证模式外,本发明提供了另一种邮箱认证模式,可以通过验证证书申请人对邮箱的控制权来认证申请人身份,在这种模式中,证书与申请人的邮箱地址绑定。
本发明所述的基于邮箱控制权的分布式自动化证书颁发方法是这样实现的:
1.所述方法的参与者为n个CA机构,以及若干个提出证书申请的用户。在一次成功的证书申请流程中,用户只会主动和系统的一个CA机构进行通信。在一次成功的证书申请流程中,每种分布式协议只会存在一个实例。
2.基于邮箱发送邮件能力的方法执行流程:
1)用户生成所申请证书对应的公私钥对,使用所述私钥对所申请证书的邮箱地址以及其他信息进行签名;然后用户选定一个系统内的CA机构,并将所述签名以及所述公钥发送给该CA机构。
2)1)中所述CA机构在收到用户请求后,首先验证请求中的签名是否正确。若验证失败,退出;若成功,该CA机构将把所述请求消息转发给所有系统内其他的CA机构,并和其他系统内的CA机构共同运行一个分布式协议来获得挑战值。然后所述CA机构将该挑战值发送给对应的用户。
3)用户在收到所述挑战值后,将其通过1)中所述邮箱发送给所有系统内的CA机构。
4)所述CA机构收到3)中所述邮件后,验证其是否包含2)中所述挑战值,若验证失败,退出;若成功,则和系统内的其他CA机构共同运行一个门限签名协议,获得的门限签名就是1)中所述用户最终证书内的数字签名,门限签名签署的内容是1)中所述用户申请的证书主体内容。
5)2)中所述CA机构在获得4)中所述门限签名后,将其与1)中所述用户的证书申请信息组装成最终的完整版证书,然后将其发送给1)中所述用户。
6)1)中所述用户在收到6)中所述完整版证书后,退出。
3.基于邮箱接受邮件能力的方法执行流程:
1)用户生成所申请证书对应的公私钥对,使用所述私钥对所申请证书的邮箱地址以及其他信息进行签名;然后用户选定一个系统内的CA机构,并将所述签名以及所述公钥发送给该CA机构。
2)1)中所述CA机构在收到用户请求后,首先验证请求中的签名是否正确。若验证失败,退出;若成功,该CA机构将把所述请求消息转发给所有其他系统内的CA机构,然后使用CA自身的签名私钥对1)中所述申请信息签名,并将签名值通过邮件发送给1)中所述邮箱。所有其他CA机构在收到转发的消息后,首先验证请求中的签名是否正确。若验证失败,退出;若成功,使用CA自身的签名私钥对1)中所述申请信息签名,并将签名值通过邮件发送给1)中所述邮箱。
3)用户在收到2)中所述邮件后,首先检查邮件是否包含正确的签名,当收到的正确的签名数量超过系统所设置的阈值时,将这些签名发送给1)中所述CA机构。
4)1)中所述CA机构收到3)中所述消息后,将其转发给其他CA机构。
5)所有收到3)中所述消息的CA机构都会验证消息中包含的签名的正确性,以及签名数量是否超过3)中所述阈值,若验证失败,退出;若成功,则和系统内的其他CA机构共同运行一个门限签名协议,获得的门限签名就是1)中所述用户最终证书内的数字签名,门限签名签署的内容是1)中所述用户申请的证书主体内容。
6)2)中所述CA机构在获得5)中所述门限签名后,将其与1)中所述用户的证书申请信息组装成最终的完整版证书,然后将其发送给1)中所述用户。
7)1)中所述用户在收到6)中所述完整版证书后,退出。
需要强调的是,在基于邮箱接收邮件能力的自动化证书颁发方法中,可以使用门限签名来减少用户发送邮件内容的尺寸。具体执行流程为:
1)用户生成所申请证书对应的公私钥对,使用所述私钥对所申请证书的邮箱地址以及其他信息进行签名;然后用户选定一个系统内的CA机构,并将所述签名以及所述公钥发送给该CA机构。
2)1)中所述CA机构在收到用户请求后,首先验证请求中的签名是否正确。若验证失败,退出;若成功,该CA机构将把所述请求消息转发给所有系统内的其他CA机构。所有CA机构在拿到1)中所述消息后,共同执行门限签名协议,拿到自己的签名份额后,结束门限签名协议,所有CA机构不会拿到门限签名。之后CA机构将拿到的签名份额通过邮件发送给1)中所述邮箱。
3)用户在接收2)中所述邮件,当签名份额数量超过系统所设置的阈值时,将这些签名份额组合成门限签名。若组合失败,退出;若成功,将门限签名发送给1)中所述CA机构。
4)1)中所述CA机构收到3)中所述消息后,将其转发给其他CA机构。
5)所有收到3)中所述消息的CA机构都会验证消息中包含的门限签名的正确性,若验证失败,退出;若成功,则和系统内的其他CA机构共同运行一个新的门限签名协议,获得的门限签名就是1)中所述用户最终证书内的数字签名,门限签名签署的内容是1)中所述用户申请的证书主体内容。
6)2)中所述CA机构在获得5)中所述门限签名后,将其与1)中所述用户的证书申请信息组装成最终的完整版证书,然后将其发送给1)中所述用户。
7)1)中所述用户在收到6)中所述完整版证书后,退出。
需要强调的是,为了方案的可用性,本方案假定的网络模型为同步网络。为此,在实际运行中,用户在每次发送一条消息后,都会触发一个计时器,当计时器超过某个系统设计的阈值后,用户将退出本次执行,重新开始,并在新的执行中选择不同的CA机构交互。
一个实施例中,本发明提供的分布式证书自动颁发方法,如图1所示,包括下述步骤:
1.系统初始化。
系统内的CA机构获取自己的证书并公开,系统内CA机构运行分布式BLS门限签名密钥生成算法,获得各自的公私钥对以及系统的主公钥PKsys,公开各自的公钥/>系统的主公钥PKsys以及BLS门限签名的阈值(t,n),。
需要说明的是,该初始化过程仅在系统建立时执行一次。
2.证书颁发。
1)用户生成所申请证书对应的公私钥对(PKclient,SKclient),生成证书申请文件CSR,该CSR文件中包含用户的域名以及公钥PKclient。用户使用SKclient对CSR签名得到σcsr_client;然后用户选定一个系统内的CA机构(下文中为了与其他CA结构区分,将该CA结构记作CAs),并将CSR和σcsr发送给CAs
2)CAs在收到用户发送的CSR和σcsr_client后,提取出用户的PKclient和域名,验证签名σcsr_client是否正确。若验证失败,退出;若成功,CAs将把CSR和σcsr_client转发给所有系统内的其他CA机构。
3)所有CA机构CAi接收到CSR和σcsr_client并验证通过后,使用对CSR签名得到σcsr_CA_i,并将σcsr_CA_i发送给所有系统内的其他CA机构。
4)CA机构在收到一个σcsr_CA_j后,首先验证σcsr_CA_j是否正确,之后系统内的CA机构共同运行分布式随机数生成协议来获得挑战值challenge。然后CAs将该challenge发送给用户。
5)用户在收到challenge后,在域名对应的服务器中的“./challenge/”路径上存放challenge,使得CA机构可以通过HTTP请求获取challenge值。然后向CAs机构发送0K消息表明自己已经准备好接受检验。
6)CAs收到0K消息后,将其转发给系统内其他CA机构。
7)CA机构收到0K消息后通过http请求访问5)中网址获取challenge,然后验证其是否为正确的challenge,若验证失败,退出;若成功,则和系统内的其他CA机构共同运行门限签名协议获得门限签名σcsr_CA_threshold,签名的内容为CSR。CA机构将σcsr_CA_threshold填入证书中的上级证书签名处,然后CAs将证书发送给用户。
8)1用户在收到证书后,验证证书的有效性,退出。
其中,在上述CA机构在证书颁发流程中遇到签名验证失败、CSR违规、challenge验证失败等(例如上述流程中触发CA机构退出的情况)情况,将直接退出本次证书颁发流程,不再响应后续流程。
用户可以为每次和CAs的交互设置倒计时,倒计时内未收到回应将从证书颁发流程的步骤1重新开始。用户在步骤8中验证证书失败也将从步骤1重新开始。
应当理解,本说明书中所使用的“系统”、“设备”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

Claims (4)

1.一种分布式证书自动颁发方法,其特征在于,应用于一证书颁发机构,所述方法包括:
接收一证书申请人的证书申请信息,所述证书申请信息包括:该证书申请人所申请证书的域名或该证书申请人所申请证书的邮箱的邮箱地址签名;
联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名;其中,
在所述证书申请信息包括该证书申请人所申请证书的域名的情况下,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;其中,t表示门限签名协议中的门限数量;
在所述证书申请信息包括该证书申请人所申请证书的邮箱的邮箱地址签名的情况下,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使每一证书颁发机构使用自身的签名私钥对所述证书申请信息签名后,将签名值通过邮件发送至所述邮箱;
接收所述证书申请人发送的签名集合;其中,所述签名集合是所述证书申请人基于所述邮件中的正确签名所构建,且所述签名集合中的签名数量至少为t个,t表示门限签名协议中的门限数量;
将所述签名集合对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使所有证书颁发机构共同运行共同执行第二门限签名协议,并将得到的签名份额通过邮件发送至所述邮箱;
接收所述证书申请人发送的第二门限签名;其中,所述第二门限签名是该证书申请人判定邮箱中的签名份额至少为t个时,基于该签名份额组合的签名;
将所述第二门限签名发送给对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名;
将所述证书申请信息与所述门限签名组装成数字证书,并发送给所述证书申请人。
2.如权利要求1所述的方法,其特征在于,所述接收一证书申请人的证书申请信息之后,还包括:
接收证书申请人的公钥;
使用所述公钥对所述证书申请信息进行验证;
在所述证书申请信息验证失败的情况下,拒绝对所述证书申请人颁发证书,或返回至所述接收一证书申请人的证书申请信息;
在所述证书申请信息验证成功的情况下,跳转至所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份验证成功后,获取所述证书申请人的门限签名。
3.一种分布式证书自动颁发装置,其特征在于,所述装置包括:
信息接收模块,用于接收一证书申请人的证书申请信息,所述证书申请信息包括:该证书申请人所申请证书的域名或该证书申请人所申请证书的邮箱的邮箱地址签名;
身份认证模块,用于联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名;其中,
在所述证书申请信息包括该证书申请人所申请证书的域名的情况下,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;其中,t表示门限签名协议中的门限数量;
在所述证书申请信息包括该证书申请人所申请证书的邮箱的邮箱地址签名的情况下,所述联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使每一证书颁发机构使用自身的签名私钥对所述证书申请信息签名后,将签名值通过邮件发送至所述邮箱;
接收所述证书申请人发送的签名集合;其中,所述签名集合是所述证书申请人基于所述邮件中的正确签名所构建,且所述签名集合中的签名数量至少为t个,t表示门限签名协议中的门限数量;
将所述签名集合对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使所有证书颁发机构共同运行共同执行第二门限签名协议,并将得到的签名份额通过邮件发送至所述邮箱;
接收所述证书申请人发送的第二门限签名;其中,所述第二门限签名是该证书申请人判定邮箱中的签名份额至少为t′个时,基于该签名份额组合的签名;
将所述第二门限签名发送给对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名;
证书颁发模块,用于将所述证书申请信息与所述门限签名组装成完整版证书,并发送给所述证书申请人。
4.一种分布式证书自动颁发系统,其特征在于,所述系统包括:若干个证书申请人和n个证书颁发机构;
其中,在任一证书申请人欲获取数字证书时,将证书申请信息发送给任一证书颁发机构,以使该证书颁发机构联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名;根据所述证书申请信息和身份认证成功后获取的门限签名组装成数字证书,并发送给所述证书申请人;
所述证书申请信息包括:该证书申请人所申请证书的域名或该证书申请人所申请证书的邮箱的邮箱地址签名;
在所述证书申请信息包括该证书申请人所申请证书的域名的情况下,该证书颁发机构联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;其中,t表示门限签名协议中的门限数量;
在所述证书申请信息包括该证书申请人所申请证书的邮箱的邮箱地址签名的情况下,该证书颁发机构联合多个其他证书颁发机构,基于所述证书申请信息对所述证书申请人进行身份认证,并在身份认证成功后,获取所述证书申请人的门限签名,包括:
将所述证书申请信息转发给其他证书颁发机构,并与所述其他证书颁发机构共同运行分布式协议,以生成挑战值;
将所述挑战值发送给所述证书申请人,以使所述证书申请人将所述挑战值存放至所述域名的路径下的文件,并将包含已经准备好接受检验的消息发送至所述证书颁发机构;
将所述消息转发给其他证书颁发机构;
通过http请求获取所述文件;
验证该文件中是否包含所述挑战值,并在至少t个证书颁发机构验证成功后,该至少t个证书颁发机构共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使每一证书颁发机构使用自身的签名私钥对所述证书申请信息签名后,将签名值通过邮件发送至所述邮箱;
接收所述证书申请人发送的签名集合;其中,所述签名集合是所述证书申请人基于所述邮件中的正确签名所构建,且所述签名集合中的签名数量至少为t个,t表示门限签名协议中的门限数量;
将所述签名集合对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名;
或,
将所述证书申请信息转发给其他证书颁发机构,以使所有证书颁发机构共同运行共同执行第二门限签名协议,并将得到的签名份额通过邮件发送至所述邮箱;
接收所述证书申请人发送的第二门限签名;其中,所述第二门限签名是该证书申请人判定邮箱中的签名份额至少为t个时,基于该签名份额组合的签名;
将所述第二门限签名发送给对应的其他证书颁发机构,并基于共同运行第一门限签名协议,生成门限签名。
CN202310272972.5A 2023-03-20 2023-03-20 分布式证书自动颁发方法、装置及系统 Active CN116318728B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310272972.5A CN116318728B (zh) 2023-03-20 2023-03-20 分布式证书自动颁发方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310272972.5A CN116318728B (zh) 2023-03-20 2023-03-20 分布式证书自动颁发方法、装置及系统

Publications (2)

Publication Number Publication Date
CN116318728A CN116318728A (zh) 2023-06-23
CN116318728B true CN116318728B (zh) 2024-03-26

Family

ID=86801023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310272972.5A Active CN116318728B (zh) 2023-03-20 2023-03-20 分布式证书自动颁发方法、装置及系统

Country Status (1)

Country Link
CN (1) CN116318728B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533698A (zh) * 2016-12-15 2017-03-22 北京三未信安科技发展有限公司 一种基于rsa的分布式门限签名方法与系统
CN111327424A (zh) * 2020-01-20 2020-06-23 南京可信区块链与算法经济研究院有限公司 一种多节点颁发ca证书的方法、系统及存储介质
CN113919005A (zh) * 2021-10-18 2022-01-11 北京理工大学 一种基于Schnorr聚合签名的数字证书颁发方法
CN114092092A (zh) * 2022-01-19 2022-02-25 安徽中科晶格技术有限公司 基于门限签名的去中心化的数字证书管理系统及使用方法
CN115603916A (zh) * 2022-10-12 2023-01-13 杨炜祖(Cn) 分布式数字身份认证方法、系统、计算机存储介质及终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116611A1 (en) * 2000-10-31 2002-08-22 Cornell Research Foundation, Inc. Secure distributed on-line certification authority
US11228452B2 (en) * 2019-09-16 2022-01-18 Cisco Technology, Inc. Distributed certificate authority
GB2597123B (en) * 2020-05-14 2023-08-30 Hung Hung Chiu A method for creating a hierarchical threshold signature digital asset wallet

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533698A (zh) * 2016-12-15 2017-03-22 北京三未信安科技发展有限公司 一种基于rsa的分布式门限签名方法与系统
CN111327424A (zh) * 2020-01-20 2020-06-23 南京可信区块链与算法经济研究院有限公司 一种多节点颁发ca证书的方法、系统及存储介质
CN113919005A (zh) * 2021-10-18 2022-01-11 北京理工大学 一种基于Schnorr聚合签名的数字证书颁发方法
CN114092092A (zh) * 2022-01-19 2022-02-25 安徽中科晶格技术有限公司 基于门限签名的去中心化的数字证书管理系统及使用方法
CN115603916A (zh) * 2022-10-12 2023-01-13 杨炜祖(Cn) 分布式数字身份认证方法、系统、计算机存储介质及终端

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周知远 ; 丁瑶 ; .基于门限DSA的分布式认证服务模型.计算机仿真.2008,(第03期),全文. *
基于门限DSA的分布式认证服务模型;周知远;丁瑶;;计算机仿真(第03期) *

Also Published As

Publication number Publication date
CN116318728A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
US11606352B2 (en) Time-based one time password (TOTP) for network authentication
US20200106768A1 (en) Single sign on with multiple authentication factors
US10833873B2 (en) Credential-based authorization
JP4690779B2 (ja) 属性証明書検証方法及び装置
TW202117603A (zh) 二維條碼的處理方法、裝置及系統
US20210014064A1 (en) Method and apparatus for managing user authentication in a blockchain network
JPWO2019239591A1 (ja) 認証システム、認証方法、アプリケーション提供装置、認証装置、及び認証用プログラム
CN108496329A (zh) 使用设备证实控制对在线资源的访问
US11909889B2 (en) Secure digital signing
US20210209200A1 (en) Systems and methods for improved authentication
EP2262165B1 (en) User generated content registering method, apparatus and system
KR102410006B1 (ko) 사용자 권한 관리가 가능한 did 생성 방법 및 이를 이용한 사용자 권한 관리 시스템
CN112035870B (zh) 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质
CN109241702A (zh) 一种软件使用授权方法及客户端
US9450943B2 (en) Method and apparatus for remote connection
US20150341342A1 (en) Automated step-up digital certificate installation process
CN112332980B (zh) 一种数字证书签发和验签方法、设备及存储介质
CN116318728B (zh) 分布式证书自动颁发方法、装置及系统
JP6983685B2 (ja) 情報処理システム、クライアント装置、認証認可サーバー、制御方法とそのプログラム
US20230403164A1 (en) Certificate issuance support system, certificate issuance support method and program
CN112422534B (zh) 电子证书的信用评估方法以及设备
CN115242471A (zh) 信息传输方法、装置、电子设备及计算机可读存储介质
Fugkeaw et al. A robust single sign-on model based on multi-agent system and PKI
JP2015176167A (ja) ユーザ識別情報を安全に検証するためのネットワーク認証方法
KR102464011B1 (ko) 자동 로그인 지원 서버 및 그 방법

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