CN109617698A - 发放数字证书的方法、数字证书颁发中心和介质 - Google Patents

发放数字证书的方法、数字证书颁发中心和介质 Download PDF

Info

Publication number
CN109617698A
CN109617698A CN201910020435.5A CN201910020435A CN109617698A CN 109617698 A CN109617698 A CN 109617698A CN 201910020435 A CN201910020435 A CN 201910020435A CN 109617698 A CN109617698 A CN 109617698A
Authority
CN
China
Prior art keywords
node
tpki
private key
digital certificate
module
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.)
Granted
Application number
CN201910020435.5A
Other languages
English (en)
Other versions
CN109617698B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910020435.5A priority Critical patent/CN109617698B/zh
Publication of CN109617698A publication Critical patent/CN109617698A/zh
Priority to JP2021518941A priority patent/JP7273148B2/ja
Priority to PCT/CN2019/128755 priority patent/WO2020143470A1/zh
Priority to US17/171,937 priority patent/US11924358B2/en
Application granted granted Critical
Publication of CN109617698B publication Critical patent/CN109617698B/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/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
    • 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
    • H04L9/3268Cryptographic 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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0822Key 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 key encryption key
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0825Key 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
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本公开提供了一种发放数字证书的方法、数字证书颁发中心和介质。所述方法由数字证书颁发中心执行,所述数字证书颁发中心包括公私钥生成模块、认证模块和认证策略模块。所述方法包括:响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块,为节点生成节点的公钥和私钥并发送到所述节点;通过认证模块,接收所述节点的公钥和注册信息;通过认证模块,获取来自于认证策略模块的与节点对应的注册信息认证策略;通过认证模块,基于与所述节点对应的注册信息认证策略,为注册信息进行认证;如果认证成功,通过认证模块,生成所述节点的数字证书并发送给所述节点。本公开实施例能够提高颁发的数字证书的证明力,提高区块链网络中数据交换的安全性。

Description

