A multi-domain certificate bidirectional authentication method and system based on a blockchain

By managing certificates for IoT devices through blockchain and the InterPlanetary File System, distributed identity authentication is achieved, solving the single point of failure and data leakage problems of centralized management in IoT, improving security and authentication efficiency, and simplifying cross-domain authentication processes.

CN116614259BActive Publication Date: 2026-01-02NANJING UNIV OF POSTS & TELECOMM
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310465083.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-27
Publication Date
2026-01-02
Estimated Expiration
2043-04-27

AI Technical Summary

Technical Problem

Traditional IoT identity authentication systems suffer from single-point-of-failure risks and data leakage problems due to centralized management, and the authentication mechanisms of different domains are incompatible, affecting the security and compatibility of devices and applications.

Method used

A blockchain-based multi-domain certificate two-way authentication method is adopted. Certificates are issued by a central node CA and stored on the blockchain. The interplanetary file system is used to manage the certificates. Edge nodes and terminal devices perform two-way authentication, reducing the role of centralization and realizing distributed identity authentication.

Benefits of technology

It improves the security and authentication efficiency of IoT devices, simplifies cross-domain authentication processes, enhances user experience, and reduces the centralization risk of central nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116614259B_ABST
    Figure CN116614259B_ABST
Patent Text Reader

Abstract

The application discloses a kind of multi-domain certificate two-way authentication method and system based on block chain in the field of information security, comprising: in response to the registration information sent by the system network architecture received when new node;Registration message is verified, and the certificate corresponding to new node is generated after verification;According to the certificate, the hash value of the certificate of new node is calculated, and the hash value of the certificate of new node is stored to block chain;The certificate of the new node is sent to the interstellar file system, and the corresponding CID is generated according to the certificate of the new node, and is sent to the center node CA;Registration success message is generated based on CID and replied to the new node;In response to cross-domain or same-domain interaction between edge node EN and terminal equipment UE to obtain service, two-way authentication is carried out between edge node EN and terminal equipment UE;Weaken the central role of center node CA in identity authentication, distributed identity authentication is realized.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of information security, and particularly relates to a multi-domain certificate bidirectional authentication method and system. BACKGROUND

[0002] The Internet of Things refers to connecting any object with a network according to an agreed protocol through information sensing equipment, and the object exchanges and communicates information through an information transmission medium to realize intelligent identification, positioning, tracking, supervision and other functions. With the development of the Internet of Things, the types and quantities of devices and applications in the Internet of Things are increasing, and the complexity of the system leads to more and more serious security risks of the Internet of Things, so the identity authentication of the Internet of Things devices becomes necessary. The traditional Internet of Things identity authentication device or application needs to be registered in a data center first to obtain a certificate, and relies on the certificate to identify the identity in the Internet of Things. This identity authentication method needs one or more data centers. The biggest problem of this centralized management is that once the data center is attacked or hijacked, the identity information of the device and the application will be disclosed, which will seriously affect the security of the device and the application in the Internet of Things.

[0003] Multi-domain authentication refers to that in different network domains, the certificate authority of each domain issues the certificate of the domain, and the user holding the certificate can obtain network services after identity authentication in the domain, and can access the network of other domains through cross-domain authentication. The current multi-domain authentication mainly completes identity authentication through the certificate authority, and the main problems are: 1. Security problem, because the identity authentication is completed by relying on the certificate authority, the centralization of the authentication system is serious, and problems such as single point failure or hacker attack and user information theft may occur; 2. Compatibility problem, the authentication mechanisms of different domains may be different, which needs additional development and configuration. Therefore, a trusted distributed multi-domain authentication needs to be designed to solve the identity authentication problem in the Internet of Things. SUMMARY

[0004] The application provides a multi-domain certificate bidirectional authentication method and system based on a block chain, solves the single point failure risk in the identity authentication management of the traditional centralized center node CA and the problem of private data leakage when suffering from data attack or hijacking, weakens the centralized role of the center node CA in the identity authentication, and realizes distributed identity authentication.

[0005] To achieve the above purpose, the technical scheme adopted by the application is:

[0006] The first aspect of the application provides a multi-domain certificate bidirectional authentication method based on a block chain, comprising:

[0007] In response to the system network architecture receiving the registration information sent by the new node; verifying the registration message, and generating a certificate corresponding to the new node after verification; the system network architecture includes a center node CA, an edge node EN and a terminal device UE;

[0008] According to the certificate, the hash value of the certificate of the new node is calculated, the hash value of the certificate of the new node is stored to the block chain; the certificate of the new node is sent to the interstellar file system, the corresponding CID is generated according to the certificate of the new node, and is sent to the center node CA; based on the CID, a registration success message is generated and replied to the new node; the new node becomes an edge node EN or a terminal device UE in the system network architecture;

[0009] Obtain the invalid certificate of the edge node EN and the terminal device UE, generate the certificate revocation list CRL by the center node CA, and send the certificate revocation list CRL to the interstellar file system;

[0010] In response to the cross-domain or same-domain interaction between the edge node EN and the terminal device UE for obtaining services, bidirectional authentication is performed between the edge node EN and the terminal device UE.

[0011] Preferably, the method for the new node to send the registration information comprises:

[0012] Generate a key pair of the new node using an elliptic curve cipher; the key pair of the new node includes a public key PKUE / EN of the new node and a private key SKUE / EN of the new node;

[0013] Generate a registration message using the private key SKUE / EN of the new node and the public key PKUE / EN of the center node CA, and send the registration message to the center node CA of the system network architecture;