发放数字证书的方法、数字证书颁发中心和介质
技术领域
本公开涉及区块链领域,具体涉及一种为区块链网络中的节点发放数字证书的方法、数字证书颁发中心和介质。
背景技术
在传统的区块链网络体系下,公有链、联盟链以及私有链都是技术发展的产物,公有链可以实现高度去中心化,可信度和安全性最高,但交易速度最慢;私有链所能实现的去中心化的程度很低,但交易速度快,最适用于监管;而联盟链可以实现部分去中心化,去中心化的程度介于公有链和私有链之间,交易速度较快,可监管性也很高。三种类型的区块链特点不同,适用的场景不同。
无论是哪种区块链网络体系,在数据区块上链和查询的过程经常需要在区块链网络体系中传递一些数据,如上链信息、查询请求等。为了增加安全性,往往要求发送方传送数据时对数据用发送方的密钥签名,在接收方接收到签名和数据时用发送方的密钥进行签名验证。这涉及要发送方密钥的获取。为了保障密钥的安全性和权威性,需要为发送方颁发数字证书,证明发放的密钥是安全且权威的。然而,现有技术中为节点颁发数字证书的过程是孤立的,节点具有被分配的密钥且被颁发证书,但现有技术的颁发数字证书过程并不能证明该颁发的数字证书一定对应于该密钥,数字证书证明力较差,权威性也差。
发明内容
本公开的一个目的在于提出一种为区块链网络中的节点发放数字证书的方法、数字证书颁发中心和介质,能够提高颁发的数字证书的证明力,提高区块链网络中数据交换的安全性。
根据本公开实施例的一方面,公开了一种为区块链网络中的节点发放数字证书的方法,所述方法由数字证书颁发中心执行,所述数字证书颁发中心包括公私钥生成模块、认证模块和认证策略模块,所述方法包括:响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块,为所述节点生成所述节点的公钥和私钥并发送到所述节点;通过认证模块,接收所述节点的公钥和注册信息;通过认证模块,获取来自于认证策略模块的与所述节点对应的注册信息认证策略;通过认证模块,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证;如果认证成功,通过认证模块,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块的私钥对所述明文信息形成的签名,以便所述节点用认证模块的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
根据本公开实施例的一方面,公开了一种数字证书颁发中心,所述数字证书颁发中心包括:公私钥生成模块,用于响应于来自区块链网络中的节点的公私钥请求,为所述节点生成所述节点的公钥和私钥并发送到所述节点;认证策略模块,用于存储与区块链网络中的各节点对应的注册信息认证策略;认证模块,用于接收所述节点的公钥和注册信息,获取来自于认证策略模块的与所述节点对应的注册信息认证策略,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证,如果认证成功,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块的私钥对所述明文信息形成的签名,以便所述节点用认证模块的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
根据本公开实施例的一方面,公开了一种数字证书颁发中心,包括:存储器,存储有计算机可读指令;处理器,读取存储器存储的计算机可读指令,以执行如上所述的方法。
根据本公开实施例的一方面,公开了一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的方法。
现有技术对数字证书的发放是孤立的,因此,对于节点的公私钥的合法性证明力较差。本公开实施例中,数字证书颁发中心包括公私钥生成模块和认证模块。公私钥生成模块为节点生成公私钥后,节点要将公钥和注册信息一起发送给认证模块进行认证。认证时认证模块要调用认证策略模块中与所述节点对应的注册信息认证策略对注册信息进行认证,使得认证具有统一的标准。而认证成功后向节点返回的数字证书中含有公钥。这样,就使得数字证书对颁发的公私钥的证明力较强。且在数字证书中含有用认证模块的私钥进行的签名,返回给所述节点后,所述节点可以对该签名用认证模块的公钥进行签名验证。由于该签名是可验证的,提高了该数字证书的证明力和公信力。从而,用该数字证书作为保障的公私钥来在区块链网络中交换数据,提高了区块链网络中数据交换的安全性。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。
图1A-1C示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法的三种体系构架图。
图2示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用电子发票应用场景下的场景构架图。
图3A-3K示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用在电子发票应用场景下的节点显示界面图,这些界面图表示了电子发票应用场景下图1A所示的体系构架下记账节点网络100外的交易信息产生方节点102申请数字证书和将交易信息上链的大体过程。
图4A-4K示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用在电子发票应用场景下的节点显示界面图,这些界面图表示了在图1B所示的体系构架下业务节点子网络104中的业务节点102向记账节点子网络100中的记账节点101查询上链的数据区块的区块体的大体过程。
图5示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法的流程图。
图6示出了根据本公开一个实施例的数字证书颁发中心中的各模块之间以及和所述节点之间的交互示意图。
图7示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法的流程图。
图8示出了根据本公开一个实施例的数字证书颁发中心中的各模块之间以及和所述节点之间的交互示意图。
图9示出了根据本公开一个实施例的图7中步骤520的一个具体流程图。
图10示出了根据本公开一个实施例的图7中步骤520的一个具体流程图。
图11示出了根据本公开一个实施例的节点向私钥管理模块托管私钥时的交互流程图。
图12示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法的流程图。
图13示出了根据本公开一个实施例的图12中步骤5100的一个具体流程图。
图14示出了根据本公开一个实施例的节点向私钥管理模块获取已托管私钥时的交互流程图。
图15示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法的流程图。
图16示出了根据本公开一个实施例的数字证书颁发中心的详细模块图。
图17A-17B示出了根据本公开一个实施例的数字证书颁发中心颁发的数字证书的示意图。
图18示出了根据本公开一个实施例的数字证书颁发中心的硬件结构图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些示例实施方式使得本公开的描述将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多示例实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的示例实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、步骤等。在其它情况下,不详细示出或描述公知结构、方法、实现或者操作以避免喧宾夺主而使得本公开的各方面变得模糊。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
下面先参照图1A-1C描述一下本公开实施例所应用的体系构架和整体流程。
图1A示出了本公开实施例所应用的一种区块链网络的体系构架。该体系构架包括记账节点网络100、交易信息产生方节点102和数字证书颁发中心103,其中记账节点子网络100包括多个记账节点101。交易信息产生方节点102和记账节点101在整个区块链体系构架下的权限不同,记账节点101具有记账权(产生数据区块并将数据区块上链的权利),而交易信息产生方节点102没有记账权只有产生交易信息并申请记账的权利,且不能检验记账节点101的记账是否正确,只能被动地相信记账节点101的记账。每个交易信息产生方节点102有其对应的记账节点101。当交易信息产生方节点102产生交易信息后,可以将交易信息发送给对应记账节点101申请记账,从而完成上链。
记账节点子网络100中包括的记账节点101彼此之间以及记账节点101和交易信息产生方节点102之间在上述数据区块上链过程中需要交换各种信息。为了保障交换的信息安全性,发送方需要对信息用该发送方的私钥进行签名,并与信息一起传输。接收到签名和信息的节点可以对该签名利用该发送方的公钥进行验证。由于公私钥的存在,数字证书颁发中心103的作用就体现了出来,数字证书颁发中心103能够对公私钥的合法性进行确认。
图1B示出了本公开实施例所应用的另一种区块链网络的体系构架。该体系构架包括记账节点子网络100、业务节点子网络104和数字证书颁发中心103。该体系构架与图1A的体系构架不同之处在于,有业务节点103构成的业务节点子网络104。业务节点103与图1A中的交易信息产生方节点102的区别在于,业务节点103虽然不能记账,但能够对记账节点101的记账进行验证。记账节点子网络100和业务节点子网络104之间通过代理节点105连接。代理节点105是属于业务节点子网络104的一个特殊节点。代理节点105的数据传递方式是双向的,它能将记账节点101要向业务节点102传递的信息传递给业务节点102,也可以将业务节点102产生的交易信息发送给记账节点101以完成上链。业务节点102产生各种需上链的交易信息,通过代理节点105传递给一个记账节点101。记账节点101通过所有记账节点101中选举出的领导记账节点将多个接收到的交易信息打包上链。领导记账节点对打包的多个交易信息生成摘要,并用领导记账节点的私钥生成签名,将摘要和签名放到区块头中发回业务节点102。业务节点102可以利用领导记账节点的公钥对该签名进行签名验证。在这里,涉及到领导记账节点的公私钥,因此,需要数字证书颁发中心103颁发的数字证书来保证领导记账节点的公私钥的合法性。
业务节点102仅接收到从记账节点101发过来的区块头,如果想要查询区块体中的具体交易信息,其需要向代理节点105发送对交易信息的查询请求。为了验证查询请求是合法的业务节点102发出的,业务节点102需要用该业务节点102的私钥对查询请求签名,代理节点105对查询请求用该业务节点102的公钥进行签名验证,以证明查询请求是业务节点102发出的,且传输无丢失。在这里,涉及到业务节点的公私钥,因此,需要数字证书颁发中心103颁发的数字证书来保证业务节点的公私钥的合法性。
图1C示出了本公开实施例所应用的另一种区块链网络的体系构架。该体系构架与图1B的体系构架不同之处在于,其记账节点子网络100分成了多个分支记账节点子网络。每个分支记账节点子网络可以负责某一种类型的交易信息的记录。例如,分支记账节点子网络A中的记账节点负责区块链金融交易信息的记录,分支记账节点子网络B中的记账节点负责电子发票交易信息的记录。图1C中也需要领导记账节点的公私钥或业务节点102的公私钥进行签名和签名验证,其过程与图1B类似。
图2示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用在电子发票的应用场景下的场景构架图。
在传统方式下,都是通过中心化的数据库完成电子发票的开具等业务流程;随着区块链技术的出现,发票上链已经取得一定的应用方面的成果。在这种电子发票的区块链应用场景下,传统中心化的电子发票业务流程中的交易行为,如地税局向开票企业发放发票、开票企业向领票人开出发票、领票人向领票人所在的报销单位报销发票等交易行为都需要上链,即记录到区块链上。
在地税局向开票单位发放发票、开票单位向领票人开出发票等事件中,地税局终端、开票单位等业务节点102将发放发票、开票等交易信息发送到记账节点子网络100上链。领导记账节点上链后,如结合图1B所述,在领导记账节点向业务节点102发送区块头的过程中、以及业务节点102查询区块体中的交易信息的过程中,分别需要用领导记账节点的私钥对区块体签名,以及用业务节点102的私钥对查询请求签名。在业务节点102和代理节点105分别用领导记账节点的公钥和业务节点102的公钥验证签名时,分别使用领导记账节点的公钥和业务节点102的公钥。因此,需要发放数字证书保证这些公私钥的合法性,产生了本公开实施例的为区块链网络中的节点发放数字证书的方法。
图3A-3K示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用在电子发票应用场景下的开票终端节点显示界面图,这些界面图表示了电子发票应用场景下图1A所示的体系构架下记账节点网络100外的交易信息产生方节点102申请数字证书和将交易信息上链的大体过程。
如图3A所示,开票单位终端在发生开票行为之前,由于将交易信息传递给记账节点101记账的过程中需要将交易信息签名,必须首先具有公私钥。因此,在图3A的界面中,开票单位终端向数字证书颁发中心103请求公私钥。
如图3B所示,数字证书颁发中心103会根据开票单位终端的请求,生成一对公私钥对,并向开票单位终端返回公私钥对。开票单位终端可以选择将私钥自己保存,也可以将私钥托管到数字证书颁发中心,以防保存在自己的终端中发生终端故障时丢失。
当选择托管时,管理员点击图3B所示的“是”,私钥被数字证书颁发中心103托管。如图3C所示,显示“私钥托管成功”的提示。
为了证明该公私钥是合法机构颁发的统一的公私钥,需要申请数字证书证明该公私钥的合法性。如图3D所示,开票单位终端填写单位名称、纳税人识别号等注册信息。管理员点击“确定”后,将发放的公钥和注册信息提交到数字证书颁发中心103。
数字证书颁发中心103接收到注册信息后,对注册信息进行认证,如果通过,向开票单位终端发放数字证书。数字证书含有图3E所示的版本号、签名算法、认证模块公钥、开票单位公钥等明文信息、和用认证模块的私钥对明文信息进行的签名。由于该数字证书中含有开票单位公钥,与公私钥形成绑定关系,证明了该发放的公私钥是合法的。
开票单位终端接收到数字证书后,用认证模块的公钥对数字证书中的签名进行验证。如果验证通过,证明该数字证书是由合法机构颁发的,显示图3F所示的数字证书验证成功的提示。
当开票单位终端开出发票时,需要将开票信息上链,这时在图3G的界面上填写开票单位、发票标识等交易信息。管理员点击“发送到记账节点”后,指示将这些交易信息发送到对应的记账节点101。
为了保障交易信息发送方的合法性和交易信息传输的完整性,需要对交易信息签名。签名需要使用开票单位终端的私钥。由于该私钥在图3B的界面上被选择托管,这时需要从数字证书颁发中心103获取托管的私钥。管理员在图3H的界面上选择“是”。
当从从数字证书颁发中心103获取到托管的私钥后,显示图3I所示的提示界面。管理员在该界面上点击“签名并发送”,用开票单位终端的私钥对交易信息签名,并发送给记账节点101。
记账节点101接收到开票单位终端的签名后,对该签名用开票单位终端的公钥进行验证。验证成功后,通知开票单位终端验证成功。开票单位终端上显示如图3J所示的界面。
记账节点101对交易信息进行上链。上链完成后,通知开票单位终端上链完成。开票单位终端上显示如图3K所示的界面。
图4A-4K示出了根据本公开一个实施例的为区块链网络中的节点发放数字证书的方法应用在电子发票应用场景下的节点显示界面图,这些界面图表示了在图1B所示的体系构架下业务节点子网络104中的业务节点102向记账节点子网络100中的记账节点101查询上链的数据区块的区块体的大体过程。
图4A-F是业务节点102在查询区块体中的交易信息前完成公私钥和相应数字证书的获取的过程,其与图3A-F类似,故不赘述。
交易信息上链后,业务节点102仅接收到由记账节点101发送过来的区块头。当业务节点102需要查询区块体中的交易信息时,显示如图4G所示的界面。当管理员点击“确定”后,指示向代理节点105发送查询请求。
为了证明查询请求是由一个合格的业务节点102发出的,需要同时发送业务节点102的签名。如图4H所示,显示界面提示查询请求需要签名,并询问是否获取签名用的私钥。
当管理员点击图4H界面中的“是”时,从数字证书颁发中心103获取业务节点102的私钥。如图4I所示,当管理员点击“签名并发送”时,用业务节点102的私钥对查询请求签名,并连同查询请求一起发送给代理节点105。
代理节点105接收到查询请求和签名后,用业务节点102的公钥验证签名,如果验证成功,并通知业务节点102。业务节点102显示如图4J所示的界面。
当签名验证成功后,代理节点105向相应记账节点101发送区块头交易信息的查询请求,根据业务节点102的权限,决定是否为其返回查询的交易信息。图4K示出了在业务节点102查看返回的交易信息的界面。
如图5所示,根据本公开的一个实施例中,提供了一种为区块链网络中的节点发放数字证书的方法。
区块链网络是指如图1A-C所示的向区块链上记录数据区块所涉及的整个体系构架。数字证书是指为了保证向节点分配的公私钥是由合法机构分配的而设置的证明文件。区块链网络中的节点是指区块链网络中的除数字证书颁发中心103以外的所有节点。在图1A中,它包括交易信息产生方节点102和记账节点101。在图1B-C中,它包括业务节点102、代理节点105、记账节点101。
所述方法由数字证书颁发中心103执行。数字证书颁发中心是基于加密算法,为区块链节点通信提供安全服务的中心化基础设施。如图6所示,所述数字证书颁发中心103至少包括公私钥生成模块TPKI_sdk、认证模块TPKI_ca和认证策略模块TPKI_aus。公私钥生成模块TPKI_sdk是为节点生成公私钥的模块。认证模块TPKI_ca是对节点进行认证,从而验证该节点的合法性,进而在合法节点和为节点生成的公私钥之间形成经认证的配对的模块。认证策略模块TPKI_aus是存储对节点的注册信息进行认证时采用的策略的模块。
公私钥生成模块TPKI_sdk、认证模块TPKI_ca和认证策略模块TPKI_aus可以是物理上的,例如分布在不同的实体机中,也可以是虚拟的,例如是分布在一台实体机中的不同虚拟模块。
如图5所示,所述方法包括:
步骤510,响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块TPKI_sdk,为所述节点生成所述节点的公钥和私钥并发送到所述节点;
步骤530,通过认证模块TPKI_ca,接收所述节点的公钥和注册信息;
步骤540,通过认证模块TPKI_ca,获取来自于认证策略模块TPKI_aus的与所述节点对应的注册信息认证策略;
步骤550,通过认证模块TPKI_ca,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证;
步骤560,如果认证成功,通过认证模块TPKI_ca,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块TPKI_ca的私钥对所述明文信息形成的签名,以便所述节点用认证模块TPKI_ca的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
下面结合图6示出的数字证书颁发中心中的各模块之间以及和所述节点之间的交互示意图对图5示出的技术方案进行解释。在6-1中,公私钥生成模块TPKI_sdk为节点Bers生成公私钥对并发送给该节点;在6-4中,节点Bers向认证模块TPKI_ca发送注册信息和公钥;在6-5中,认证模块TPKI_ca向认证策略模块TPKI_aus发送注册信息认证策略获取请求;然后认证策略模块TPKI_aus获取与所述节点对应的注册信息认证策略,并在步骤6-6中向认证模块TPKI_ca返回认证策略;如果认证成功,认证模块TPKI_ca会在步骤6-7中向节点Bers发送数字证书;而如果认证失败,认证模块TPKI_ca会在步骤6-7中向节点Bers发送认证失败的提醒信息。
下面对步骤510-560进行进行详细阐述。
步骤510,响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块TPKI_sdk,为所述节点生成所述节点的公钥和私钥并发送到所述节点。
公私钥请求是区块链网络中的节点用于向数字证书颁发中心获取数字证书的请求。公私钥请求可以是基于各种网络协议的网络请求,比如HTTP/HTTPS协议下的请求,例如使用get、post等方法生成的请求。
在一个实施例中,在公私钥对的生成方式,可以通过现有的OpenSSL这个安全套接字层密码库的命令行工具来生成。
由于非对称加密算法不同,产生公私钥对的方法不同。因此,在一个实施例中,在公私钥生成模块TPKI_sdk设置非对称加密算法库,公私钥生成模块TPKI_sdk从该非对称加密算法库随机选取一种非对称加密算法,为所述节点生成所述节点的公钥和私钥。
在一个实施例中,区块链网络中的节点向数字证书颁发中心发送的公私钥请求中包含非对称加密算法的名称,公私钥生成模块TPKI_sdk按照该名称的非对称加密算法,为所述节点生成所述节点的公钥和私钥。该实施例的好处是,增强了节点选择公私钥的灵活性,使得节点可以根据偏好选择其偏爱加密算法的公私钥。
在一个实施例中,区块链网络中的节点向数字证书颁发中心发送的公私钥请求中包含该节点的类型,公私钥生成模块TPKI_sdk中预先设置有节点的类型与非对称加密算法名称的对应关系表,公私钥生成模块TPKI_sdk按照公私钥请求中的节点的类型,查找对应关系表,得到对应的非对称加密算法名称,按照该名称的非对称加密算法,为所述节点生成所述节点的公钥和私钥。该实施例的好处是,一种类型的节点,适合于它的非对称加密算法往往是固定的。根据节点的类型,选取其适合的非对称加密算法来生成公私钥,提高了生成的公私钥的质量。
在一个实施例中,在公私钥生成模块TPKI_sdk设置非对称加密算法库,非对称加密算法库中的非对称加密算法具有预定顺序,公私钥生成模块TPKI_sdk从该非对称加密算法库按照预定顺序选取前一次选取的非对称加密算法的下一个非对称加密算法,为所述节点生成所述节点的公钥和私钥;如果前一次选取的非对称加密算法是预定顺序中最后一个非对称加密算法,则选取第一个非对称加密算法,为所述节点生成所述节点的公钥和私钥。该实施例的优点是,由于每次选取的非对称加密算法不同,增强了公私钥在传输过程中被第三方破解的难度,提高了发放的公私钥的传输安全性。
在一个实施例中,通过公私钥生成模块TPKI_sdk为所述节点生成所述节点的公钥和私钥并发送到所述节点之后,所述方法还包括:将所述节点的公私钥与节点标识对应地进行备份存储。这样做的好处是,如果节点没有保存好自己的私钥,同时也没有委托私钥管理模块TPKI_pks,可以通过公私钥生成模块TPKI_sdk找到发放给自己的私钥。
在步骤530中,通过认证模块TPKI_ca,接收所述节点的公钥和注册信息。
如前所述,所述节点的公钥已经由公私钥生成模块TPKI_sdk生成,并发送给了所述节点。
注册信息可以是节点向数字证书颁发中心103注册时需要填写的信息,例如单位名称、纳税人识别号等。向数字证书颁发中心103注册的意义是为了获取数字证书,从而证明为其分配的公私钥是合法机构为其颁发的公私钥。只有注册信息认证通过,才能为节点颁发数字证书。
在一个实施例中,所述节点的公钥和注册信息是用认证模块TPKI_ca的公钥加密的。这样做的好处是,只有认证模块TPKI_ca具有认证模块TPKI_ca的私钥,才能将其解密。一旦传输过程中被第三方拦截,第三方不具有认证模块TPKI_ca的私钥,不能解密,从而保证了节点注册信息传输的安全性。
在步骤540中,通过认证模块(TPKI_ca),获取来自于认证策略模块(TPKI_aus)的与所述节点对应的注册信息认证策略。
注册信息认证策略是体现数字证书所能满足的安全要求所基于的策略,可以是一个或多个安全规则的策略。比如,验证那些注册信息、根据什么标准验证等等。例如,注册信息认证策略可能是:单位地址是深圳市,单位人数大于500人。即,该区块链网络可能是一个服务于深圳市大中型单位的一个区块链网络。如果是非深圳市的单位,或者深圳市的人数较少的小单位,考虑到网络维护成本问题,可能就不为其认证通过,不向其发放数字证书,不为其公私钥提供合法性证明。
值得一提的是,与所述节点对应的注册信息认证策略并不意味着该注册信息认证策略与所述节点唯一对应,即该注册信息认证策略可以用于所述节点,也可以用于所述节点之外的其他节点。注册信息认证策略可以是所有节点通用的唯一注册信息认证策略,也可以是每个节点不同的注册信息认证策略。
在一个实施例中,所述与所述节点对应的注册信息认证策略包括特定于所述节点类型的注册信息认证策略;所述注册信息中含有所述节点类型;所述步骤540包括:获取来自于认证策略模块(TPKI_aus)的特定于所述节点类型的注册信息认证策略。
也就是说,根据注册信息中含有的节点类型(如金融型企业终端、法律服务业公司终端),来确定特定于所述节点类型的注册信息认证策略。不同节点类型的注册信息认证策略可能不同。例如,金融型企业,其盈利程度可能比较大,要求注册资金是200万以上;法律服务业公司,其盈利程度可能比较小,要求注册资金是10万以上。
该实施例的好处是,某一类型的节点具有相似的特点,在考查是否可以为其发放数字证书时,往往会遵循类似的标准。通过这种方式,进一步提高了认证的准确性。
在一个实施例中,所述节点的注册信息中包含要申请的数字证书的规格,该规格可以表示数字证书的安全等级;认证策略模块TPKI_aus包含一个数字证书规格与认证策略的对应关系表;所述与所述节点对应的注册信息认证策略是按照所述注册信息中的数字证书规格,从数字证书规格与认证策略的对应关系表中查找出的。
规格表示数字证书的安全等级,例如,规格3级代表安全等级最高,规格2级代表安全等级中等,规格1级代表安全等级最低。安全等级越高,认证的严格程度就要越高,对应的认证策略可能也越多,或越苛刻。该实施例的好处是,为不同安全等级的数字证书,设定不同的认证策略,不同安全等级的数字证明,对公私钥合法性的证明力不同。通过这种方式,能够增强数字证书发放的灵活性。
在一个实施例中,所述注册信息认证策略是区块链上存储的所述节点与区块链网络运营方签署的智能协议中获取的。所述节点使用区块链网络,要事先与区块链网络运营方签署智能协议,该智能协议具有认证时的认证策略。该智能协议可以与所述节点的标识对应地存储在区块链上。这样,可以从所有上链的数据区块的区块体中查找所述节点的标识,并查找到与该节点的标识对应存储的智能协议,从所述智能协议中查找到注册信息认证策略。该实施例的好处是,不需要额外设置认证策略,可以直接利用智能协议中的认证策略,提高发放数字证书的效率。
在一个实施例中,认证策略模块TPKI_aus包含一个请求发放时间段与认证策略的对应关系表。步骤540包括:
确定接收到公钥和注册信息的时间所在的请求发放时间段;
将所述请求发放时间段发送给认证策略模块TPKI_aus,以便认证策略模块TPKI_aus查找请求发放时间段与认证策略的对应关系表,获得与该请求发放时间段对应的认证策略返回。
例如,每天上班时间9:00-17:00、和下班时间0:00-9:00或17:00-24:00的认证策略是不一样的。可以将接收到公钥和注册信息的时间确定为数字证书请求发放的时间,该请求发放的时间落在9:00-17:00,还是落在0:00-9:00或17:00-24:00,意味着认证策略不同。可以从请求发放时间段与认证策略的对应关系表找到与该请求发放时间段对应的认证策略,作为获取到的认证策略。
该实施例的好处是,充分考虑到在一些场景中认证策略随不同时间段的变化,使得该数字证书发放体系得到更广泛的应用。
在步骤550中,通过认证模块(TPKI_ca),基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证。
与所述节点对应的注册信息认证策略可能包括多个安全规则,如前面所述的单位地址是深圳市,单位人数大于500人等。认证要针对每项安全规则分别考虑认证信息是否符合该安全规则,如果都符合则认证成功,否则认证失败。
在步骤560中,如果认证成功,通过认证模块TPKI_ca,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块TPKI_ca的私钥对所述明文信息形成的签名,以便所述节点用认证模块TPKI_ca的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
在一个实施例中,生成所述节点的数字证书包括:
生成明文信息,所述明文信息包括所述节点的公钥;
根据预定摘要算法对所述明文信息生成摘要;
用认证模块TPKI_ca的私钥对所述摘要加密,得到签名;
基于签名和明文信息,生成所述数字证书。
预定摘要算法例如哈希算法。与一般生成签名的过程类似,该实施例也是先对明文信息生成摘要,再对摘要加密,得到签名。然后,将签名和明文信息一起放到数字证书中。由于明文信息具有所述节点的公钥,因此建立了数字证书与发放的公私钥的关联性,使得数字证书能够证明某个特定的公私钥是合法发放的。签名的作用是便于所述节点验证该数字证书是由合法的机构,即认证模块TPKI_ca发放的,提高数字证书的公信力。
对应地,在一个实施例中,用认证模块TPKI_ca的公钥对所述签名进行验证,包括:
将数字证书中的签名用认证模块TPKI_ca的公钥解密;
将数字证书中的明文信息用所述预定摘要算法生成摘要;
将解密结果与所述生成的摘要比较,如一致,则验证成功,如不一致,则验证失败。
在一个实施例中,在区块链网络的每个节点存储所述认证模块TPKI_ca的公钥。所述认证模块TPKI_ca的公钥可以从所述节点存储的公钥中获取。该实施例的优点是,简便易行,减少了获取所述认证模块TPKI_ca的公钥的时间。
在一个实施例中,所述认证模块TPKI_ca的公钥从区块链上记录该认证模块TPKI_ca的公钥的数据区块获取。也就是说,将认证模块TPKI_ca的公钥上链保存,例如与认证模块TPKI_ca的标识对应保存在一个数据区块的一个交易信息中。在查询时,在区块链上所有数据区块的交易信息中查找认证模块TPKI_ca的标识,并查找到该交易信息中与该标识对应的公钥。该实施例的优点是,减少了每个节点中存储空间的占用。
如果该数字证书是由合法的认证模块TPKI_ca发放的,解密结果与所述生成的摘要应当一致,则验证成功。如果验证不成功,很可能数字证书不是合法的认证模块TPKI_ca发放的。这样,提高了数字证书本身的安全性。
在一个实施例中,节点除了进行上述签名验证之外,还进行签发机构合法性验证。
如图17A和17B所示,所述明文信息还包含签发机构标识信息,以便所述节点根据合法签发机构标识信息列表对该数字证书进行验证。
在每个节点处,可以存储合法签发机构标识信息列表,该合法签发机构标识信息列表列出了所有合法的签发机构的标识列表。只要标识信息在该合法签发机构标识信息列表中,该签发机构就是合法的。通过将明文信息中的签发机构标识信息与合法签发机构标识信息列表中的每个合法签发机构标识信息逐一对比,可以判断该数字证书是否是一个合法的机构所颁发。该签发机构合法性验证的好处是,进一步提高了数字证书的公信力。
图17A和图17B分别是所述节点为企业或者服务商时,数字证书颁发中心为所述节点颁发的数字证书内容的示例。如图17A-B所示,无论是企业还是服务器的数字证书,都包括明文信息和对明文信息的签名。
如图17A所示,企业的明文信息除了企业公钥、签发机构标识外,还可能包括版本号、序列号、签名算法、认证模块CA公钥、企业标识、有效时间、证书状态信息和扩展信息。本领域技术人员应当理解,在实际中,可能只包括版本号、序列号、签名算法、认证模块CA公钥、企业标识、有效时间、证书状态信息和扩展信息中的一项或多项,也可能一项也不包括。
版本号是区块链的版本标识。当区块链的版本升级时,数字证书颁发中心颁发的数字证书中的版本标识变化。
序列号是颁发的数字证书的序号。每个数字证书按发放的顺序,具有唯一的序列号。该序列号可以按发放的顺序从小到大递增生成。
签名算法是认证模块CA生成签名时对明文信息生成摘要用的摘要算法。将它发送回所述节点,是为了所述节点验证签名时可以用该摘要算法重新对明文信息生成摘要,从而与对签名解密的结果进行对比。
认证模块CA公钥发送回所述节点的意义在于,所述节点对签名解密时需要用认证模块CA的公钥解密。
企业标识是指唯一区分企业的标记,可以用纳税人识别号等作为企业标识,也可以为企业分配专门的标识。
有效时间是指该数字证书有效的截止时间。在后文中查询私钥时会提到,要根据该有效时间进行有效时间验证,以便决定是否给所述节点返回查询的私钥。
证书状态信息是指表示数字证书的状态的信息,例如证书是否被吊销,如果未被吊销,该证书状态信息为正常。
扩展信息是指根据实际需要其它需要被加入数字证书的信息。
图17B与图17A的区别在于,它用服务商标识代替了企业标识,用服务商公钥代替了企业公钥。服务商标识是指唯一区分服务商的标记。服务商公钥是指分配给服务商的公钥。
数字证书可以是结构化的数据文件,该结构化的数据文件可以是节点能够识别的各种格式,比如可以是.cer或者.crt格式。
在一个实施例中,所述数字证书颁发中心还包括私钥管理模块TPKI_pks。私钥管理模块是对数字证书颁发中心为节点颁发的私钥进行托管的模块。如图7所示,所述方法在步骤510的后面还包括:
步骤520,通过私钥管理模块TPKI_pks,接收由所述节点发送的私钥并保存。
该实施例的好处是,所述节点自己保存私钥,如果机器发生故障导致存储器被破坏,可能丢失私钥,而且私钥存储在所述节点的存储器中,容易被第三方盗取,而托管则不存在这些问题。
参考图8所示,私钥管理模块TPKI_pks可以通过6-2和6-3实现与节点Bers的双向交互。在6-2中,所述节点将私钥发生给私钥管理模块TPKI_pks。在6-3中,所述私钥管理模块TPKI_pks向所述节点确认已经托管了私钥。
在一个实施例中,如图9所示,步骤520中,所述接收由所述节点发送的私钥,包括:
步骤523,接收所述节点利用私钥管理模块TPKI_pks的公钥加密的第一随机会话密钥;
步骤524,利用私钥管理模块TPKI_pks的私钥解密加密的第一随机会话密钥,得到所述第一随机会话密钥;
步骤525,接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥;
步骤526,利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥,得到所述节点的私钥。
下面对图9所示出的上述几个步骤给出具体解释。
在步骤523中,接收所述节点利用私钥管理模块TPKI_pks的公钥加密的第一随机会话密钥。
第一随机会话密钥是所述节点在要托管私钥时随机生成的一个会话密钥。
在一个实施例中,区块链网络中的所有节点都存储有TPKI_pks的公钥。在这种情况下,私钥管理模块TPKI_pks的公钥可以从存储的公钥中获取。该实施例的优点是简便易行,节省获取TPKI_pks的公钥的时间。
在一个实施例中,所述私钥管理模块TPKI_pks的公钥从区块链上记录该私钥管理模块TPKI_pks的公钥的数据区块获取。也就是说,私钥管理模块TPKI_pks的公钥上链保存。其可以与私钥管理模块TPKI_pks的标识对应保存在一个数据区块中。在从区块链上获取私钥管理模块TPKI_pks的公钥时,可以查找出所有带有该私钥管理模块TPKI_pks的标识的区块体,并查找出与该标识对应存储在一个交易信息中的公钥。该实施例的优点是,节省了各个节点的存储空间。
在步骤524中,利用私钥管理模块TPKI_pks的私钥解密加密的第一随机会话密钥,得到所述第一随机会话密钥。
由于只有私钥管理模块TPKI_pks具有私钥管理模块TPKI_pks的私钥,因此,只有私钥管理模块TPKI_pks才能解密加密的第一随机会话密钥。因此,即使第三方拦截了加密的第一随机会话密钥,其也无法破解第一随机会话密钥,保证了第一随机会话密钥传输的安全性。
在步骤525中,接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥。
如前所述,即使第三方拦截了加密的第一随机会话密钥,其也无法破解第一随机会话密钥,只有所述节点和私钥管理模块TPKI_pks具有第一随机会话密钥。因此,用第一随机会话密钥加密所述节点的私钥后传输给私钥管理模块TPKI_pks,即使中途第三方截获了加密的所述节点的私钥,也无法破解,提高了所述节点的私钥传输的安全性。
在步骤526中,利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥,得到所述节点的私钥。
该实施例的好处是,上述节点的私钥的传递过程运用两次协商过程。通过第一次协商过程传递第一随机会话密钥,传输过程中利用私钥管理模块TPKI_pks的公钥加密,私钥管理模块TPKI_pks接收后利用私钥管理模块TPKI_pks的私钥解密。通过第二次协商过程传递所述节点的私钥,传输过程中用第一随机会话密钥加密,私钥管理模块TPKI_pks接收后利用第一随机会话密钥解密。第三方截获了其中一次协商过程中传递的内容,根本无法破解所述节点的私钥。即使第三方截获了两次协商过程中传递的内容,由于私钥管理模块TPKI_pks的私钥只有私钥管理模块TPKI_pks自己才有,也无法破解所述节点的私钥。这就为提高私钥管理模块TPKI_pks的私钥传递的安全性提供了双重保障。
在一个实施例中,私钥管理模块TPKI_pks是分散在多个地点的多个私钥管理模块TPKI_pks。当任一个私钥管理模块TPKI_pks接收到节点发送的私钥后,都向其它地点的私钥管理模块TPKI_pks进行同步。
该实施例的优点是,防止私钥管理模块TPKI_pks仅设置在一处,这样,一旦该私钥管理模块TPKI_pks遭受到攻击被破坏,造成其为所有节点托管的私钥都丢失。该实施例通过设置多个地点的多个私钥管理模块TPKI_pks,当任一个私钥管理模块TPKI_pks接收到节点发送的私钥后,都向其它地点的私钥管理模块TPKI_pks进行同步,即使一个地点的私钥管理模块TPKI_pks遭到了破坏,在其它地点的私钥管理模块TPKI_pks仍然能找到该托管的私钥,增加了私钥托管的安全性。
在一个实施例中,私钥管理模块TPKI_pks对私钥进行了托管存储时,可以用对称式加密算法进行加密,比如可以使用DES、AES、3DES等加密算法。加密所述私钥的密钥可以被硬编码在私钥管理模块之中。这样,即使该加密的私钥被第三方窃取,由于加密所述私钥的密钥被硬编码在私钥管理模块TPKI_pks之中,第三方仍然无法解密该加密的私钥,进一步提高了托管的私钥的安全性。
在一个实施例中,在步骤523之前,步骤520还包括对私钥管理模块TPKI_pks的合法性进行验证的过程,如图10所示,步骤520还包括以下步骤:
步骤521,通过认证模块TPKI_ca,接收来自所述节点的私钥管理模块TPKI_pks数字证书获取请求。
私钥管理模块TPKI_pks数字证书是私钥管理模块TPKI_pks拥有合法托管资质的证明文件。在一个实施例中,该数字证书可以是认证模块TPKI_ca为其颁发的。
步骤522,通过认证模块TPKI_ca,向所述节点发送所述私钥管理模块TPKI_pks的数字证书,所述数字证书包括用认证模块(TPKI_ca)的私钥进行的签名,以便所述节点接收到所述数字证书后,用认证模块(TPKI_ca)的公钥进行验证。
该私钥管理模块TPKI_pks数字证书包含有明文信息和用认证模块TPKI_ca的私钥对该明文信息生成的签名。明文信息中包含私钥管理模块TPKI_pks的基本信息,如名称、注册号、注册时间、被授予的权利、授权时间等等。签名的生成方法同前,故不赘述。所述节点接收到所述数字证书后,用认证模块(TPKI_ca)的公钥进行验证的方法也同前,故不赘述。
该实施例的优点是,可以在托管所述节点的私钥前验证私钥管理模块TPKI_pks的合法性,提高私钥托管安全性。
如图11所示,当节点Bers想要托管其私钥时,首先向认证模块TPKI_ca发送获取私钥管理模块TPKI_pks的数字证书的请求然后,认证模块TPKI_ca会向Bers节点返回私钥管理模块TPKI_pks的数字证书。接下来,节点Bers会验证认证模块TPKI_ca返回的数字证书。然后,若数字证书验证成功,Bers节点会生成第一随机会话密钥。接下来,Bers节点会使用私钥管理模块TPKI_pks的公钥加密生成的第一随机会话密钥。接着,Bers节点向私钥管理模块TPKI_pks发送加密的第一随机会话密钥。私钥管理模块TPKI_pks可以使用其私钥解密得到第一随机会话密钥。接着,私钥管理模块TPKI_pks可以向节点Bers返回代表已成功获得会话密钥的提醒信息。然后,节点Bers就可以使用第一随机会话密钥加密包括节点Bers的私钥在内的各种敏感信息。接下来,节点Bers向私钥管理模块TPKI_pks发送加密后私钥等敏感信息。私钥管理模块TPKI_pks使用得到的第一随机会话密钥对加密后的私钥进行解密,得到节点Bers的私钥,向节点Bers返回私钥托管成功的提醒信息。这样,就完成了节点Bers向私钥管理模块TPKI_pks托管私钥的整个方案。
下面描述所述节点托管自己的私钥之后,在需要该私钥时查询托管的私钥的过程。
在一个实施例中,在步骤560之后,所述方法还包括步骤580-步骤5100。如图12所示,所述方法还包括以下步骤:
步骤580,通过所述私钥管理模块TPKI_pks,接收所述节点的私钥查询请求。
私钥查询请求是所述节点发来的用于从私钥管理模块TPKI_pks中获取托管的私钥的请求,其可以是基于各种网络协议创建的请求,例如可以是HTTP/HTTPS等类型的请求。
步骤590,通过所述私钥管理模块TPKI_pks,向认证模块TPKI_ca发送所述节点的数字证书查询请求。
步骤5100,如果接收到数字证书认证成功的应答,通过所述私钥管理模块TPKI_pks,向所述节点发送所述节点的私钥。
如果私钥管理模块TPKI_pks只根据接到私钥查询请求,就向该请求的发送方返回托管的私钥,则黑客等不法分子很容易使用假冒的请求来窃取私钥管理模块TPKI_pks上托管的私钥,造成严重损失。所以只有针对已经进行过数字证书颁发的节点,才能为其返回私钥。因为数字证书证明了公私钥的合法性,同时由于该数字证书是所述节点请求的,证明了所述节点对该公私钥具有支配权。因此,在返回私钥之前,要向认证模块TPKI_ca发送所述节点的数字证书查询请求,只有认证模块TPKI_ca查询到该节点具有数字证书时,才能为其返回私钥。
在一个实施例中,所述私钥查询请求和数字证书查询请求都具有所述节点的公钥。如图17A-B所示,所述数字证书中具有所述节点的公钥。认证模块TPKI_ca根据所述公钥查询到所述节点的数字证书。
在一个实施例中,所述私钥查询请求和数字证书查询请求都具有所述节点的标识。如图17A-B所示,所述数字证书中具有所述节点的标识,如图17A的企业标识和图17B的服务商标识。认证模块TPKI_ca根据所述节点的标识查询到所述节点的数字证书。
在一个实施例中,所述私钥查询请求和数字证书查询请求都具有所述数字证书的序列号。如图17A-B所示,所述数字证书中具有所述数字证书的序列号。认证模块TPKI_ca根据所述序列号查询到所述节点的数字证书。
在一个实施例中,如图13所示,私钥管理模块TPKI_pks向所述节点发送所述节点的私钥的过程可以包括以下步骤:
步骤5110,接收所述节点利用私钥管理模块TPKI_pks的公钥加密的第二随机会话密钥。
所述私钥管理模块TPKI_pks的公钥同前,故不赘述。
第二随机会话密钥与第一随机会话密钥相比,可以是所述节点采用相同的生成方式生成的,也可以是采用不同的生成方式生成的。
步骤5120,利用私钥管理模块TPKI_pks的私钥解密加密的第二随机会话密钥,得到所述第二随机会话密钥。
与前面解密加密的第一随机会话密钥的过程类似,故不赘述。
步骤5130,查询所述节点的私钥。
在一个实施例中,步骤525包括:接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥和公钥。步骤526包括:利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥和公钥,将得到的私钥和公钥对应存储。步骤5130包括:根据私钥查询请求中的所述节点的公钥,查询存储的对所述公钥对应的私钥。
在一个实施例中,步骤525包括:接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥和所述节点的标识。步骤526包括:利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥和所述节点的标识,将得到的私钥和所述节点的标识对应存储。步骤5130包括:根据私钥查询请求中的所述节点的标识,查询存储的对所述标识对应的私钥。
步骤5140,用所述第二随机会话密钥加密所述节点的私钥并发送到所述节点,以便所述节点利用所述第二随机会话密钥解密加密的所述节点的私钥,得到所述私钥。
在一个实施例中,第二随机会话密钥是基于对称式加密算法生成的。用所述第二随机会话密钥加密所述节点的私钥、和用所述第二随机会话密钥解密加密的所述节点的私钥的过程与前述用所述第一随机会话密钥加密所述节点的私钥、和用所述第一随机会话密钥解密加密的所述节点的私钥的过程类似,故不赘述。与托管私钥时的两次协商一样,查询私钥时的两次协商,也达到了提高私钥传输过程中的安全性的效果。
在一个实施例中,参考图1C所示,所述区块链包括多个子区块链。对于在不同子区块链上上链和查询数据区块,可能需要不同的公私钥对,以进一步提高区块链上公私钥使用的安全性。即使第三方获知了在一个子区块链上上链和查询用的公私钥,也很难知悉其它子区块链上上链和查询用的公私钥。
在该实施例中,所述公私钥请求中具有要注册的子区块链的标识。所述为所述节点生成所述节点的公钥和私钥包括:为所述节点生成所述节点的要注册的子区块链上的公钥和私钥。具体地说,根据公私钥请求中的要注册的子区块链的标识,为节点生成这些子区块链上的公钥和私钥。虽然有多个子区块链,但所述节点可能不会用到其中一些子区块链,因而只需要请求到其可能以后会用到的子区块链上的公私钥即可。
所述节点请求到哪些子区块链上的公私钥,就只需要针对这些子区块链通过认证。因此,在该实施例中,所述注册信息包括要注册的子区块链,这些子区块链与请求发放公私钥的子区块链是一致的。步骤540包括:获取来自于认证策略模块TPKI_aus的与所述节点对应的各子区块链注册信息认证策略。也就是说,每个子区块链有不同的认证策略,可以针对每个所述节点要注册的子区块链,用相应的认证策略去认证。
步骤550包括:基于与所述节点对应的各子区块链注册信息认证策略,为所述注册信息进行在要注册的子区块链上的认证。所述明文信息包括认证成功的子区块链上的公钥。
由于所述节点在每个要注册的子区块链上分别认证,有可能出现一些要注册的子区块链认证成功,另一些要注册的子区块链认证失败的情况。这时,仅对认证成功的那些子区块链发放证书,即在证书的明文信息中仅包括认证成功的子区块链上的公钥。这样,仅从数字证书的明文信息中包括的公钥,就能够确定所述节点在那些子区块链上认证成功,具有权限。
例如,所述节点要注册子区块链2、3,其中,子区块链2的认证策略是地址在深圳市,子区块链3的认证策略是单位人数超过500,该企业是一个人数两千多人的北京的工厂,因此,子区块链3的认证成功,子区块链2的认证失败。仅将子区块链3的公钥写入数字证书的明文信息中。
该实施例的优点是可以在多子区块链的情形下针对不同子区块链进行不同认证,获得不同子区块链的认证结果,使得数字证书对公私钥合法性的证明精确到子区块链,提高了数字证书使用的灵活性。
在一个实施例中,所述私钥查询请求包括要查询的私钥所属的子区块链,所述节点的数字证书查询请求包括要查询的私钥所属的子区块链,使得所述认证模块TPKI_ca根据要查询的私钥所属的子区块链是否是所述数字证书的明文信息中含有的认证成功的公钥对应的子区块链,确定是否发送数字证书认证成功的应答。
也就是说,在前述实施例中,在步骤5100中,认证模块TPKI_ca可能仅根据数字证书查询请求中的所述节点的标识,查询是否为所述节点发放过数字证书,如果是,则可以向私钥管理模块TPKI_pks发送数字证书认证成功的应答。但在本实施例中,由于有不同子区块链,还需要具体验证在所述节点想要获取私钥的子区块链上,所述节点是否具有权限。这时,就需要在其数字证书的明文信息中查找明文信息中包含的公钥,这些公钥对应的子区块链就是所述节点有权限的子区块链,可以为其发生数字证书认证成功的应答,在应答中包含着认证成功的子区块链。私钥管理模块TPKI_pks仅根据认证成功的子区块链为所述节点返回查询的私钥。例如,所述节点可能请求子区块链2和3上的私钥,但认证模块TPKI_ca查询其数字证书,发现数字证书中仅含有子区块链3上的公钥。因此,仅向所述节点返回子区块链3上的私钥。
该实施例的优点是,在多子区块链的情况下,提高查询托管的私钥的灵活性。所述节点只能查询到那些通过认证的、在数字证书中具有对应的公钥的那些私钥。
在一个实施例中,认证模块TPKI_ca向私钥管理模块TPKI_pks发送数字证书认证成功的应答,除了进行上述验证之外,还需要验证数字证书是否过期,如过期,需要重新注册数字证书。如图17A-B所示,所述明文信息还包含有效时间。通过所述私钥管理模块TPKI_pks,向认证模块TPKI_ca发送所述节点的数字证书查询请求后,认证模块TPKI_ca找到所述节点对应的数字证书,根据数字证书中的有效时间与当前时间的比较,对该数字证书进行有效时间验证。在有效时间验证成功的情况下,才向所述私钥管理模块TPKI_pks发送数字证书认证成功的应答。
具体地说,有效时间可以是该数字证书有效的截止时间。如果该有效时间早于当前数据,则验证失败。如果该有效时间晚于当前时间,则验证成功。该实施例的好处是,对数字证书的时效性进行验证,进一步提高了数字证书的公信力。
由于数字证书即使不过期,也可能由于单位违法等原因吊销数字证书。在一个实施例中,认证模块TPKI_ca向私钥管理模块TPKI_pks发送数字证书认证成功的应答,除了进行上述验证之外,还需要验证数字证书的状态,即是否被吊销,如吊销,则不能为其发放私钥。如图17A-B所示,所述明文信息还包含证书状态信息。所述私钥管理模块TPKI_pks,向认证模块TPKI_ca发送所述节点的数字证书查询请求后,认证模块TPKI_ca根据所述证书状态信息,对该数字证书进行状态验证,在状态验证成功的情况下,才向所述私钥管理模块TPKI_pks发送数字证书认证成功的应答。
具体地说,如果证书状态信息表明该数字证书正常,则状态验证成功;如果表明该数字证书被吊销,则状态验证失败。该实施例的好处是,对数字证书的状态进行验证,进一步提高了数字证书的公信力。
在一个实施例中,所述节点包括单位节点和服务商节点。服务商是指在某些单位既不具有自己将交易信息上链或查询的条件(即不是图1A-C中的记账节点101),也不具有委托记账节点101将交易信息上链或查询的条件(即不是图1A中的交易信息产生方节点102,也不是图1B-C中的业务节点105),接收这些单位的委托,为这些单位进行交易信息委托记账节点101上链或查询的实体。当然,也存在一些自己具有将交易信息上链或查询的条件,或具有委托记账节点101将交易信息上链或查询的条件,但仍然委托某一服务商来上链或查询的情形。
服务商代替一些单位进行委托交易信息上链和查询,其查询的私钥可能就不仅仅是自己的私钥,有可能是其受托单位节点的私钥。因此,在为其颁发数字证书时就将服务商节点拥有的权限信息记录并保存。当服务商节点代替单位节点查询私钥时,所述私钥查询请求包括所述服务商节点的节点标识、和所述服务商节点要查询的密钥所属的节点的标识,所述认证模块TPKI_ca根据存储的所述权限信息,确定所述服务商节点要查询的密钥所属的节点的标识是否是所述服务器节点所服务的单位或服务器节点的标识。如果是,则认证成功。反之,则认证失败。
具体地,当所述节点是服务商节点时,所述接收所述节点的公钥和注册信息包括:接收所述节点的公钥、注册信息、以及服务商节点所服务的单位的权限信息。例如,服务商节点A代替单位节点A1、A2、A3进行委托交易信息上链或查询,则权限信息包括A1、A2、A3。
该实施例中,在通过认证模块TPKI_ca,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证后,所述方法还包括:
如果认证成功,通过认证模块TPKI_ca,向认证策略模块TPKI_aus发送所述权限信息存储。具体地说,可以将所述节点的标识与所述权限信息对应存储。
在该实施例中,所述私钥查询请求包括所述服务商节点的节点标识、和所述服务商节点要查询的密钥所属的节点的标识,所述认证模块TPKI_ca根据认证策略模块TPKI_aus存储的所述权限信息,确定所述服务商节点要查询的密钥所属的节点的标识是所述服务器节点所服务的单位或服务器节点的标识时,认证成功。例如,认证策略模块TPKI_aus存储的服务商节点A的权限信息包括单位节点A1、A2、A3,如果服务商节点要查询的密钥是A1、A2、A3、A中的一个或多个节点的私钥时,认证成功,可以为其返回私钥。
该实施例的好处在于,为服务商节点代替多个单位节点进行委托上链或查询的场景提供了私钥管理技术实现方面的支撑。
由于子区块链经常是特定于某种交易信息的数据区块的,例如一个子区块链记录供应链金融的交易信息的数据区块,另一个区块链记录电子发票的交易信息的数据区块,等等。一种类型的节点的交易类型也比较固定,因此需要记录的子区块链也比较固定。因此,在一个实施例中,可以根据节点的交易类型,自动为其设置子区块链的权限。例如,对于汽车制造企业,其经常需要供应链金融业务,但也实行了电子发票,因此,需要供应链金融的子区块链和电子发票的子区块链。
在该实施例中,所述区块链包括多个子区块链,所述注册信息包括所述节点的类型。所述为所述节点生成所述节点的公钥和私钥,包括:为所述节点生成所述节点的在不同的子区块链上的公钥和私钥。假设共有N条子区块链,可以为所述节点生成N个子区块链对应的N个公私钥对。
在步骤550中,通过认证模块TPKI_ca,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证之后,所述方法还包括:
如果认证成功,通过认证模块TPKI_ca,基于所述节点的类型生成特定于所述节点的类型的子区块链权限信息,存储在认证策略模块TPKI_aus,该子区块链权限信息包括针对不同业务类型允许查询的子区块链。
该特定于所述节点的类型的子区块链权限信息可以是按照节点的类型查找一个预先设置的节点的类型与子区块链权限信息对应关系表得到的。例如,该对应关系表中,汽车制造企业对应的子区块链权限信息是:针对供应链金融业务类型,允许查询的子区块链是子区块链2;针对电子发票业务类型,允许查询的子区块链是子区块链3。然后,将该子区块链权限信息存储在认证策略模块TPKI_aus。
该实施例中,所述私钥查询请求具有所述节点的类型和业务类型,所述数字证书查询请求也具有所述节点的类型和业务类型。所述认证模块TPKI_ca从认证策略模块TPKI_aus查询特定于所述节点的类型的子区块链权限信息,根据该子区块链权限信息以及该业务类型,确定允许查询的子区块链,将允许查询的子区块链放入数字证书认证成功的应答中,发送给所述私钥管理模块TPKI_pks。所述向所述节点发送所述节点的私钥,包括:向所述节点发送所述节点的在允许查询的子区块链上的私钥。
例如,所述节点的类型是汽车制造企业节点,业务类型是电子发票。认证模块TPKI_ca首先根据数字证书查询请求中的节点类型,即汽车制造企业节点,从认证策略模块TPKI_aus查询到其对应的子区块链权限信息,即,针对供应链金融业务类型,允许查询的子区块链是子区块链2;针对电子发票业务类型,允许查询的子区块链是子区块链3。然后,根据数字证书查询请求中的业务类型,即电子发票,确定允许查询的子区块链是子区块链3。将子区块链3放入数字证书认证成功的应答中,发送给所述私钥管理模块TPKI_pks。这时,私钥管理模块TPKI_pks就只向节点返回子区块链3上所述节点的私钥,不向所述节点返回其它子区块链上的私钥。
这种方式的优点是,在多子区块链的情况下,可以准确地为用户找到适应于所述节点的类型和要查询的业务类型的子区块链上的私钥,实现多子区块链情况下托管私钥的精细管理。
图14是对所述节点查询托管的私钥的一个详细交互流程图。节点Bers要查询私钥管理模块TPKI_pks为其托管的私钥,首先向为其托管私钥的私钥管理模块TPKI_pks发送查询私钥的请求。私钥管理模块TPKI_pks向认证模块TPKI_ca发送一个获取节点数字证书的请求。然后根据该请求,认证模块TPKI_ca验证该节点是否具有数字证书,以及该数字证书是否过期,是否被吊销等,如果这些验证都通过,则向私钥管理模块TPKI_pks发送数字证书认证成功的应答。私钥管理模块TPKI_pks然后会向节点Bers发送指示其发送会话密钥的请求。节点Bers生成第二随机会话密钥,并用私钥管理模块TPKI_pks的公钥加密该第二随机会话密钥。节点Bers向私钥管理模块TPKI_pks发送加密的第二随机会话密钥。私钥管理模块TPKI_pks在接收到加密的第二随机会话密钥后,首先用其所拥有的私钥管理模块TPKI_pks的私钥解密加密的第二随机会话密钥,得到第二随机会话密钥。然后,其会用第二随机会话密钥加密所述节点在之前所托管的私钥并向节点Bers发送。节点Bers在接收到加密信息后,由于该节点拥有第二随机会话密钥,所以可以用该第二随机会话密钥解密被用该第二随机会话密钥加密的私钥,得到其之前向私钥管理模块(TPKI_pks)托管私钥。最后阶段Bers可以向私钥管理模块TPKI_pks返回成功接收到托管的私钥的确认消息。
在一个实施例中,所述注册信息包括所述节点的标识。所述数字证书颁发中心包括认证数据库TPKI_cadb,如图15所示。认证数据库TPKI_cadb是用于存储颁发的数字证书的数据库。
在通过认证模块TPKI_ca,生成所述节点的数字证书之后,所述方法还包括:步骤570,通过认证模块TPKI_ca,将所述节点的标识和生成的数字证书相对应地存储在认证数据库TPKI_cadb中。
在该实施例中,所述私钥查询请求包括所述节点的标识,所述数字证书查询请求包括所述节点的标识,以便所述认证模块TPKI_ca根据在认证数据库TPKI_cadb中是否有与所述标识对应存储的数字证书,确定是否认证成功。也就是说,在认证模块TPKI_ca接收到数字证书查询请求,查询所述节点具有具有数字证书,已确定是否向所述私钥管理模块TPKI_pks发送数字证书认证成功的应答时,是按照数字证书查询请求中所述节点的标识,在认证数据库TPKI_cadb中查找对应的数字证书的。
图16示出了根据本公开一个实施例的数字证书颁发中心的详细模块图。如图16所示,除了前面介绍过的公私钥生成模块TPKI_sdk、认证模块TPKI_ca、认证策略模块TPKI_aus、私钥管理模块TPKI_pks、认证数据库TPKI_cadb之外,该实施例中,数字证书颁发中心还包括注册模块TPKI_ra。注册模块TPKI_ra是向认证模块TPKI_ca传递从所述节点Bers接到的公钥和注册信息,并向节点Bers返回生成的数字证书的模块,是节点Bers和认证模块TPKI_ca的中介模块。即,步骤530包括:接收由注册模块TPKI_ra转发的所述节点的公钥和注册信息。步骤560中将数字证书发送给所述节点包括:将数字证书经由注册模块TPKI_ra发送给所述节点。
根据本公开的一个实施例,如图6所示,还提供了一种数字证书颁发中心,包括:
公私钥生成模块TPKI_sdk,用于响应于来自区块链网络中的节点的公私钥请求,为所述节点生成所述节点的公钥和私钥并发送到所述节点;
认证策略模块TPKI_aus,用于存储与区块链网络中的各节点对应的注册信息认证策略;
认证模块TPKI_ca,用于接收所述节点的公钥和注册信息,获取来自于认证策略模块TPKI_aus的与所述节点对应的注册信息认证策略,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证,如果认证成功,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块TPKI_ca的私钥对所述明文信息形成的签名,以便所述节点用认证模块TPKI_ca的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
在一个实施例中,如图8所示,所述数字证书颁发中心还包括:私钥管理模块TPKI_pks,用于接收由所述节点发送的私钥并保存。
在一个实施例中,所述接收由所述节点发送的私钥,包括:
接收所述节点利用私钥管理模块TPKI_pks的公钥加密的第一随机会话密钥;
利用私钥管理模块TPKI_pks的私钥解密加密的第一随机会话密钥,得到所述第一随机会话密钥;
接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥;
利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥,得到所述节点的私钥。
在一个实施例中,所述认证模块TPKI_ca还用于:
接收来自所述节点的私钥管理模块TPKI_pks数字证书获取请求;
向所述节点发送所述私钥管理模块TPKI_pks的数字证书,所述数字证书包括用认证模块TPKI_ca的私钥进行的签名,以便所述节点接收到所述数字证书后,用认证模块TPKI_ca的公钥进行验证。
在一个实施例中,所述私钥管理模块TPKI_pks还用于:
接收所述节点的私钥查询请求;
向认证模块TPKI_ca发送所述节点的数字证书查询请求;
如果接收到数字证书认证成功的应答,向所述节点发送所述节点的私钥。
在一个实施例中,所述向所述节点发送所述节点的私钥,包括:
接收所述节点利用私钥管理模块TPKI_pks的公钥加密的第二随机会话密钥;
利用私钥管理模块TPKI_pks的私钥解密加密的第二随机会话密钥,得到所述第二随机会话密钥;
查询所述节点的私钥;
用所述第二随机会话密钥加密所述节点的私钥并发送到所述节点,以便所述节点利用所述第二随机会话密钥解密加密的所述节点的私钥,得到所述私钥。
在一个实施例中,所述注册信息包括所述节点的标识。如图16所示,所述数字证书颁发中心包括认证数据库TPKI_cadb,用于将所述节点的标识和生成的数字证书相对应地存储;所述私钥查询请求包括所述节点的标识,所述数字证书查询请求包括所述节点的标识,以便所述认证模块TPKI_ca根据在认证数据库TPKI_cadb中是否有与所述标识对应存储的数字证书,确定是否认证成功。
在一个实施例中,所述节点包括单位节点和服务商节点;
当所述节点是服务商节点时,所述接收所述节点的公钥和注册信息包括:接收所述节点的公钥、注册信息、以及服务商节点所服务的单位的权限信息;
所述认证模块TPKI_ca还用于:如果认证成功,向认证策略模块TPKI_aus发送所述权限信息存储;
所述私钥查询请求包括所述服务商节点的节点标识、和所述服务商节点要查询的密钥所属的节点的标识;所述认证模块TPKI_ca还用于:根据认证策略模块TPKI_aus存储的所述权限信息,确定所述服务商节点要查询的密钥所属的节点的标识是所述服务器节点所服务的单位或所述服务器节点的标识时,认证成功。
在一个实施例中,所述与所述节点对应的注册信息认证策略包括特定于所述节点类型的注册信息认证策略;所述注册信息中含有所述节点类型;所述获取来自于认证策略模块TPKI_aus的与所述节点对应的注册信息认证策略包括:获取来自于认证策略模块TPKI_aus的特定于所述节点类型的注册信息认证策略。
在一个实施例中,所述区块链包括多个子区块链;所述为所述节点生成所述节点的公钥和私钥包括为所述节点生成所述节点的要注册的子区块链上的公钥和私钥;所述注册信息包括要注册的子区块链;所述获取来自于认证策略模块TPKI_aus的与所述节点对应的注册信息认证策略,包括:获取来自于认证策略模块TPKI_aus的与所述节点对应的各子区块链注册信息认证策略;所述基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证,包括:基于与所述节点对应的各子区块链注册信息认证策略,为所述注册信息进行在要注册的子区块链上的认证;所述明文信息包括认证成功的子区块链上的公钥。
在一个实施例中,所述私钥查询请求包括要查询的私钥所属的子区块链,所述节点的数字证书查询请求包括要查询的私钥所属的子区块链,使得所述认证模块TPKI_ca根据要查询的私钥所属的子区块链是否是所述数字证书的明文信息中含有的认证成功的公钥对应的子区块链,确定是否发送数字证书认证成功的应答。
在一个实施例中,所述区块链包括多个子区块链;所述注册信息包括所述节点的类型;所述为所述节点生成所述节点的公钥和私钥,包括:为所述节点生成所述节点的在不同的子区块链上的公钥和私钥;认证模块TPKI_ca还用于:在基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证之后,如果认证成功,基于所述节点的类型生成特定于所述节点的类型的子区块链权限信息,存储在认证策略模块TPKI_aus,该子区块链权限信息包括针对不同业务类型允许查询的子区块链;所述私钥查询请求具有所述节点的类型和业务类型;所述数字证书查询请求具有所述节点的类型和业务类型;所述认证模块TPKI_ca从认证策略模块TPKI_aus查询特定于所述节点的类型的子区块链权限信息,根据该子区块链权限信息以及该业务类型,确定允许查询的子区块链,将允许查询的子区块链放入数字证书认证成功的应答中,发送给所述私钥管理模块TPKI_pks。所述向所述节点发送所述节点的私钥,包括:向所述节点发送所述节点的在允许查询的子区块链上的私钥。
在一个实施例中,私钥管理模块TPKI_pks中保存的私钥采用加密方式保存,加密所用的密码硬编码在私钥管理模块TPKI_pks中。
根据本公开实施例的为区块链网络中的节点发放数字证书的方法可以由图18的数字证书颁发中心103实现。下面参照图18来描述根据本公开实施例的数字证书颁发中心103。图18显示的数字证书颁发中心103仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图18所示,数字证书颁发中心103以通用计算设备的形式表现。数字证书颁发中心103的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述示例性方法的描述部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图5中所示的各个步骤。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
数字证书颁发中心103也可以与一个或多个外部设备900(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该记账节点21交互的设备通信,和/或与使得该数字证书颁发中心103能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,数字证书颁发中心103还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与数字证书颁发中心103的其它模块通信。应当明白,尽管图中未示出,可以结合数字证书颁发中心103使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述方法实施例部分描述的方法。
根据本公开的一个实施例,还提供了一种用于实现上述方法实施例中的方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (15)

1.一种为区块链网络中的节点发放数字证书的方法,其特征在于,所述方法由数字证书颁发中心执行,所述数字证书颁发中心包括公私钥生成模块(TPKI_sdk)、认证模块(TPKI_ca)和认证策略模块(TPKI_aus),所述方法包括:
响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块(TPKI_sdk),为所述节点生成所述节点的公钥和私钥并发送到所述节点;
通过认证模块(TPKI_ca),接收所述节点的公钥和注册信息;
通过认证模块(TPKI_ca),获取来自于认证策略模块(TPKI_aus)的与所述节点对应的注册信息认证策略;
通过认证模块(TPKI_ca),基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证;
如果认证成功,通过认证模块(TPKI_ca),生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块(TPKI_ca)的私钥对所述明文信息形成的签名,以便所述节点用认证模块(TPKI_ca)的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
2.根据权利要求1所述的方法,其特征在于,所述数字证书颁发中心还包括私钥管理模块(TPKI_pks),
在响应于来自区块链网络中的节点的公私钥请求,通过公私钥生成模块(TPKI_sdk),为所述节点生成所述节点的公钥和私钥并发送到所述节点之后,所述方法还包括:
通过私钥管理模块(TPKI_pks),接收由所述节点发送的私钥并保存。
3.根据权利要求2所述的方法,其特征在于,所述接收由所述节点发送的私钥,包括:
接收所述节点利用私钥管理模块(TPKI_pks)的公钥加密的第一随机会话密钥;
利用私钥管理模块(TPKI_pks)的私钥解密加密的第一随机会话密钥,得到所述第一随机会话密钥;
接收所述节点利用所述第一随机会话密钥加密的所述节点的私钥;
利用解密得到的第一随机会话密钥,解密加密的所述节点的私钥,得到所述节点的私钥。
4.根据权利要求3所述的方法,其特征在于,在接收所述节点利用私钥管理模块(TPKI_pks)的公钥加密的第一随机会话密钥之前,所述方法还包括:
通过认证模块(TPKI_ca),接收来自所述节点的私钥管理模块(TPKI_pks)数字证书获取请求;
通过认证模块(TPKI_ca),向所述节点发送所述私钥管理模块(TPKI_pks)的数字证书,所述数字证书包括用认证模块(TPKI_ca)的私钥进行的签名,以便所述节点接收到所述数字证书后,用认证模块(TPKI_ca)的公钥进行验证。
5.根据权利要求2所述的方法,其特征在于,在通过私钥管理模块(TPKI_pks),接收由所述节点发送的私钥并保存之后,所述方法还包括:
通过所述私钥管理模块(TPKI_pks),接收所述节点的私钥查询请求;
通过所述私钥管理模块(TPKI_pks),向认证模块(TPKI_ca)发送所述节点的数字证书查询请求;
如果接收到数字证书认证成功的应答,通过所述私钥管理模块(TPKI_pks),向所述节点发送所述节点的私钥。
6.根据权利要求5所述的方法,其特征在于,所述向所述节点发送所述节点的私钥,包括:
接收所述节点利用私钥管理模块(TPKI_pks)的公钥加密的第二随机会话密钥;
利用私钥管理模块(TPKI_pks)的私钥解密加密的第二随机会话密钥,得到所述第二随机会话密钥;
查询所述节点的私钥;
用所述第二随机会话密钥加密所述节点的私钥并发送到所述节点,以便所述节点利用所述第二随机会话密钥解密加密的所述节点的私钥,得到所述私钥。
7.根据权利要求5所述的方法,其特征在于,所述注册信息包括所述节点的标识,所述数字证书颁发中心包括认证数据库(TPKI_cadb);
在通过认证模块(TPKI_ca),生成所述节点的数字证书之后,所述方法还包括:通过认证模块(TPKI_ca),将所述节点的标识和生成的数字证书相对应地存储在认证数据库(TPKI_cadb)中;
所述私钥查询请求包括所述节点的标识,所述数字证书查询请求包括所述节点的标识,以便所述认证模块(TPKI_ca)根据在认证数据库(TPKI-_cadb)中是否有与所述标识对应存储的数字证书,确定是否认证成功。
8.根据权利要求5所述的方法,其特征在于,所述节点包括单位节点和服务商节点;
当所述节点是服务商节点时,所述接收所述节点的公钥和注册信息包括:接收所述节点的公钥、注册信息、以及服务商节点所服务的单位的权限信息;
在通过认证模块(TPKI_ca),基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证后,所述方法还包括:如果认证成功,通过认证模块(TPKI_ca),向认证策略模块(TPKI_aus)发送所述权限信息存储;
所述私钥查询请求包括所述服务商节点的节点标识、和所述服务商节点要查询的密钥所属的节点的标识,所述认证模块(TPKI_ca)根据认证策略模块(TPKI_aus)存储的所述权限信息,确定所述服务商节点要查询的密钥所属的节点的标识是所述服务器节点所服务的单位或所述服务器节点的标识时,认证成功。
9.根据权利要求1所述的方法,其特征在于,所述与所述节点对应的注册信息认证策略包括特定于所述节点类型的注册信息认证策略;
所述注册信息中含有所述节点类型;
所述获取来自于认证策略模块(TPKI_aus)的与所述节点对应的注册信息认证策略包括:获取来自于认证策略模块(TPKI_aus)的特定于所述节点类型的注册信息认证策略。
10.根据权利要求5所述的方法,其特征在于,所述区块链包括多个子区块链;
所述为所述节点生成所述节点的公钥和私钥包括:为所述节点生成所述节点的要注册的子区块链上的公钥和私钥;
所述注册信息包括要注册的子区块链;
所述获取来自于认证策略模块(TPKI_aus)的与所述节点对应的注册信息认证策略,包括:获取来自于认证策略模块(TPKI_aus)的与所述节点对应的各子区块链注册信息认证策略;
所述基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证,包括:基于与所述节点对应的各子区块链注册信息认证策略,为所述注册信息进行在要注册的子区块链上的认证;
所述明文信息包括认证成功的子区块链上的公钥。
11.根据权利要求5所述的方法,其特征在于,所述区块链包括多个子区块链,所述注册信息包括所述节点的类型,
所述为所述节点生成所述节点的公钥和私钥,包括:为所述节点生成所述节点的在不同的子区块链上的公钥和私钥,
在通过认证模块(TPKI_ca),基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证之后,所述方法还包括:
如果认证成功,通过认证模块(TPKI_ca),基于所述节点的类型生成特定于所述节点的类型的子区块链权限信息,存储在认证策略模块(TPKI_aus),该子区块链权限信息包括针对不同业务类型允许查询的子区块链,
所述私钥查询请求具有所述节点的类型和业务类型,所述数字证书查询请求具有所述节点的类型和业务类型,所述认证模块(TPKI_ca)从认证策略模块(TPKI_aus)查询特定于所述节点的类型的子区块链权限信息,根据该子区块链权限信息以及该业务类型,确定允许查询的子区块链,将允许查询的子区块链放入数字证书认证成功的应答中,发送给所述私钥管理模块(TPKI_pks),
所述向所述节点发送所述节点的私钥,包括:向所述节点发送所述节点的在允许查询的子区块链上的私钥。
12.根据权利要求1所述的方法,其特征在于,私钥管理模块(TPKI_pks)中保存的私钥采用加密方式保存,加密所用的密码硬编码在私钥管理模块(TPKI_pks)中。
13.一种数字证书颁发中心,其特征在于,所述数字证书颁发中心包括:
公私钥生成模块(TPKI_sdk),用于响应于来自区块链网络中的节点的公私钥请求,为所述节点生成所述节点的公钥和私钥并发送到所述节点;
认证策略模块(TPKI_aus),用于存储与区块链网络中的各节点对应的注册信息认证策略;
认证模块(TPKI_ca),用于接收所述节点的公钥和注册信息,获取来自于认证策略模块(TPKI_aus)的与所述节点对应的注册信息认证策略,基于与所述节点对应的注册信息认证策略,为所述注册信息进行认证,如果认证成功,生成所述节点的数字证书并发送给所述节点,所述数字证书包含明文信息和用认证模块(TPKI_ca)的私钥对所述明文信息形成的签名,以便所述节点用认证模块(TPKI_ca)的公钥对所述签名进行验证,所述明文信息包括所述节点的公钥。
14.一种数字证书颁发中心,其特征在于,包括:
存储器,存储有计算机可读指令;
处理器,读取存储器存储的计算机可读指令,以执行权利要求1-12中的任一个所述的方法。
15.一种计算机程序介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-12中的任一个所述的方法。
CN201910020435.5A 2019-01-09 2019-01-09 发放数字证书的方法、数字证书颁发中心和介质 Active CN109617698B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201910020435.5A CN109617698B (zh) 2019-01-09 2019-01-09 发放数字证书的方法、数字证书颁发中心和介质
JP2021518941A JP7273148B2 (ja) 2019-01-09 2019-12-26 デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム
PCT/CN2019/128755 WO2020143470A1 (zh) 2019-01-09 2019-12-26 发放数字证书的方法、数字证书颁发中心和介质
US17/171,937 US11924358B2 (en) 2019-01-09 2021-02-09 Method for issuing digital certificate, digital certificate issuing center, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910020435.5A CN109617698B (zh) 2019-01-09 2019-01-09 发放数字证书的方法、数字证书颁发中心和介质

Publications (2)

Publication Number Publication Date
CN109617698A true CN109617698A (zh) 2019-04-12
CN109617698B CN109617698B (zh) 2021-08-03

Family

ID=66016529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910020435.5A Active CN109617698B (zh) 2019-01-09 2019-01-09 发放数字证书的方法、数字证书颁发中心和介质

Country Status (4)

Country Link
US (1) US11924358B2 (zh)
JP (1) JP7273148B2 (zh)
CN (1) CN109617698B (zh)
WO (1) WO2020143470A1 (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110378691A (zh) * 2019-06-18 2019-10-25 重庆金融资产交易所有限责任公司 基于部署中心的区块链部署方法、装置和计算机设备
CN110458558A (zh) * 2019-07-04 2019-11-15 重庆金融资产交易所有限责任公司 基于区块链的数据保密方法、装置和计算机设备
CN111062716A (zh) * 2019-11-29 2020-04-24 支付宝(杭州)信息技术有限公司 生成区块链签名数据的方法及装置、区块链交易发起系统
CN111092724A (zh) * 2019-12-25 2020-05-01 杭州溪塔科技有限公司 一种区块链系统数字证书签发方法、设备、系统及介质
CN111262834A (zh) * 2020-01-09 2020-06-09 中国信息通信研究院 物理实体的认证、可信解析方法、装置及系统
CN111327612A (zh) * 2020-02-19 2020-06-23 深圳奥比中光科技有限公司 一种用于认证深度测量装置的系统及方法
WO2020143470A1 (zh) * 2019-01-09 2020-07-16 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
CN111865988A (zh) * 2020-07-22 2020-10-30 山东华普信息科技有限公司 一种基于区块链的无证书密钥管理方法、系统及终端
CN111917734A (zh) * 2020-07-12 2020-11-10 中信银行股份有限公司 公钥的管理方法、装置、电子设备及计算机可读存储介质
CN112465575A (zh) * 2019-09-09 2021-03-09 辽宁政税科技有限公司 一种基于区块链技术的发票管理系统及方法
CN112533195A (zh) * 2019-09-19 2021-03-19 华为技术有限公司 一种设备认证方法及装置
CN112839041A (zh) * 2021-01-05 2021-05-25 国网浙江省电力有限公司嘉兴供电公司 基于区块链的电网身份认证方法、装置、介质和设备
CN112862487A (zh) * 2021-03-03 2021-05-28 青岛海链数字科技有限公司 一种数字证书认证方法、设备及存储介质
CN112861106A (zh) * 2021-02-26 2021-05-28 卓尔智联(武汉)研究院有限公司 数字证书处理方法及系统、电子设备及存储介质
CN112887254A (zh) * 2019-11-29 2021-06-01 中国电信股份有限公司 个人信息确认方法、装置、系统及存储介质
CN113869901A (zh) * 2021-12-02 2021-12-31 腾讯科技(深圳)有限公司 密钥生成方法、装置、计算机可读存储介质及计算机设备
CN113950801A (zh) * 2019-05-10 2022-01-18 区块链控股有限公司 用于使用区块链进行公钥管理的方法和装置
CN114157432A (zh) * 2021-11-25 2022-03-08 上海派拉软件股份有限公司 数字证书获取方法、装置、电子设备、系统和存储介质
CN114760070A (zh) * 2022-04-22 2022-07-15 深圳市永达电子信息股份有限公司 数字证书颁发方法、数字证书颁发中心和可读存储介质
CN115296838A (zh) * 2022-06-24 2022-11-04 北京中科金财科技股份有限公司 基于区块链的数据共享方法、系统及存储介质

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101849918B1 (ko) * 2016-10-26 2018-04-19 주식회사 코인플러그 Utxo 기반 프로토콜을 사용하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버
US20220321357A1 (en) * 2019-08-20 2022-10-06 Nippon Telegraph And Telephone Corporation User credential control system and user credential control method
US11489659B2 (en) * 2019-10-30 2022-11-01 Via Science, Inc. Multiple data source secure data processing
CN112818380A (zh) * 2020-07-10 2021-05-18 支付宝(杭州)信息技术有限公司 业务行为的回溯处理方法、装置、设备及系统
CN112131478A (zh) * 2020-09-28 2020-12-25 北京海益同展信息科技有限公司 交易检测方法及装置
CN112419021B (zh) * 2020-10-21 2023-11-03 西安电子科技大学 电子发票验证方法、系统、存储介质、计算机设备、终端
CN112907247B (zh) * 2021-03-18 2024-01-26 上海零数众合信息科技有限公司 一种区块链授权计算控制方法
CN113179165B (zh) * 2021-03-25 2022-08-05 广东工业大学 基于区块链的移动网络密钥管理及通信方法、装置和介质
CN113242133B (zh) * 2021-04-29 2022-12-13 中国人民银行数字货币研究所 一种数字证书管理方法和装置
EP4145762B1 (en) * 2021-09-06 2023-10-25 Axis AB Method and system for enabling secure processing of data using a processing application
CN114221759B (zh) * 2021-11-29 2024-04-12 成都卫士通信息产业股份有限公司 一种远程监控部署方法、装置、电子设备及存储介质
CN114244527B (zh) * 2021-12-14 2023-10-31 中国电力科学研究院有限公司 基于区块链的电力物联网设备身份认证方法及系统
CN114884702A (zh) * 2022-04-19 2022-08-09 海南大学 身份注册方法、身份认证方法及身份管理系统
CN114697048B (zh) * 2022-06-01 2022-08-26 天津市普迅电力信息技术有限公司 基于区块链的碳排放数据共享方法和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113326A (zh) * 2014-09-24 2017-08-29 甲骨文国际公司 基于规则的设备注册
CN108369697A (zh) * 2015-10-16 2018-08-03 科因普拉格株式会社 基于区块链的认可证书签发系统和方法以及基于区块链的认可证书认证系统和方法
CN108390872A (zh) * 2018-02-09 2018-08-10 北京京东尚科信息技术有限公司 证书管理方法、装置、介质及电子设备
CN108712429A (zh) * 2018-05-24 2018-10-26 西安电子科技大学 基于区块链云外包计算数据的隐私保护方法
CN108900507A (zh) * 2018-06-29 2018-11-27 全链通有限公司 区块链实名认证方法和系统
US20180374091A1 (en) * 2017-03-31 2018-12-27 Vijay K. Madisetti Method and System for Blockchain-Based Combined Identity, Ownership, Integrity and Custody Management

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615350B1 (en) * 1998-03-23 2003-09-02 Novell, Inc. Module authentication and binding library extensions
CN103825733A (zh) * 2014-02-28 2014-05-28 华为技术有限公司 基于组合公钥密码体制的通信方法、装置及系统
EP3304405A4 (en) * 2015-06-02 2019-01-09 K2View Ltd. SYSTEM AND METHOD FOR MANAGING A CLASSIFIED DATABASE
US10771451B2 (en) * 2016-09-13 2020-09-08 Queralt, Inc. Mobile authentication and registration for digital certificates
GB2557577A (en) 2016-10-21 2018-06-27 Cygnetise Ltd Methods and apparatus for recording a change of authorisation state of one or more authorisation agents
US10872155B2 (en) 2016-11-16 2020-12-22 Samsung Electronics Co., Ltd. Computing system for managing firmware and firmware managing method thereof
US11196573B2 (en) * 2017-03-06 2021-12-07 Nokia Technologies Oy Secure de-centralized domain name system
JP6635970B2 (ja) 2017-03-31 2020-01-29 セコム株式会社 通信装置
CN109150539A (zh) * 2018-07-24 2019-01-04 深圳前海益链网络科技有限公司 一种基于区块链的分布式ca认证系统、方法及装置
CN109003083A (zh) * 2018-07-27 2018-12-14 山东渔翁信息技术股份有限公司 一种基于区块链的ca认证方法、装置及电子设备
CN109617698B (zh) * 2019-01-09 2021-08-03 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
CN110046996B (zh) * 2019-01-18 2020-09-15 阿里巴巴集团控股有限公司 数据处理方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113326A (zh) * 2014-09-24 2017-08-29 甲骨文国际公司 基于规则的设备注册
CN108369697A (zh) * 2015-10-16 2018-08-03 科因普拉格株式会社 基于区块链的认可证书签发系统和方法以及基于区块链的认可证书认证系统和方法
US20180374091A1 (en) * 2017-03-31 2018-12-27 Vijay K. Madisetti Method and System for Blockchain-Based Combined Identity, Ownership, Integrity and Custody Management
CN108390872A (zh) * 2018-02-09 2018-08-10 北京京东尚科信息技术有限公司 证书管理方法、装置、介质及电子设备
CN108712429A (zh) * 2018-05-24 2018-10-26 西安电子科技大学 基于区块链云外包计算数据的隐私保护方法
CN108900507A (zh) * 2018-06-29 2018-11-27 全链通有限公司 区块链实名认证方法和系统

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020143470A1 (zh) * 2019-01-09 2020-07-16 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
US11924358B2 (en) 2019-01-09 2024-03-05 Tencent Technology (Shenzhen) Company Limited Method for issuing digital certificate, digital certificate issuing center, and medium
CN113950801A (zh) * 2019-05-10 2022-01-18 区块链控股有限公司 用于使用区块链进行公钥管理的方法和装置
CN110378691A (zh) * 2019-06-18 2019-10-25 重庆金融资产交易所有限责任公司 基于部署中心的区块链部署方法、装置和计算机设备
CN110458558A (zh) * 2019-07-04 2019-11-15 重庆金融资产交易所有限责任公司 基于区块链的数据保密方法、装置和计算机设备
CN112465575A (zh) * 2019-09-09 2021-03-09 辽宁政税科技有限公司 一种基于区块链技术的发票管理系统及方法
US11392685B2 (en) 2019-09-19 2022-07-19 Huawei Technologies Co., Ltd. Device authentication method and apparatus
CN112533195B (zh) * 2019-09-19 2023-03-10 华为技术有限公司 一种设备认证方法及装置
CN112533195A (zh) * 2019-09-19 2021-03-19 华为技术有限公司 一种设备认证方法及装置
CN111062716B (zh) * 2019-11-29 2021-06-22 支付宝(杭州)信息技术有限公司 生成区块链签名数据的方法及装置、区块链交易发起系统
CN111062716A (zh) * 2019-11-29 2020-04-24 支付宝(杭州)信息技术有限公司 生成区块链签名数据的方法及装置、区块链交易发起系统
CN112887254A (zh) * 2019-11-29 2021-06-01 中国电信股份有限公司 个人信息确认方法、装置、系统及存储介质
CN111092724A (zh) * 2019-12-25 2020-05-01 杭州溪塔科技有限公司 一种区块链系统数字证书签发方法、设备、系统及介质
CN111262834B (zh) * 2020-01-09 2022-03-29 中国信息通信研究院 物理实体的认证、可信解析方法、装置及系统
CN111262834A (zh) * 2020-01-09 2020-06-09 中国信息通信研究院 物理实体的认证、可信解析方法、装置及系统
CN111327612B (zh) * 2020-02-19 2022-05-24 奥比中光科技集团股份有限公司 一种用于认证深度测量装置的系统及方法
CN111327612A (zh) * 2020-02-19 2020-06-23 深圳奥比中光科技有限公司 一种用于认证深度测量装置的系统及方法
CN111917734A (zh) * 2020-07-12 2020-11-10 中信银行股份有限公司 公钥的管理方法、装置、电子设备及计算机可读存储介质
CN111917734B (zh) * 2020-07-12 2023-03-10 中信银行股份有限公司 公钥的管理方法、装置、电子设备及计算机可读存储介质
CN111865988A (zh) * 2020-07-22 2020-10-30 山东华普信息科技有限公司 一种基于区块链的无证书密钥管理方法、系统及终端
CN112839041A (zh) * 2021-01-05 2021-05-25 国网浙江省电力有限公司嘉兴供电公司 基于区块链的电网身份认证方法、装置、介质和设备
CN112861106A (zh) * 2021-02-26 2021-05-28 卓尔智联(武汉)研究院有限公司 数字证书处理方法及系统、电子设备及存储介质
CN112862487A (zh) * 2021-03-03 2021-05-28 青岛海链数字科技有限公司 一种数字证书认证方法、设备及存储介质
CN114157432A (zh) * 2021-11-25 2022-03-08 上海派拉软件股份有限公司 数字证书获取方法、装置、电子设备、系统和存储介质
CN113869901A (zh) * 2021-12-02 2021-12-31 腾讯科技(深圳)有限公司 密钥生成方法、装置、计算机可读存储介质及计算机设备
CN114760070A (zh) * 2022-04-22 2022-07-15 深圳市永达电子信息股份有限公司 数字证书颁发方法、数字证书颁发中心和可读存储介质
CN115296838A (zh) * 2022-06-24 2022-11-04 北京中科金财科技股份有限公司 基于区块链的数据共享方法、系统及存储介质
CN115296838B (zh) * 2022-06-24 2023-09-26 北京中科金财科技股份有限公司 基于区块链的数据共享方法、系统及存储介质

Also Published As

Publication number Publication date
CN109617698B (zh) 2021-08-03
US11924358B2 (en) 2024-03-05
JP7273148B2 (ja) 2023-05-12
JP2022504420A (ja) 2022-01-13
US20210167972A1 (en) 2021-06-03
WO2020143470A1 (zh) 2020-07-16

Similar Documents

Publication Publication Date Title
CN109617698A (zh) 发放数字证书的方法、数字证书颁发中心和介质
AU2021206913B2 (en) Systems and methods for distributed data sharing with asynchronous third-party attestation
US10567370B2 (en) Certificate authority
US9397839B2 (en) Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (IGCP/PKI)
US8843415B2 (en) Secure software service systems and methods
US20070271618A1 (en) Securing access to a service data object
CN109450843B (zh) 一种基于区块链的ssl证书管理方法及系统
US20100154040A1 (en) Method, apparatus and system for distributed delegation and verification
CN108696360A (zh) 一种基于cpk密钥的ca证书发放方法及系统
CN108696348A (zh) 一种实现ca互信的方法、装置、系统和电子设备
CN103490881A (zh) 认证服务系统、用户认证方法、认证信息处理方法及系统
KR102280061B1 (ko) 블록체인 기반의 did를 이용한 법인 관련 증명서 발급 시스템 및 방법
CN109981287A (zh) 一种代码签名方法及其存储介质
CN114666168A (zh) 去中心化身份凭证验证方法、装置,以及,电子设备
JP2001134534A (ja) 認証代行方法、認証代行サービスシステム、認証代行サーバ装置及びクライアント装置
KR20090017839A (ko) 모바일 단말 이용한 전자서명 무선공인인증서비스 시스템및 제공방법
Kim et al. Can we create a cross-domain federated identity for the industrial Internet of Things without Google?
Komar Windows server 2008 PKI and Certificate security
JP6045018B2 (ja) 電子署名代行サーバ、電子署名代行システム及び電子署名代行方法
KR100603108B1 (ko) 신용정보를 포함한 공인인증서 발급 방법 및 이 방법에의해 발급된 공인인증서가 기록된 컴퓨터로 판독 가능한기록매체
Dogan et al. Distributed ledger-based authentication and authorization for Industrie 4.0 components
CN116796305A (zh) 一种数据中心访问方法、装置、设备及介质
CN114258006A (zh) 获取凭据的方法、装置及系统
KR20050101500A (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