[0014] The expression formula of the registration message is:

[0015] req1=Sig SK(UE / EN) {E PK(CA) (ID UE / EN )}

[0016] In the formula, ID UE / EN represents the identity information of the new node; E PK(CA) (ID UE / EN ) represents a message encrypted using the public key PK UE / EN of the center node CA to the identity information of the new node; req1 represents the registration message; Sig SK(UE / EN) {E PK(CA) (ID UE / EN )} represents the use of the private key SK UE / EN of the new node to E PK(CA)(ID UE / EN The message after being digitally signed.

[0017] Preferably, the method for verifying the registration message includes: first verifying whether the identity information of the newly added node is valid; if the identity information is invalid, an error message is output; if the identity information of the newly added node is valid, the digital signature is verified; if the digital signature is invalid, an error message is output; if the digital signature is valid, the registration message verification is successful.

[0018] Preferably, a registration success message is generated based on the CID, expressed by the following formula:

[0019] res re =[Cert UE / EN Sig SK(CA) {E PK(UE / EN) (CID)}]

[0020] In the formula, Cert UE / EN This represents the certificate for a newly added node; E PK(UE / EN) (CID) represents the message encrypted using the public key of the newly added node; Sig SK(CA) {E PK(UE / EN) (CID) indicates that the private key of the central node CA is used to pair E. PK(UE / EN) The message is signed by (CID).

[0021] Preferably, when responding to intra-domain interaction between the edge node EN and the terminal device UE to obtain services, the method for performing two-way authentication between the edge node EN and the terminal device UE includes:

[0022] When the edge node EN and the terminal device UE are in the same domain network, the edge node EN and the terminal device UE shall obtain and verify the certificate of the edge node EN.

[0023] The digital signature in the certificate of the edge node EN is verified using the public key of the edge node EN. If the verification is invalid, the connection between the edge node EN and the terminal device UE is disconnected; otherwise, the hash value H(Certificate) corresponding to the certificate of the edge node EN is calculated. EN Using the hash value H(Cert) EN Query the certificate of edge node EN on the blockchain;

[0024] If the certificate of edge node EN is successfully queried on the blockchain, the Certificate Revocation List (CRL) is used to check whether the certificate of edge node EN is valid; if the certificate of edge node EN is valid, an identity authentication request message is sent to edge node EN.

[0025] The expression formula for the identity authentication request message is:

[0026] req2 = [Cert UE , Sig SK(UE) (M2)]

[0027] In the formula, M2 represents a random number; Sig UE (SK(UE))(M2) represents a message that is digitally signed using a private key of a terminal device UE on a random number M2; Cert UE represents a certificate of the terminal device UE; and req2 represents an identity authentication request message initiated by the terminal device UE to an edge node EN.

[0028] A specific process for authenticating the identity authentication request message of the terminal device UE is as follows:

[0029] The digital signature in the certificate of the terminal device UE is verified using a public key of the terminal device UE, and if the verification is invalid, the connection between the edge node EN and the terminal device UE is disconnected; otherwise, a hash value H(Cert UE ) corresponding to the certificate of the terminal device UE is calculated, and the certificate of the terminal device UE is queried on a blockchain using the hash value H(Cert EN ).

[0030] If the certificate of the terminal device UE is successfully queried on the blockchain, a CID of a certificate revocation list CRL is obtained from a CDP in the certificate of the terminal device UE, the certificate revocation list CRL is obtained from an interplanetary file system using the CID, and whether the certificate of the terminal device UE is in the certificate revocation list CRL is queried.

[0031] If the certificate of the terminal device UE is not in the certificate revocation list CRL, an authentication success message is replied to the terminal device UE, and bidirectional authentication between the edge node EN and the terminal device UE is completed.

[0032] Preferably, the method for obtaining and verifying the certificate of the edge node EN comprises:

[0033] A request message for obtaining the certificate is sent to the edge node EN, and in response to the edge node EN receiving the request message for obtaining the certificate, a connection message rep1 is replied to the terminal device UE, and the connection message rep1 is expressed by a formula as follows:

[0034] rep1 = [Cert EN , Sig SK(EN) (M1)]

[0035] In the formula, M1 represents a random number; Sig SK(EN) (M1) represents a message that is digitally signed using a private key of an edge node EN on a random number M1; and Cert EN represents a certificate of the edge node EN.

[0036] Preferably, when responding to cross-domain interaction between the edge node EN and the terminal device UE to obtain services, the method for performing two-way authentication between the edge node EN and the terminal device UE includes:

[0037] When a service is obtained through cross-domain interaction between an edge node EN and a terminal device UE, the terminal device UE is controlled to initiate a connection request req3 to the edge node EN; wherein the terminal device UE belongs to a domain A network and the edge node EN belongs to a domain B network.

[0038] The formula for the connection request req3 is:

[0039] req3 = Sig SK(UEA) {E PK(ENB) (certID A )}

[0040] In the formula, certID A Represented as the certificate serial number of the terminal device (UE) in the A domain network; E PK(ENB) (certID A This indicates that the public key of the edge node EN in the B domain network is used to pair certID. A The encrypted message; Sig SK(UEA) {E PK(ENB) (certID A )} represents the private key pair E of the terminal device UE in the A domain network. PK(ENB) (certID A The message after being digitally signed;

[0041] In response to the edge node EN in domain B receiving a connection request req3 sent by the terminal device UE in domain A; verify the connection request req3; if the verification of the connection request req3 fails, disconnect the connection between the edge node EN and the terminal device UE.

[0042] If the connection request req3 passes verification, the cross-domain access list (CAL) pre-stored within the B domain network is queried. The CAL is a list of certificate serial numbers stored by the edge node EN after successful cross-domain authentication of the terminal device UE. If the certificate serial number of the terminal device UE is in the CAL and valid, the terminal device UE can directly access the B domain network. If the certificate serial number of the terminal device UE is not recorded in the CAL, cross-domain authentication is performed on the terminal device UE. After successful cross-domain authentication of the terminal device UE in the A domain network, its certificate serial number is saved to the CAL of the B domain network.

[0043] Preferably, the method for cross-domain authentication of the terminal device UE comprises:

[0044] The edge node EN in the B-domain network controls sending of a cross-domain identity authentication message rep2 to the terminal device UE in the A-domain network, and the expression formula is:

[0045] rep2=E PK(UEA) (N)

[0046] In the formula, N represents a random number; E PK(UEA) (N) represents a message encrypted by using the public key of the terminal device UE in the A-domain network on the random number;

[0047] In response to the terminal device UE in the A-domain network receiving the cross-domain identity authentication message rep2, the cross-domain identity authentication message rep2 is decrypted to obtain the random number N, and then a message req4 is replied to the edge node EN in the B-domain network, and the expression formula of the message req4 is:

[0048] req4=[Cert UEA , Sig SK(UEA )(N)]

[0049] In the formula, Cert UEA represents the certificate of the terminal device UE in the A-domain network; Sig SK(UEA) (N) represents a message digitally signed by using the private key of the terminal device UE in the A-domain network on the random number N;

[0050] In response to the edge node EN receiving the message req4, the data signature and the random number N in the message req4 are verified; if the data signature or the random number N in the message req4 fails to pass the verification, the cross-domain authentication request of the terminal device UE in the A-domain network is rejected;

[0051] If the data signature or the random number N in the message req4 passes the verification, a hash value H(Cert UEA ) is calculated on the certificate of the terminal device UE in the A-domain network;

[0052] According to the hash value H(Cert UEA ), the certificate of the terminal device UE in the A-domain network is queried on the block chain, and the terminal device UE in the A-domain network with a successful query is sent an authentication success result res.

[0053] The second aspect of the application provides an application system of a multi-domain certificate bidirectional authentication method based on a block chain, comprising:

[0054] The registration module is configured to, in response to the system network architecture receiving registration information sent by a new node, verify the registration information, and generate a certificate corresponding to the new node after verification; the system network architecture comprises a center node CA, an edge node EN and a terminal device UE;

[0055] The verification module is configured to calculate a hash value of the certificate of the new node according to the certificate, store the hash value of the certificate of the new node to a block chain, send the certificate of the new node to an interstellar file system, generate a corresponding CID according to the certificate of the new node, and send the CID to the center node CA; generate a registration success message based on the CID and reply to the new node; and the new node becomes an edge node EN or a terminal device UE in the system network architecture.

[0056] The bidirectional authentication module is configured to acquire invalid certificates in the edge node EN and the terminal device UE, generate a certificate revocation list CRL by the center node CA, and send the certificate revocation list CRL to the interstellar file system; and perform bidirectional authentication between the edge node EN and the terminal device UE in response to cross-domain or same-domain interaction between the edge node EN and the terminal device UE for obtaining services.

[0057] Preferably, the center node CA of each domain network is configured to receive a registration request of the edge node EN and the terminal device UE and return a registration response; the edge node EN and the terminal device UE can perform a hash value query operation on the block chain; the edge node EN is configured to authenticate the identity of the terminal device UE; and the edge node EN and the terminal device UE are configured with a key pair.

[0058] Preferably, the certificate comprises a certificate serial number, an issuer, a public key of a certificate user, a valid period and a certificate revocation list distribution point.

[0059] The third aspect of the present application provides a computer readable storage medium, which stores a computer program, and the program is executed by a processor to implement the steps of the multi-domain certificate bidirectional authentication method.

[0060] Compared with the prior art, the present application has the following advantages:

[0061] In the multi-domain network scenario, the present application solves the single point failure risk in the traditional centralized center node CA identity authentication management and the privacy data leakage problem when suffering from data attacks or hijacking, weakens the centralized role of the center node CA in identity authentication, and realizes distributed identity authentication, based on the mutual trust of the certificates issued by the center nodes CA in each domain network, from the perspective of the efficiency of communication between the edge node EN and the terminal device UE and the security of data exchange, and the distributed and tamper-proof characteristics of the interstellar file system.

[0062] The center node CA in the application is only used for issuing certificates and does not perform certificate management and participate in the authentication process; the center node CA of each domain is a blockchain node, and the identity authentication sensitive data is maintained together, the digital certificate hash value is chained, so that the center node CA does not need to sign the certificate when issuing the certificate, but the authenticity of the certificate can be ensured; the IPFS technology is used to store and manage the issued digital certificate, and in the identity authentication process, the two-way identity authentication between the edge node EN and the terminal device UE does not need to encrypt the certificates of both parties; therefore, when the terminal device UE accesses different network domains, the blockchain can realize cross-domain authentication; the application simplifies the certificate identity authentication process, improves the authentication efficiency, and the terminal device UE can conveniently access multi-domain services, and the user experience is improved. BRIEF DESCRIPTION OF DRAWINGS

[0063] Figure 1 is a structural diagram of a system network architecture provided by an embodiment of the application;

[0064] Figure 2 is a registration flowchart of a new node provided by an embodiment of the application;

[0065] Figure 3 is a flowchart of intra-domain interaction between an edge node EN and a terminal device UE provided by an embodiment of the application;

[0066] Figure 4 is a flowchart of cross-domain interaction between an edge node EN and a terminal device UE provided by an embodiment of the application. DETAILED DESCRIPTION

[0067] The application will be further described below with reference to the drawings. The following embodiments are only used to more clearly illustrate the technical solutions of the application, and cannot be used to limit the protection scope of the application.

[0068] Embodiment one

[0069] As shown in Figures 1 to 4 , a multi-domain certificate two-way authentication method based on a blockchain includes:

[0070] generating a key pair of a new node using an elliptic curve cipher; the key pair of the new node includes a public key PK UE / EN of the new node and a private key SK UE / EN of the new node;

[0071] generating a registration message using the private key SK UE / EN of the new node and a public key PK UE / EN of the center node CA, and sending the registration message to the center node CA of the system network architecture;

[0072] The expression formula of the registration message is:

[0073] req1 = Sig SK(UE / EN) {E PK(CA) (ID UE / EN )}

[0074] In the formula, ID UE / EN represents the identity information of the new node; E PK(CA) (ID UE / EN ) represents a message encrypted by using the public key PK UE / EN of the center node CA for the identity information of the new node; req1 represents a registration message; Sig SK(UE / EN) {E PK(CA) (ID UE / EN )} represents a message digitally signed by using the private key SK UE / EN of the new node for E PK(CA) (ID UE / EN ).

[0075] In response to the system network architecture receiving the registration information sent by the new node, first, verify whether the identity information of the new node is valid, if the identity information is invalid, output an error message, if the identity information of the new node is valid, continue to verify the digital signature; if the digital signature is invalid, output an error message, if the digital signature is valid, output a registration message verification pass; generate a certificate corresponding to the new node that passes the verification; the system network architecture includes a center node CA, an edge node EN and a terminal device UE;

[0076] According to the certificate, calculate the hash value of the certificate of the new node, store the hash value of the certificate of the new node to the block chain; send the certificate of the new node to the interstellar file system, generate a corresponding CID according to the certificate of the new node, and send it to the center node CA; use IPFS technology to store and manage the issued digital certificate, the center node CA is only used for issuing certificates and does not participate in the certificate management and authentication process; the two certificates do not need to be encrypted, which means that based on the hash collision resistance and the tamper resistance of IPFS, the authenticity of the certificate can be guaranteed without encrypting the certificate in the identity authentication process.

[0077] Generate a registration success message based on CID; the expression formula of the registration success message is:

[0078] res re = [Cert UE / EN , Sig SK(CA) {E PK(UE / EN) (CID)}]

[0079] In the formula, Cert UE / EN represents the certificate of the new node; E PK(UE / EN)(CID) represents a message encrypted using the public key of the new node; Sig SK(CA) {E PK(UE / EN) (CID) represents a message signed using the private key of the center node CA. PK(UE / EN) (CID).

[0080] reply to the new node with a registration success message; the new node becomes an edge node EN or a terminal device UE in the system network architecture;

[0081] Obtain the invalid certificate in the edge node EN and the terminal device UE, generate a certificate revocation list CRL by the center node CA, and send the certificate revocation list CRL to the interstellar file system;

[0082] In response to the same domain interaction between the edge node EN and the terminal device UE for obtaining services, that is, the edge node EN and the terminal device UE are in the same domain network, bidirectional authentication is performed between the edge node EN and the terminal device UE, and the specific process is as follows:

[0083] Send a request message for obtaining a certificate to the edge node EN; in response to the edge node EN receiving the request message for obtaining a certificate, reply to the terminal device UE with a connection message rep1, and the connection message rep1 is expressed by the formula:

[0084] rep1 = [Cert EN , Sig SK(EN) (M1)]

[0085] In the formula, M1 represents a random number; Sig SK(EN) (M1) represents a message digitally signed using the private key of the edge node EN; Cert EN represents the certificate of the edge node EN.

[0086] Verify the digital signature in the certificate of the edge node EN using the public key of the edge node EN, and if the verification is invalid, disconnect the connection between the edge node EN and the terminal device UE; otherwise, calculate the hash value H(Cert EN ) corresponding to the certificate of the edge node EN, and query the certificate of the edge node EN on the blockchain using the hash value H(Cert EN ).

[0087] If the certificate of the edge node EN is successfully queried on the blockchain, query whether the certificate of the edge node EN is valid using the certificate revocation list CRL; if the certificate of the edge node EN has been revoked, disconnect the connection between the edge node EN and the terminal device UE; if the certificate of the edge node EN is valid, initiate an identity authentication request message to the edge node EN;

[0088] The expression formula of the identity authentication request message is:

[0089] req2 = [Cert UE , Sig SK(UE) (M2)]

[0090] In the formula, M2 represents a random number; Sig SK(UE) (M2) represents a message that is digitally signed using a private key of a terminal device UE on the random number M2; Cert UE represents a certificate of the terminal device UE; and req2 represents an identity authentication request message initiated by the terminal device UE to an edge node EN.

[0091] The specific process of authenticating the identity authentication request message of the terminal device UE is as follows:

[0092] The digital signature in the certificate of the terminal device UE is verified using the public key of the terminal device UE, and if the verification is invalid, the connection between the edge node EN and the terminal device UE is disconnected; otherwise, the hash value H(Cert UE ) corresponding to the certificate of the terminal device UE is calculated, and the certificate of the terminal device UE is queried on the blockchain by using the hash value H(Cert UE ).

[0093] If the certificate of the terminal device UE is successfully queried on the blockchain, the CID of the certificate revocation list CRL is obtained through the CDP in the certificate of the terminal device UE, the certificate revocation list CRL is obtained from the Interplanetary File System by using the CID, and it is queried whether the certificate of the terminal device UE is in the certificate revocation list CRL; if the certificate of the terminal device UE has been revoked, the connection between the edge node EN and the terminal device UE is disconnected.

[0094] If the certificate of the terminal device UE is not in the certificate revocation list CRL, an authentication success message res au is returned to the terminal device UE, and the mutual authentication between the edge node EN and the terminal device UE is completed.

[0095] The expression formula of the authentication success message res au is as follows:

[0096] res au = Sig SK(EN) (success)

[0097] In the formula, Sig SK(EN) (success) represents a message that is digitally signed using a private key of the edge node EN on success.

[0098] When responding to cross-domain interaction between the edge node EN and the terminal device UE to obtain services, the methods for performing two-way authentication between the edge node EN and the terminal device UE include:

[0099] When a service is obtained through cross-domain interaction between an edge node EN and a terminal device UE, the terminal device UE is controlled to initiate a connection request req3 to the edge node EN; wherein the terminal device UE belongs to a domain A network and the edge node EN belongs to a domain B network.

[0100] The formula for the connection request req3 is:

[0101] req3 = Sig SK(UEA) {E PK(ENB) (certID A )}

[0102] In the formula, certID A Represented as the certificate serial number of the terminal device (UE) in the A domain network; E PK(ENB) (certID A This indicates that the public key of the edge node EN in the B domain network is used to pair certID. A The encrypted message; Sig SK(UEA) {E PK(ENB) (certID A )} represents the private key pair E of the terminal device UE in the A domain network. PK(ENB) (certID A The message after being digitally signed;

[0103] In response to the edge node EN in domain B receiving a connection request req3 sent by the terminal device UE in domain A; verify the connection request req3; if the verification of the connection request req3 fails, disconnect the connection between the edge node EN and the terminal device UE.

[0104] If the connection request req3 passes verification, the cross-domain access list (CAL) pre-stored within the B domain network is queried. The CAL is a list of certificate serial numbers stored by the edge node EN after successful cross-domain authentication of the terminal device UE. If the certificate serial number of the terminal device UE is in the CAL and valid, the terminal device UE can directly access the B domain network. If the certificate serial number of the terminal device UE is not recorded in the CAL, cross-domain authentication is performed on the terminal device UE. After successful cross-domain authentication of the terminal device UE in the A domain network, its certificate serial number is saved to the CAL of the B domain network.

[0105] The specific method for cross-domain authentication of the terminal device UE includes:

[0106] The control edge node EN in the B-domain network sends a cross-domain identity authentication message rep2 to the terminal device UE in the A-domain network, and the expression formula is:

[0107] rep2=E PK(UEA) (N)

[0108] In the formula, N represents a random number; E PK(UEA) (N) represents a message encrypted by using the public key of the terminal device UE in the A-domain network.

[0109] In response to the terminal device UE in the A-domain network receiving the cross-domain identity authentication message rep2; the cross-domain identity authentication message rep2 is decrypted to obtain the random number N, and then a message req4 is replied to the edge node EN in the B-domain network, and the expression formula of the message req4 is:

[0110] req4=[Cert UEA , Sig SK(UEA) (N)]

[0111] In the formula, Cert UEA represents the certificate of the terminal device UE in the A-domain network; Sig SK(UEA) (N) represents a message digitally signed by using the private key of the terminal device UE in the A-domain network.

[0112] In response to the edge node EN receiving the message req4; the data signature and the random number N in the message req4 are verified; if the data signature or the random number N in the message req4 fails the verification, the cross-domain authentication request of the terminal device UE in the A-domain network is rejected.

[0113] If the data signature or the random number N in the message req4 passes the verification, a hash value H(Cert UEA ) is calculated for the certificate of the terminal device UE in the A-domain network.

[0114] According to the hash value H(Cert UEA ), the certificate of the terminal device UE in the A-domain network is queried on the block chain, and the terminal device UE in the A-domain network that is successfully queried is sent an authentication success result res.

[0115] The expression formula of the authentication success result res is:

[0116] res=Sig SK(ENB) (success)

[0117] In the formula, Sig SK(ENB)(success) is represented as a message signed using a private key of an edge node EN in a B-domain network.

[0118] In the identity authentication process, the two-way identity authentication between the edge node EN and the terminal device UE does not need to encrypt the certificates of both parties; therefore, when the terminal device UE accesses different network domains, the blockchain can realize cross-domain authentication; the application simplifies the certificate identity authentication process, improves the authentication efficiency, and enables the terminal device UE to conveniently access multi-domain services, thereby improving the user experience.

[0119] Embodiment two

[0120] An application system of a multi-domain certificate two-way authentication method based on a blockchain, the system can be applied to the multi-domain certificate two-way authentication method described in embodiment one, and the application system comprises:

[0121] A registration module, configured to, in response to the system network architecture receiving registration information sent by a new node, verify the registration message, and generate a certificate corresponding to the new node after verification, wherein the certificate comprises a certificate serial number, a certificate issuer, a public key of a certificate user, a validity period, and a certificate revocation list distribution point (CDP); the certificate revocation list distribution point is a website, and by accessing the website, the updated certificate revocation list (the certificate revocation list is maintained by the central node CA) of the central node CA can be accessed; the CID of the latest certificate revocation list CRL is obtained through the certificate revocation list distribution point, and then the certificate revocation list CRL is queried in the interplanetary file system (IPFS).

[0122] In the system network architecture, all terminal devices UE and edge nodes EN have their own public and private key pairs, so as to perform identity authentication subsequently.

[0123] A verification module, configured to calculate the hash value of the new node according to the certificate, store the hash value of the new node to the blockchain, send the certificate of the new node to the interplanetary file system, generate a certificate revocation list CRL by the interplanetary file system, generate a corresponding CID according to the certificate of the new node, and send the CID to the central node CA; generate a registration success message based on the CID and reply to the new node; the new node becomes an edge node EN or a terminal device UE in the system network architecture.

[0124] A two-way authentication module, configured to obtain invalid certificates in the edge node EN and the terminal device UE, generate a certificate revocation list CRL by the central node CA and send the certificate revocation list CRL to the interplanetary file system; in response to the edge node EN and the terminal device UE performing cross-domain or same-domain interaction to obtain services, perform two-way authentication between the edge node EN and the terminal device UE.

[0125] AsFigure 1 As shown, the system network architecture includes three layers: a trust layer, an edge layer, and a device layer; the trust layer: composed of the center nodes of each domain network, the center nodes jointly maintain a blockchain network, the blockchain network stores the hash value of the certificate after the terminal device UE or edge node EN registers; the center nodes CA of each domain network are used to receive the registration request of the edge node EN and the terminal device UE and return the registration response; the edge layer: composed of edge nodes EN, mainly responsible for the identity authentication of the terminal device UE; each domain edge node EN saves a cross-domain access list for subsequent cross-domain authentication; the device layer: composed of terminal devices UE, capable of sensing and sending data; the edge node EN and the terminal device UE can query the hash value operation of the blockchain.

[0126] Embodiment three

[0127] A computer readable storage medium having stored thereon a computer program, which, when executed by a processor, implements the steps of the multi-domain certificate bidirectional authentication method of embodiment one.

[0128] Those skilled in the art will understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage, etc.) containing computer-usable program code.

[0129] The present application is described with reference to flowcharts and / or block diagrams according to the methods, devices (systems), and computer program products of the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus produce a device that implements the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in one or more flows and / or blocks Figure 1 The means for performing the functions specified in one or more flows and / or blocks.

[0130] These computer program instructions can also be stored in a computer readable storage medium that can direct the computer or other programmable data processing apparatus to work in a specific manner, so that the instructions stored in the computer readable storage medium produce a manufactured product including instruction means, which implements the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in one or more flows and / or blocks Figure 1the function specified in the one or more blocks.

[0131] These computer program instructions can also be loaded into computer or other programmable data processing devices, so that a series of operational steps are performed on the computer or other programmable data processing devices to generate computer-implemented processes, so that the instructions executed on the computer or other programmable data processing devices provide processes for implementing the flows Figure 1 the flow or flows and / or blocks Figure 1 the steps of the function specified in the one or more blocks.

[0132] The above description is only the preferred embodiment of the present application, it should be pointed out that for those skilled in the art, without departing from the technical principles of the present application, a number of improvements and modifications can be made, these improvements and modifications should also be considered as the protection scope of the present application.

Claims

1. A method for two-way authentication of multi-domain certificates based on blockchain, characterized in that, The method comprises the following steps: In response to the system network architecture receiving the registration information sent by the new node; Verifying the registration message, and generating the certificate corresponding to the new node after verification; The system network architecture comprises a center node CA, an edge node EN, and a terminal device UE; According to the certificate, the hash value of the certificate of the new node is calculated, and the hash value of the certificate of the new node is stored in the blockchain; The certificate of the new node is sent to the interstellar file system, the corresponding CID is generated according to the certificate of the new node, and the center node CA is sent; based on the CID, a registration success message is generated and replied to the new node; The new node becomes an edge node EN or a terminal device UE in the system network architecture; Obtain the invalid certificate of the edge node EN and the terminal device UE, generate the certificate revocation list CRL by the center node CA, and send the certificate revocation list CRL to the interstellar file system; In response to the same domain interaction between the edge node EN and the terminal device UE for obtaining service, bidirectional authentication is performed between the edge node EN and the terminal device UE; In response to the cross-domain interaction between the edge node EN and the terminal device UE for obtaining service, a method for bidirectional authentication between the edge node EN and the terminal device UE, comprising: In response to the cross-domain interaction between the edge node EN and the terminal device UE for obtaining service, the terminal device UE initiates a connection request req3 to the edge node EN; wherein the terminal device UE belongs to A domain network, and the edge node EN belongs to B domain network; The expression formula of the connection request req3 is: req3= Sig SK(UEA) {E PK(ENB) (certID A )} In the formula, certID A Represented as the certificate serial number of the terminal device (UE) in the A domain network; E PK(ENB) (certID A This indicates that the public key of the edge node EN in the B domain network is used to pair certID. A The encrypted message; Sig SK(UEA) {E PK(ENB) (certID A )} represents the private key pair E of the terminal device UE in the A domain network. PK(ENB) (certID A The message after being digitally signed; In response to the edge node EN in the B domain network receiving the connection request req3 sent by the terminal device UE in the A domain network; verifying the connection request req3, and disconnecting the connection between the edge node EN and the terminal device UE if the verification of the connection request req3 fails; If the verification of the connection request req3 is passed, the cross-domain access list CAL stored in the B domain network is queried, the cross-domain access list CAL is the certificate serial number list stored by the edge node EN after the terminal device UE successfully passes the cross-domain authentication; when the certificate of the terminal device UE is in the cross-domain access list CAL and is valid, the terminal device UE can directly access the B domain network; When the certificate of the terminal device UE is not recorded in the cross-domain access list CAL, the cross-domain authentication of the terminal device UE is performed; specifically, it comprises: controlling an edge node EN in the B-domain network to send a cross-domain identity authentication authentication message to a terminal device UE in the A-domain network The expression formula is: ; In the formula, N represents a random number; represents a message encrypted by using a public key of a terminal device UE in an A domain network. In response to the UE receiving a cross-domain authentication message in the A domain network Cross-domain authentication messages Decryption is performed to obtain a random number N, and then message req4 is replied to the edge node EN in the B domain network. The expression formula for message req4 is as follows: req4 = [Cert UEA , Sig SK(UEA) (N)] In the formula, Cert UEA represents a certificate of a terminal device UE in an A-domain network; Sig SK(UEA) (N) represents a message after a random number N is digitally signed using a private key of the terminal device UE in the A-domain network; In response to the edge node EN receiving the message req4; verifying the data signature and random number N in the message req4; if the data signature or random number N in the message req4 fails, the cross-domain authentication request of the terminal device UE in the A domain network is rejected; If the data signature or random number N in the message req4 is verified, a hash value H(Cert) of the certificate of the terminal device UE in the A-domain network is calculated UEA ); According to the hash value H(Cert UEA ) to query the certificate of the terminal device UE in the A-domain network on the blockchain, and sending an authentication success result res to the terminal device UE in the A-domain network whose query is successful; After the terminal device UE in the A domain network successfully passes the cross-domain authentication, the certificate serial number thereof is saved to the cross-domain access list CAL of the B domain network. 2.The multi-domain certificate bidirectional authentication method based on blockchain according to claim 1, characterized in that, The method for the new node to send registration information comprises: generating a key pair of the new node using an elliptic curve cryptography; the key pair of the new node comprises a public key of the new node and a private key of the new node and the private key of the new node ; A private key of the new node is used and a public key of the center node CA A registration message is generated and sent to the center node CA of the system network architecture The expression formula of the registration message is: ; In the formula, represents the identity information of the new node; represents the public key of the center node CA for use the message after the identity information of the new node is encrypted; represents a registration message; represents the private key of the new node for use the message after is digitally signed. 3.The multi-domain certificate bidirectional authentication method based on blockchain according to claim 2, characterized in that, The method for verifying the registration message comprises: firstly verifying whether the identity information of the new node is valid, outputting error information if the identity information is invalid, and continuing to verify the digital signature if the identity information of the new node is valid; outputting error information if the digital signature is invalid, and outputting that the registration message verification is passed if the digital signature is valid. 4.The method of claim 1, wherein, The registration success message is generated based on the CID, and the expression formula is: res re = [Cert UE / EN , Sig SK(CA) {E PK(UE / EN) (CID)}] In the formula, Cert UE / EN represents the certificate of the new node; E PK(UE / EN) (CID) represents a message encrypted using the public key of the new node for the CID; Sig SK(CA) {E PK(UE / EN) (CID) represents a message signed using the private key of the center node CA for E PK(UE / EN) (CID). 5.The multi-domain certificate bidirectional authentication method based on blockchain according to claim 2, characterized in that, In response to the same-domain interaction between the edge node EN and the terminal device UE for obtaining services, the method for performing bidirectional authentication between the edge node EN and the terminal device UE comprises: In response to the same-domain interaction between the edge node EN and the terminal device UE for obtaining services, the edge node EN and the terminal device UE are in the same domain network, the certificate of the edge node EN is obtained and verified; verifying a digital signature in a certificate of the edge node EN using a public key of the edge node EN, and disconnecting a connection between the edge node EN and the terminal device UE if the verification is invalid; otherwise, calculating a hash value H(Cert EN ) corresponding to the certificate of the edge node EN, and querying the certificate of the edge node EN on a blockchain using the hash value H(Cert EN ). If the certificate of the edge node EN is successfully queried on the blockchain, whether the certificate of the edge node EN is valid is queried by using a certificate revocation list CRL; if the certificate of the edge node EN is valid, an identity authentication request message is initiated to the edge node EN; The expression formula of the identity authentication request message is: ; In the formula, is represented as a random number; is represented as a message signed with a private key of a terminal device UE ; and is represented as a certificate of the terminal device UE; is represented as an identity authentication request message initiated by the terminal device UE to the edge node EN; The specific process of authenticating the identity authentication request message of the terminal device UE is: verify the digital signature in the certificate of the terminal device UE using a public key of the terminal device UE, and disconnect the connection between the edge node EN and the terminal device UE if the verification is invalid; otherwise, calculate a hash value H(Cert UE ) corresponding to the certificate of the terminal device UE, and query the certificate of the terminal device UE on a blockchain using the hash value H(Cert UE ). If the certificate of the terminal device UE is successfully queried on the blockchain, the CID of the certificate revocation list CRL is obtained through the CDP in the certificate of the terminal device UE, the certificate revocation list CRL is obtained from the Interplanetary File System by using the CID, and whether the certificate of the terminal device UE is in the certificate revocation list CRL is queried; If the certificate of the terminal device UE is not in the certificate revocation list CRL, an authentication success message is replied to the terminal device UE, and the bidirectional authentication between the edge node EN and the terminal device UE is completed.

6. The method of claim 5, wherein, The method for obtaining and verifying the certificate of the edge node EN comprises: A request message for obtaining the certificate is sent to the edge node EN; in response to the edge node EN receiving the request message for obtaining the certificate, a connection message rep1 is replied to the terminal device UE, and the expression formula of the connection message rep1 is: rep1= [Cert EN , Sig SK(EN) (M1)]; In the formula, M1 represents a random number; Sig SK(EN) (M1) represents a message that is digitally signed using a private key of the edge node EN for the random number M1; Cert EN represents a certificate of the edge node EN. 7.The application system of the method for two-way authentication of multi-domain certificates based on blockchain according to any one of claims 1 to 6, characterized in that, comprises: The registration module is configured to, in response to the system network architecture receiving the registration information sent by the new node; The registration message is verified, and the certificate corresponding to the new node is generated after the verification is passed; The system network architecture comprises a center node CA, an edge node EN, and a terminal device UE; The verification module is configured to calculate the hash value of the certificate of the new node according to the certificate, and store the hash value of the certificate of the new node to the blockchain; The certificate of the new node is sent to the Interplanetary File System, the corresponding CID is generated according to the certificate of the new node, and is sent to the center node CA; the registration success message is generated based on the CID and is replied to the new node; The new node becomes the edge node EN or the terminal device UE in the system network architecture; The bidirectional authentication module is configured to acquire invalid certificates in the edge node EN and the terminal device UE, generate a certificate revocation list CRL by the center node CA, and send the certificate revocation list CRL to the InterPlanetary File System; and perform bidirectional authentication between the edge node EN and the terminal device UE in response to cross-domain or same-domain interaction between the edge node EN and the terminal device UE for obtaining services. The bidirectional authentication module is configured to perform bidirectional authentication between the edge node EN and the terminal device UE in response to cross-domain interaction between the edge node EN and the terminal device UE for obtaining services. In response to cross-domain interaction between the edge node EN and the terminal device UE for obtaining services, the terminal device UE initiates a connection request req3 to the edge node EN; the terminal device UE belongs to an A-domain network, and the edge node EN belongs to a B-domain network. The connection request req3 is expressed by the following formula: req3 = Sig SK(UEA) {E PK(ENB) (certID A )}; In the formula, certID A Represented as the certificate serial number of the terminal device (UE) in the A domain network; E PK(ENB) (certID A This indicates that the public key of the edge node EN in the B domain network is used to pair certID. A The encrypted message; Sig SK(UEA) {E PK(ENB) (certID A )} represents the private key pair E of the terminal device UE in the A domain network. PK(ENB) (certID A The message after being digitally signed; In response to the edge node EN in the B-domain network receiving the connection request req3 sent by the terminal device UE in the A-domain network, the connection request req3 is verified, and if the verification fails, the connection between the edge node EN and the terminal device UE is disconnected. If the verification of the connection request req3 is passed, a cross-domain access list CAL pre-stored in the B-domain network is queried, the cross-domain access list CAL is a certificate serial number list stored by the edge node EN after the terminal device UE successfully passes cross-domain authentication, and when the certificate of the terminal device UE is in the cross-domain access list CAL and valid, the terminal device UE can directly access the B-domain network. When the certificate of the terminal device UE is not recorded in the cross-domain access list CAL, the terminal device UE is authenticated in the cross-domain; specifically including: controlling an edge node EN in the B-domain network to send a cross-domain identity authentication authentication message to a terminal device UE in the A-domain network The expression formula is: ; In the formula, N represents a random number; represents a message encrypted by using a public key of a terminal device UE in an A domain network. In response to the UE receiving a cross-domain authentication message in the A domain network Cross-domain authentication messages Decryption is performed to obtain a random number N, and then message req4 is replied to the edge node EN in the B domain network. The expression formula for message req4 is as follows: req4 = [Cert UEA , Sig SK(UEA) (N)] In the formula, Cert UEA represents a certificate of a terminal device UE in an A-domain network; Sig SK(UEA) (N) represents a message after a random number N is digitally signed using a private key of the terminal device UE in the A-domain network. In response to the edge node EN receiving the message req4, the data signature and the random number N in the message req4 are verified, and if the data signature or the random number N in the message req4 fails the verification, the cross-domain authentication request of the terminal device UE in the A-domain network is rejected. If the data signature or random number N in the message req4 is verified, a hash value H(Cert) of the certificate of the terminal device UE in the A-domain network is calculated UEA ); According to the hash value H(Cert UEA ) to query the certificate of the terminal device UE in the A-domain network on the blockchain, and sending an authentication success result res to the terminal device UE in the A-domain network whose query is successful; When the terminal device UE in the A-domain network successfully passes the cross-domain authentication, the certificate serial number of the terminal device UE is saved to the cross-domain access list CAL of the B-domain network.

8. A computer readable storage medium having stored thereon a computer program, characterized in that The program is executed by the processor to implement the steps of the multi-domain certificate bidirectional authentication method of any one of claims 1 to 6.

Citation Information

Patent Citations

  • Cross-domain method based on block chain smart contract

    CN115664683A