Identity authentication method and system
By combining asymmetric digital signature algorithm and post-quantum digital signature algorithm, the dual signature identity authentication string is generated, and the problem of insufficient identity authentication security in the face of quantum computing threats is solved, and higher security is achieved. The ability to resist quantum computing.
Patent Information
- Application Number
- CN202411609909.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2044-11-12
AI Technical Summary
The existing asymmetric cryptographic authentication method is affected when facing the threat of quantum computing and quantum algorithms, and it is difficult to effectively resist quantum computing attacks.
The identity authentication method combining asymmetric digital signature algorithm and post-quantum digital signature algorithm is adopted. By generating an identity authentication string combining asymmetric digital signature and post-quantum digital signature, two-way identity authentication is performed to improve security.
By introducing the post-quantum digital signature algorithm, the security of identity authentication is improved, so that only one of the algorithms cannot completely break through the security line of identity authentication, and can resist quantum threats to a certain extent.
Smart Images

Figure CN119519980A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of network security technology, and in particular to an identity authentication method and system. Background Art
[0002] In the process of identity authentication based on asymmetric cryptography, the communication entity verifies its identity by indicating that it possesses a private signature key, which is accomplished by the communication entity using its private signature key to sign specific data. With the continuous breakthroughs in quantum computing hardware and the emergence of quantum algorithms such as Shor and Grover, it has brought a huge threat to current public key cryptography. Currently, the digital signature algorithms used in identity authentication based on asymmetric cryptography are mostly RSA or elliptic curves. The development of quantum computing and quantum algorithms will affect their security. Summary of the invention
[0003] Based on this, it is necessary to provide an identity authentication method and system to address the above technical issues, which can improve the security of both communicating parties during the identity authentication process.
[0004] In a first aspect, the present application provides an identity authentication method, which is applied to a claiming party and includes:
[0005] Determining a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm;
[0006] Generate a first algorithm identifier corresponding to a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm;
[0007] Obtaining a first time-varying parameter, and generating first signature data according to the first time-varying parameter and an identifier of a verifier;
[0008] Signing the first signature data using a first asymmetric digital signature algorithm to obtain a first signature;
[0009] Signing the first signature data using a first post-quantum digital signature algorithm to obtain a second signature;
[0010] Generate a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature;
[0011] The first identity authentication string is sent to the verifying party to instruct the verifying party to perform identity authentication according to the first identity authentication string.
[0012] In one embodiment, the method further comprises:
[0013] Obtain request data from the verification party; the request data includes a random number generated by the verification party;
[0014] Get time-varying parameters, including:
[0015] A random number is used as the first time-varying parameter.
[0016] In one embodiment, the method further comprises:
[0017] receiving a second identity authentication string from a verifying party;
[0018] Performing identity authentication according to a second identity authentication string;
[0019] If the identity authentication according to the second identity authentication string is successful and identity authentication success information is received from the verification party, it is determined that the two-way identity authentication is successful.
[0020] In one embodiment, the second identity authentication string includes a second algorithm identifier, a second signature data, a third signature, and a fourth signature;
[0021] Performing identity authentication according to the second identity authentication string includes:
[0022] Determining whether a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm indicated by a second algorithm identifier are supported;
[0023] If the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm are supported, verifying whether the second time-varying parameter carried in the second signature data is valid, and verifying whether the identity of the claiming party carried in the second signature data is correct;
[0024] If the second time-varying parameter is valid and the identity of the claiming party is correct, obtaining the first public key and the second public key of the verifying party;
[0025] verifying the third signature based on the first public key, and verifying the fourth signature based on the second public key;
[0026] If both the third signature and the fourth signature are verified successfully, the identity authentication is determined to be successful.
[0027] In one embodiment, the step of obtaining the first public key and the second public key of the authenticator includes at least one of the following:
[0028] receiving a digital signature certificate and a post-quantum digital signature certificate from a verifier, and after verifying that both the digital signature certificate and the post-quantum digital signature certificate are valid, obtaining a first public key from the digital signature certificate, and obtaining a second public key from the post-quantum digital signature certificate;
[0029] Obtaining a first public key and a second public key of a verifier from a preset storage space, where the preset storage space is used to store a pre-agreed algorithm public key;
[0030] The first public key and the second public key of the verifier are queried from a trusted third party.
[0031] In a second aspect, the present application also provides an identity authentication method, which is applied to a verification party and includes:
[0032] Receive a first identity authentication string from a claiming party; wherein the first identity authentication string is generated by the claiming party according to the following steps: determine a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm; generate a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; obtain a first time-varying parameter, and generate first signature data according to the first time-varying parameter and the identifier of the verifier; sign the first signature data using the first asymmetric digital signature algorithm to obtain a first signature; sign the first signature data using the first post-quantum digital signature algorithm to obtain a second signature; generate a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature;
[0033] Perform identity authentication according to the first identity authentication string.
[0034] In one embodiment, the method further comprises:
[0035] Determining a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm;
[0036] Generate a second algorithm identifier corresponding to the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm;
[0037] Obtaining a second time-varying parameter, and generating second signature data according to the second time-varying parameter and an identifier of the claiming party;
[0038] Signing the second signature data using a second asymmetric digital signature algorithm to obtain a third signature;
[0039] Signing the second signature data using a second post-quantum digital signature algorithm to obtain a fourth signature;
[0040] Generate a second identity authentication string according to the second algorithm identifier, the second signature data, the third signature, and the fourth signature;
[0041] Sending the second identity authentication string to the claiming party to instruct the claiming party to perform identity authentication according to the second identity authentication string;
[0042] If the identity authentication according to the first identity authentication string is successful, and identity authentication success information is received from the claiming party, it is determined that the two-way identity authentication is successful.
[0043] In one embodiment, performing identity authentication according to the first identity authentication string includes:
[0044] Determining whether a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm indicated by a first algorithm identifier are supported;
[0045] If the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm are supported, verifying whether the first time-varying parameter carried in the first signature data is valid, and verifying whether the identifier of the verifier carried in the first signature data is correct;
[0046] If the first time-varying parameter is valid and the identification of the verifier is correct, obtaining the third public key and the fourth public key of the claimant;
[0047] verifying the first signature based on the third public key, and verifying the second signature based on the fourth public key;
[0048] If both the first signature and the second signature are verified successfully, the identity authentication is determined to be successful.
[0049] In one embodiment, before receiving the first identity authentication string from the claiming party, the method further comprises:
[0050] Generate random numbers;
[0051] Sending request data to the claiming party according to the random number to instruct the claiming party to use the random number as the first time-varying parameter;
[0052] Verifying whether the first time-varying parameter carried in the first signature data is valid includes:
[0053] Verify whether the first time-varying parameter carried in the first signature data is consistent with the generated random number;
[0054] If they are consistent, it is determined that the first time-varying parameter is valid.
[0055] In a third aspect, the present application further provides an identity authentication system, the identity authentication system comprising a claiming party and a verifying party; wherein:
[0056] The claimant is used to implement the steps of the method described in the first aspect above when executing a computer program;
[0057] The verification party is used to implement the steps of the method described in the second aspect above when executing a computer program.
[0058] In the above-mentioned identity authentication method and system, the claiming party determines the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; generates the first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; obtains the first time-varying parameter, and generates the first signature data according to the first time-varying parameter and the identifier of the verifier; signs the first signature data using the first asymmetric digital signature algorithm to obtain the first signature; signs the first signature data using the first post-quantum digital signature algorithm to obtain the second signature; generates the first identity authentication string according to the first algorithm identifier, the first signature data, the first signature and the second signature; sends the first identity authentication string to the verifier to instruct the verifier to perform identity authentication according to the first identity authentication string. In the above-mentioned manner, on the basis of the traditional asymmetric cryptographic identity authentication, the post-quantum digital signature algorithm that can resist quantum computing is introduced, and the asymmetric digital signature algorithm and the post-quantum digital signature algorithm are combined, so that only cracking one of the algorithms cannot completely break the security line of identity authentication, improves the security of the communicating parties in the identity authentication process, and can resist quantum threats to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0060] FIG1 is a diagram of an application environment of an identity authentication method in one embodiment;
[0061] FIG2 is a schematic diagram of a flow chart of an identity authentication method in one embodiment;
[0062] FIG3 is a schematic diagram of identity authentication interaction in one embodiment;
[0063] FIG4 is a schematic diagram of a flow chart of a two-way authentication step in an embodiment;
[0064] FIG5 is a schematic diagram of a two-way authentication interaction in an embodiment;
[0065] FIG6 is a schematic diagram of a flow chart of an identity authentication method in another embodiment;
[0066] FIG7 is a schematic diagram of a flow chart of an identity authentication method applied to an identity authentication system in one embodiment;
[0067] FIG8 is a schematic flow chart of an identity authentication method applied to an identity authentication system in another embodiment;
[0068] FIG9 is a flow chart of an identity authentication method applied to an identity authentication system in yet another embodiment. DETAILED DESCRIPTION
[0069] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0070] It is to be understood that the terms "first", "second", etc. used in this application may be used herein to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from another element. For example, without departing from the scope of this application, the first signature data may be referred to as the second signature data, and similarly, the second signature data may be referred to as the first signature data. Both the first signature data and the second signature data are signature data, but they are not the same signature data.
[0071] The identity authentication method provided in the embodiment of the present application can be applied in the application environment shown in Figure 1. Among them, the identity authentication system includes a claimant 102 and a verifier 104, and the claimant 102 communicates with the verifier 104 through a network, and performs identity authentication based on the identity authentication method provided in any embodiment of the present application. The claimant 102 and the verifier 104 are both communication entities, which can be but not limited to various personal computers, laptops, smart phones, tablets, Internet of Things devices, portable wearable devices and servers. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart car devices, projection devices, etc. Portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The head-mounted device can be a virtual reality (VR) device, an augmented reality (AR) device, smart glasses, etc. The server can be an independent physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services.
[0072] Exemplarily, the claimant 102 is an application device, and the verifier 104 is a key distribution device. Based on the identity authentication method provided in this application, the identity authentication between the application device and the quantum key distribution device can be realized. Exemplarily, the claimant 102 is a terminal device, and the verifier 104 is a platform. Based on the identity authentication method provided in this application, the identity authentication of various devices accessing the platform can be realized. Exemplarily, based on the identity authentication method provided in this application, the identity authentication can be realized before the communicating parties establish a secure communication channel.
[0073] In an exemplary embodiment, as shown in FIG. 2 , an identity authentication method is provided, which is described by taking the method applied to the claiming party 102 in FIG. 1 as an example, including:
[0074] Step 202: Determine a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm.
[0075] Among them, the claiming party automatically selects or selects the identity authentication method under the user's configuration, that is, which traditional asymmetric digital signature algorithm and which post-quantum digital signature algorithm to use, and determines the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm used in this identity authentication. Post-Quantum cryptography (PQC) is a new generation of cryptographic algorithms that can resist quantum computing attacks on existing cryptographic algorithms and can ensure the security of cryptographic algorithms in a quantum environment.
[0076] Optionally, for greater practicality, the present application embodiment provides three optional identity authentication methods for both communicating parties: "traditional + PQC" digital signature, "single PQC" digital signature, and "traditional" digital signature. Each method is distinguished by a different code to ensure the availability, compatibility, and security of the identity authentication method. "Traditional + PQC" digital signature refers to the use of asymmetric digital signature algorithm and post-quantum digital signature algorithm for identity authentication; "single PQC" digital signature refers to the use of post-quantum digital signature algorithm alone for identity authentication; "traditional" digital signature refers to the use of traditional asymmetric digital signature algorithm alone for identity authentication. It is understandable that since the migration of traditional cryptography to post-quantum cryptography is a long process, the method provided in this embodiment can be compatible with traditional identity authentication methods through a small amount of modification, while supporting "traditional + PQC" digital signature and "single PQC" digital signature, covering future evolution directions as much as possible, and gradually achieving security improvements through smooth upgrades and modifications.
[0077] Step 204: Generate a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm.
[0078] The first algorithm identifier refers to the identity authentication method code, which is used to indicate which asymmetric digital signature algorithm and which post-quantum digital signature algorithm are used for this identity authentication. Optionally, a number corresponding to each asymmetric digital signature algorithm and a number corresponding to each post-quantum digital signature algorithm are preset in advance, and the number corresponding to the first asymmetric digital signature algorithm is queried, and the number corresponding to the first post-quantum digital signature algorithm is queried, and the two are integrated to determine the corresponding first algorithm identifier.
[0079] In an optional implementation, the algorithm identifier consists of two hexadecimal digits, and a value of 0 indicates that this type of digital signature algorithm is not used. For example, a low-bit value of 0 represents a "single PQC" digital signature, and a high-bit value of 0 represents a "traditional" digital signature. If both the high and low bit values are non-zero, it represents a "traditional + PQC" digital signature.
[0080] For example, the authentication method code "0x0N" has a high bit value of 0 and a low bit value of N, indicating that this authentication uses a traditional asymmetric digital signature algorithm. The authentication method code "0xMN" has a high bit value of M and a low bit value of N, indicating that this authentication uses a traditional asymmetric digital signature algorithm and a post-quantum digital signature algorithm. The authentication method code "0xM0" has a high bit value of M and a low bit value of 0, indicating that this authentication uses a post-quantum digital signature algorithm.
[0081] Refer to Table 1, which records the corresponding post-quantum digital signature algorithm when the high bit M has different values.
[0082] Table 1:
[0083]
[0084] Refer to Table 2, which records the corresponding asymmetric digital signature algorithms when the low bit N is different values.
[0085] Table 2:
[0086]
[0087] It is understandable that the above Tables 1 and 2 are only examples. In actual use, the codenames can be expanded and adjusted according to the supported algorithms. For example, if a traditional public key cryptographic algorithm or a post-quantum cryptographic algorithm is proven to be unsafe, in the interaction scenario between the terminal and the platform, the platform can be configured to quickly eliminate the unsafe algorithm. Furthermore, if a new post-quantum cryptographic algorithm is born, it can also be upgraded by adding a codename without affecting the overall business process.
[0088] Referring to Table 1 and Table 2, in the case of "traditional + PQC" digital signature, the algorithm used is determined by the high and low bits. For example, the code "0x23" means that FIPS 205 (SLH-DSA) is used as the post-quantum digital signature algorithm and the SM2 digital signature algorithm is used as the asymmetric digital signature algorithm.
[0089] Step 206: Obtain a first time-varying parameter, and generate first signature data according to the first time-varying parameter and the identifier of the verifier.
[0090] The value of the time-varying parameter varies with time. Optionally, the time-varying parameter of this embodiment is any one of a timestamp, a sequence number, and a random number, and the random number is generated and issued by the verifier. The first signature data of this embodiment consists of the first time-varying parameter and the identifier of the verifier.
[0091] Step 208: Sign the first signature data using a first asymmetric digital signature algorithm to obtain a first signature.
[0092] Step 210: Sign the first signature data using a first post-quantum digital signature algorithm to obtain a second signature.
[0093] Step 212: Generate a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature.
[0094] In an optional implementation, if the claiming party and the verifier have agreed on which traditional asymmetric digital signature algorithm and which post-quantum digital signature algorithm to use, there is no need to execute the aforementioned steps 202 and 204. A first identity authentication string is generated based on the first signature data, the first signature, and the second signature, and there is no need to send the identity authentication method code.
[0095] Step 214: Send the first identity authentication string to the authenticator to instruct the authenticator to perform identity authentication according to the first identity authentication string.
[0096] Assuming that the first algorithm identifier is C1, the first signature data is M1, the first signature is S1, and the second signature is S2, the claiming party sends the first identity authentication string C1||M1||S1||S2 to the verifying party, and the verifying party performs identity authentication based on the first identity authentication string.
[0097] In an optional implementation, the claiming party sends the first identity authentication string to the verifying party together with a digital signature certificate and a post-quantum digital signature certificate for use by the verifying party.
[0098] In an optional implementation, if the claiming party determines that the current identity authentication uses the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm, then continue to execute steps 204 to 214.
[0099] If it is determined that only the first asymmetric digital signature algorithm is used for this identity authentication, an algorithm identifier corresponding to the first asymmetric digital signature algorithm is generated; a first time-varying parameter is obtained, and first signature data is generated according to the first time-varying parameter and the identifier of the verifier; the first signature data is signed using the first asymmetric digital signature algorithm to obtain a first signature; an identity authentication string is generated according to the algorithm identifier, the first signature data and the first signature; and the identity authentication string is sent to the verifier to instruct the verifier to perform identity authentication according to the identity authentication string.
[0100] If it is determined that only the first post-quantum digital signature algorithm is used for this identity authentication, an algorithm identifier corresponding to the first post-quantum digital signature algorithm is generated; a first time-varying parameter is obtained, and first signature data is generated according to the first time-varying parameter and the identifier of the verifier; the first signature data is signed using the first post-quantum digital signature algorithm to obtain a second signature; an identity authentication string is generated according to the algorithm identifier, the first signature data and the second signature; and the identity authentication string is sent to the verifier to instruct the verifier to perform identity authentication according to the identity authentication string.
[0101] This embodiment does not limit the identity authentication process of the verifier. Optionally, the verifier performs identity authentication in the following manner: determine whether the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm indicated by the first algorithm identifier are supported; if the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm are supported, verify whether the first time-varying parameter carried in the first signature data is valid, and verify whether the identity of the verifier carried in the first signature data is correct; if the first time-varying parameter is valid and the identity of the verifier is correct, obtain the third public key and the fourth public key of the claimant; verify the first signature according to the third public key, and verify the second signature according to the fourth public key; if both the first signature and the second signature are successfully verified, determine that the identity authentication is passed.
[0102] In the above-mentioned identity authentication method, on the basis of traditional asymmetric cryptographic identity authentication, a post-quantum digital signature algorithm that can resist quantum computing is introduced, and the asymmetric digital signature algorithm and the post-quantum digital signature algorithm are combined, so that cracking only one of the algorithms cannot completely break the security line of identity authentication, thereby improving the security of both communicating parties in the identity authentication process and being able to resist quantum threats to a certain extent.
[0103] In an exemplary embodiment, the method further includes: obtaining request data from the verification party; the request data includes a random number generated by the verification party; and obtaining the time-varying parameter includes: using the random number as the first time-varying parameter.
[0104] 3 , the verifier sends a request to the claimant, and the claimant responds to the request by executing the steps of the method provided in the embodiment of the present application to generate a first identity authentication string, and sends the first identity authentication string to the verifier, and the verifier performs identity authentication based on the first identity authentication string.
[0105] In this embodiment, based on the challenge / response mechanism, the challenge is initiated by the verifier, and the uniqueness and timeliness of the authentication process are ensured by generating and verifying the challenge random number.
[0106] In an exemplary embodiment, as shown in FIG4 , the method further includes:
[0107] Step 402: Receive a second identity authentication string from a verification party.
[0108] Among them, the second identity authentication string is a credential for identity authentication generated by the verifier. Optionally, the verifier generates the second identity authentication string in the same way as the claimant generates the first authentication string, and the specific steps include: determining the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm; generating the second algorithm identifier corresponding to the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm; obtaining the second time-varying parameter, and generating the second signature data according to the second time-varying parameter and the claimant's identifier; signing the second signature data using the second asymmetric digital signature algorithm to obtain a third signature; signing the second signature data using the second post-quantum digital signature algorithm to obtain a fourth signature; generating the second identity authentication string according to the second algorithm identifier, the second signature data, the third signature and the fourth signature; and sending the second identity authentication string to the claimant.
[0109] In an optional implementation, the claiming party selects any one of the identity authentication methods among "traditional + PQC" digital signature, "single PQC" digital signature, and "traditional" digital signature; similarly, the verifying party can also select any one of the identity authentication methods among "traditional + PQC" digital signature, "single PQC" digital signature, and "traditional" digital signature.
[0110] Step 404: Perform identity authentication according to the second identity authentication string.
[0111] The identity authentication logic adopted by the claiming party and the verifying party is the same. This embodiment does not limit the specific method of identity authentication.
[0112] Step 406: If the identity authentication according to the second identity authentication string is successful and identity authentication success information is received from the verification party, it is determined that the two-way identity authentication is successful.
[0113] After the verification party passes the identity authentication according to the first identity authentication string, the verification party sends the identity authentication pass information to the claiming party. When the claiming party determines that the identity authentication of the party has passed and the identity authentication of the verification party has passed, the two-way identity authentication is determined to be successful and the identity authentication process is completed. If the identity authentication of the party fails or the identity authentication of the verification party fails, the claiming party determines that the two-way identity authentication has failed.
[0114] In an optional implementation, referring to FIG5, the identity authentication method includes the following steps: 1. The claiming party generates a first identity authentication string and sends it to the verification party; 2. The verification party performs identity authentication according to the first identity authentication string; 3. After the identity authentication is passed, the verification party sends the identity authentication pass information to the claiming party; 4. The verification party generates a second identity authentication string and sends it to the claiming party; 5. The claiming party performs identity authentication according to the second identity authentication string; 6. After the identity authentication is passed, the claiming party sends the identity authentication pass information to the verification party; 7. When the identity authentication is passed and the identity authentication pass information sent by the verification party is received, the claiming party determines that the two-way identity authentication is successful; 8. When the identity authentication is passed and the verification party receives the identity authentication pass information sent by the claiming party, the verification party determines that the two-way identity authentication is successful. FIG5 is only an example, and this embodiment does not limit the order of occurrence of step 1 and step 4; step 3 and step 4 can be performed simultaneously or separately; similarly, step 1 and step 6 can be performed simultaneously or separately.
[0115] In this embodiment, based on the interaction between the claiming party and the verifying party, two-way identity authentication of the communicating parties can be achieved.
[0116] In an exemplary embodiment, the second identity authentication string includes a second algorithm identifier, a second signature data, a third signature, and a fourth signature; step 404 includes: determining whether the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm indicated by the second algorithm identifier are supported; if the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm are supported, verifying whether the second time-varying parameter carried in the second signature data is valid, and verifying whether the identity of the claiming party carried in the second signature data is correct; if the second time-varying parameter is valid and the identity of the claiming party is correct, obtaining the first public key and the second public key of the verifier; verifying the third signature according to the first public key, and verifying the fourth signature according to the second public key; if both the third signature and the fourth signature are successfully verified, determining that the identity authentication is successful.
[0117] Among them, if the second asymmetric digital signature algorithm indicated by the second algorithm identifier is not supported, or the second post-quantum digital signature algorithm indicated by the second algorithm identifier is not supported, it is determined that the identity authentication has failed, and the identity authentication failure information is returned to the verification party. If the second time-varying parameter is invalid, or the claimant's identifier is incorrect, it is determined that the identity authentication has failed, and the identity authentication failure information is returned to the verification party. If the third signature or the fourth signature fails to be verified, it is determined that the identity authentication has failed, and the identity authentication failure information is returned to the verification party.
[0118] In an exemplary embodiment, the step of obtaining the first public key and the second public key of the verifier includes at least one of the following: receiving a digital signature certificate and a post-quantum digital signature certificate from the verifier, and after verifying that the digital signature certificate and the post-quantum digital signature certificate are both valid, obtaining the first public key from the digital signature certificate, and obtaining the second public key from the post-quantum digital signature certificate; obtaining the first public key and the second public key of the verifier from a preset storage space, the preset storage space being used to store pre-agreed algorithm public keys; and querying the first public key and the second public key of the verifier from a trusted third party.
[0119] Among them, the first public key is the public key of the asymmetric digital signature algorithm used by the verifier; the second public key is the public key of the post-quantum digital signature algorithm used by the verifier.
[0120] In one implementation, the verifier sends the second identity authentication string to the claimant while sending the digital signature certificate and the post-quantum digital signature certificate to the claimant. The claimant verifies whether the digital signature certificate and the post-quantum digital signature certificate are valid at any stage before obtaining the first public key and the second public key of the verifier. After verifying that the digital signature certificate and the post-quantum digital signature certificate are both valid, the claimant obtains the first public key from the digital signature certificate and the second public key from the post-quantum digital signature certificate.
[0121] In another implementation, the claiming party presets the traditional algorithm public key and post-quantum algorithm public key of the verifier in a preset storage space in advance. For example, the verification method is an application platform, and the claiming party presets the public key online during the registration process or presets it offline in advance.
[0122] In another implementation, the traditional algorithm public key and post-quantum algorithm public key of the claiming party or the verifier are maintained by a trusted third party, and the claiming party or the verifier obtains the traditional algorithm public key and post-quantum algorithm public key by asking the trusted third party before identity authentication.
[0123] In an exemplary embodiment, as shown in FIG6 , an identity authentication method is provided, which is described by taking the method applied to the verification party 104 in FIG1 as an example, including:
[0124] Step 602, receiving a first identity authentication string from a claiming party; wherein the first identity authentication string is generated by the claiming party according to the following steps: determining a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm; generating a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; obtaining a first time-varying parameter, and generating a first signature data according to the first time-varying parameter and the identifier of the verifier; signing the first signature data using the first asymmetric digital signature algorithm to obtain a first signature; signing the first signature data using the first post-quantum digital signature algorithm to obtain a second signature; generating a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature.
[0125] Step 604: Perform identity authentication according to the first identity authentication string.
[0126] For the description of steps 602 to 604, please refer to the aforementioned explanation of the identity authentication method applied to the claiming party, which will not be repeated here.
[0127] In the above-mentioned identity authentication method, on the basis of traditional asymmetric cryptographic identity authentication, a post-quantum digital signature algorithm that can resist quantum computing is introduced, and the asymmetric digital signature algorithm and the post-quantum digital signature algorithm are combined, so that cracking only one of the algorithms cannot completely break the security line of identity authentication, thereby improving the security of both communicating parties in the identity authentication process and being able to resist quantum threats to a certain extent.
[0128] In an exemplary embodiment, the method also includes: determining a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm; generating a second algorithm identifier corresponding to the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm; obtaining a second time-varying parameter, and generating a second signature data according to the second time-varying parameter and the identifier of the claiming party; signing the second signature data using the second asymmetric digital signature algorithm to obtain a third signature; signing the second signature data using the second post-quantum digital signature algorithm to obtain a fourth signature; generating a second identity authentication string according to the second algorithm identifier, the second signature data, the third signature and the fourth signature; sending the second identity authentication string to the claiming party to instruct the claiming party to perform identity authentication according to the second identity authentication string; if the identity authentication according to the first identity authentication string is passed and the identity authentication pass information is received from the claiming party, it is determined that the two-way identity authentication is successful.
[0129] Among them, assuming that the second algorithm identifier is C2, the second signature data is M2, the third signature is S3, and the fourth signature is S4, the logic is the same as that of the claiming party generating the first identity authentication string. The verifier generates a second identity authentication string C2||M2||S3||S4 and sends the second identity authentication string to the claiming party. The claiming party performs identity authentication based on the second identity authentication string.
[0130] 5, after the claiming party passes the identity authentication according to the second identity authentication string, it sends the identity authentication pass information to the verification party. After the verification party determines that the identity authentication of the party passes and the identity authentication of the claiming party passes, it determines that the two-way identity authentication is successful and completes the identity authentication process. If the identity authentication of the party fails or the identity authentication of the claiming party fails, the verification party determines that the two-way identity authentication fails.
[0131] In an exemplary embodiment, step 604 includes: determining whether the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm indicated by the first algorithm identifier are supported; if the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm are supported, verifying whether the first time-varying parameter carried in the first signature data is valid, and verifying whether the identifier of the verifier carried in the first signature data is correct; if the first time-varying parameter is valid and the identifier of the verifier is correct, obtaining the third public key and the fourth public key of the claiming party; verifying the first signature according to the third public key, and verifying the second signature according to the fourth public key; if both the first signature and the second signature are successfully verified, determining that the identity authentication is successful.
[0132] If the first asymmetric digital signature algorithm indicated by the first algorithm identifier is not supported, or the first post-quantum digital signature algorithm indicated by the first algorithm identifier is not supported, it is determined that the identity authentication fails, and the identity authentication failure information is returned to the claiming party. If the first time-varying parameter is invalid, or the identifier of the verifier is incorrect, it is determined that the identity authentication fails, and the identity authentication failure information is returned to the claiming party. If the first signature or the second signature fails to be verified, it is determined that the identity authentication fails, and the identity authentication failure information is returned to the claiming party.
[0133] In an optional implementation, the step of obtaining the third public key and the fourth public key of the claiming party includes at least one of the following: receiving a digital signature certificate and a post-quantum digital signature certificate from the claiming party, and after verifying that the digital signature certificate and the post-quantum digital signature certificate are both valid, obtaining the third public key from the digital signature certificate, and obtaining the fourth public key from the post-quantum digital signature certificate; obtaining the third public key and the fourth public key of the claiming party from a preset storage space, the preset storage space being used to store a pre-agreed algorithm public key; and querying the third public key and the fourth public key of the claiming party from a trusted third party.
[0134] In an exemplary embodiment, before step 602, the method further includes: generating a random number; sending request data to the claiming party according to the random number to instruct the claiming party to use the random number as the first time-varying parameter;
[0135] Verifying whether the first time-varying parameter carried in the first signature data is valid includes: verifying whether the first time-varying parameter carried in the first signature data is consistent with the generated random number; if they are consistent, determining that the first time-varying parameter is valid.
[0136] 3, the verifier generates a random number and sends a request containing the random number to the claimant. The claimant generates a first identity authentication string in response to the request and sends the first identity authentication string to the verifier. The verifier performs identity authentication based on the first identity authentication string. The method of verifying whether the first time-varying parameter is valid is to verify whether the first time-varying parameter is consistent with the generated random number. If they are consistent, the first time-varying parameter is valid; if they are inconsistent, the first time-varying parameter is invalid.
[0137] Optionally, the time-varying parameter of this embodiment is any one of a timestamp, a sequence number, and a random number. If the first time-varying parameter is a sequence number, the verifier determines whether the sequence number is greater than the sequence number used in the previous authentication process during the verification. If so, the first time-varying parameter is determined to be valid; if not, an identity authentication failure message is returned to the claimant.
[0138] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0139] In an exemplary embodiment, as shown in FIG1 , the present application further provides an identity authentication system, the identity authentication system comprising a claiming party and a verifying party; wherein:
[0140] The claiming party is used to implement the following steps when executing the computer program: determining a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm; generating a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; obtaining a first time-varying parameter, and generating first signature data according to the first time-varying parameter and the identifier of the verifier; signing the first signature data using the first asymmetric digital signature algorithm to obtain a first signature; signing the first signature data using the first post-quantum digital signature algorithm to obtain a second signature; generating a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature; and sending the first identity authentication string to the verifier.
[0141] The verification party is used to implement the following steps when executing a computer program: receiving a first identity authentication string from a claiming party; and performing identity authentication according to the first identity authentication string.
[0142] In an exemplary embodiment, the claiming party, when executing a computer program, further implements the following steps: obtaining request data from the verifying party; the request data includes a random number generated by the verifying party; and using the random number as a first time-varying parameter.
[0143] In an exemplary embodiment, the claiming party, when used to execute a computer program, further implements the following steps: receiving a second identity authentication string from a verifying party; performing identity authentication based on the second identity authentication string; if the identity authentication based on the second identity authentication string passes and identity authentication pass information is received from the verifying party, then it is determined that the two-way identity authentication is successful.
[0144] In an exemplary embodiment, the second identity authentication string includes a second algorithm identifier, a second signature data, a third signature and a fourth signature; the claiming party, when used to execute a computer program, further implements the following steps: determining whether the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm indicated by the second algorithm identifier are supported; if the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm are supported, verifying whether the second time-varying parameter carried in the second signature data is valid, and verifying whether the identity of the claiming party carried in the second signature data is correct; if the second time-varying parameter is valid and the identity of the claiming party is correct, obtaining the first public key and the second public key of the verifier; verifying the third signature according to the first public key, and verifying the fourth signature according to the second public key; if both the third signature and the fourth signature are successfully verified, determining that the identity authentication is successful.
[0145] In an exemplary embodiment, the claimant, when used to execute a computer program, further implements the following steps: receiving a digital signature certificate and a post-quantum digital signature certificate from a verifier, and after verifying that both the digital signature certificate and the post-quantum digital signature certificate are valid, obtaining a first public key from the digital signature certificate, and obtaining a second public key from the post-quantum digital signature certificate; obtaining the first public key and the second public key of the verifier from a preset storage space, the preset storage space being used to store pre-agreed algorithm public keys; and querying the first public key and the second public key of the verifier from a trusted third party.
[0146] In an exemplary embodiment, the verifier, when used to execute the computer program, further implements the following steps: determining a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm; generating a second algorithm identifier corresponding to the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm; obtaining a second time-varying parameter, and generating second signature data according to the second time-varying parameter and the identifier of the claiming party; signing the second signature data using the second asymmetric digital signature algorithm to obtain a third signature; signing the second signature data using the second post-quantum digital signature algorithm to obtain a fourth signature; generating a second identity authentication string according to the second algorithm identifier, the second signature data, the third signature and the fourth signature; sending the second identity authentication string to the claiming party to instruct the claiming party to perform identity authentication according to the second identity authentication string; if the identity authentication according to the first identity authentication string is passed and the identity authentication pass information is received from the claiming party, it is determined that the two-way identity authentication is successful.
[0147] In an exemplary embodiment, the verifier, when used to execute the computer program, further implements the following steps: determining whether the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm indicated by the first algorithm identifier are supported; if the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm are supported, verifying whether the first time-varying parameter carried in the first signature data is valid, and verifying whether the identifier of the verifier carried in the first signature data is correct; if the first time-varying parameter is valid and the identifier of the verifier is correct, obtaining the third public key and the fourth public key of the claimant; verifying the first signature according to the third public key, and verifying the second signature according to the fourth public key; if both the first signature and the second signature are verified successfully, determining that the identity authentication is successful.
[0148] In an exemplary embodiment, the verifier, when used to execute a computer program, further implements the following steps: generating a random number; sending request data to the claiming party based on the random number to instruct the claiming party to use the random number as the first time-varying parameter; verifying whether the first time-varying parameter carried in the first signature data is consistent with the generated random number; if they are consistent, determining that the first time-varying parameter is valid.
[0149] In an optional implementation, referring to FIG. 7 , an identity authentication method applied to an identity authentication system includes the following steps:
[0150] 01. The claiming party A selects the identity authentication method, that is, which traditional asymmetric digital signature algorithm or which post-quantum digital signature algorithm, the corresponding method code C; uses the current timestamp T as the time-varying parameter and the identifier of the verifying party B to form the signature data M; performs a traditional digital signature on M to obtain signature S1, and performs a post-quantum digital signature on M to obtain signature S2.
[0151] 02. The claiming party A sends the identity authentication string C||M||S1||S2 to the verifying party B, and sends A's traditional digital signature certificate and post-quantum digital signature certificate.
[0152] 03. The verifier B receives the identity authentication string sent by A and determines whether it supports the traditional asymmetric digital signature algorithm and post-quantum digital signature algorithm shown in C. If not, it returns the identity authentication failure information.
[0153] 04. If supported, verify whether the timestamp T in M is valid and whether the identification of the authenticator B is correct. If the timestamp T is invalid or the identification of the authenticator B is incorrect, return the authentication failure information.
[0154] 05. If the timestamp T is valid and the identification of the verifier B is correct, verify whether A's traditional digital signature certificate and post-quantum digital signature certificate are valid, or obtain A's traditional algorithm public key and post-quantum algorithm public key through other means (for example, pre-set or obtained from a trusted third party); if the traditional digital signature certificate or post-quantum digital signature certificate is invalid, return identity authentication failure information.
[0155] 06. If both the traditional digital signature certificate and the post-quantum digital signature certificate are valid, the signature S1 is verified according to A's traditional algorithm public key, and the signature S2 is verified according to A's post-quantum algorithm public key. If one of the signature verifications fails, the identity authentication failure message is returned. If both pass, the identity authentication is successful.
[0156] In an optional implementation, referring to FIG. 8 , an identity authentication method applied to an identity authentication system includes the following steps:
[0157] 01. The claiming party A selects the identity authentication method, that is, which traditional asymmetric digital signature algorithm or which post-quantum digital signature algorithm, the corresponding method code C; uses the current timestamp T as the time-varying parameter and the identifier of the verifying party B to form the signature data M; performs a traditional digital signature on M to obtain signature S1, and performs a post-quantum digital signature on M to obtain signature S2.
[0158] 02. Claiming party A sends the identity authentication string C||M||S1||S2 to verifying party B.
[0159] 03. The verifier B receives the identity authentication string sent by A and determines whether it supports the traditional asymmetric digital signature algorithm and post-quantum digital signature algorithm shown in C. If not, it returns the identity authentication failure information.
[0160] 04. If supported, verify whether the timestamp T in M is valid and whether the identification of the authenticator B is correct. If the timestamp T is invalid or the identification of the authenticator B is incorrect, return the authentication failure information.
[0161] 05. If the timestamp T is valid and the identification of the verifier B is correct, the verifier B obtains the preset traditional algorithm public key and post-quantum algorithm public key of A. If the corresponding traditional algorithm public key or post-quantum algorithm public key of A does not exist, the identity authentication failure information is returned.
[0162] 06. Verify signature S1 according to A’s traditional algorithm public key, and verify signature S2 according to A’s post-quantum algorithm public key. If one of the signature verifications fails, the identity authentication failure message is returned. If both pass, the identity authentication is successful.
[0163] In an optional implementation, referring to FIG. 9 , an identity authentication method applied to an identity authentication system includes the following steps:
[0164] 01. The claiming party A selects the identity authentication method, that is, which traditional asymmetric digital signature algorithm or which post-quantum digital signature algorithm, the corresponding method code C; uses the current timestamp T as the time-varying parameter and the identifier of the verifying party B to form the signature data M; performs a traditional digital signature on M to obtain signature S1, and performs a post-quantum digital signature on M to obtain signature S2.
[0165] 02. Claiming party A sends the identity authentication string C||M||S1||S2 to verifying party B.
[0166] 03. The verifier B receives the identity authentication string sent by A and determines whether it supports the traditional asymmetric digital signature algorithm and post-quantum digital signature algorithm shown in C. If not, it returns the identity authentication failure information.
[0167] 04. If supported, verify whether the timestamp T in M is valid and whether the identification of the authenticator B is correct. If the timestamp T is invalid or the identification of the authenticator B is incorrect, return the authentication failure information.
[0168] 05. If the timestamp T is valid and the identification of the verifier B is correct, the verifier B obtains A's traditional algorithm public key and post-quantum algorithm public key by asking a trusted third party. If A's corresponding traditional algorithm public key or post-quantum algorithm public key does not exist, the identity authentication failure information is returned.
[0169] 06. Verify signature S1 according to A’s traditional algorithm public key, and verify signature S2 according to A’s post-quantum algorithm public key. If one of the signature verifications fails, the identity authentication failure message is returned. If both pass, the identity authentication is successful.
[0170] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0171] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0172] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0173] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. An identity authentication method, characterized in that: The method is applied to the claiming party, comprising: Determining a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm; Generate a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; Obtaining a first time-varying parameter, and generating first signature data according to the first time-varying parameter and an identifier of a verifier; Signing the first signature data using the first asymmetric digital signature algorithm to obtain a first signature; Signing the first signature data using the first post-quantum digital signature algorithm to obtain a second signature; Generate a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature; The first identity authentication string is sent to the authenticator to instruct the authenticator to perform identity authentication according to the first identity authentication string.
2. The method according to claim 1, characterized in that The method further comprises: Obtaining request data from the verification party; the request data including a random number generated by the verification party; The obtaining of the time-varying parameters comprises: The random number is used as a first time-varying parameter.
3. The method according to claim 1, characterized in that: The method further comprises: receiving a second identity authentication string from the verifying party; Performing identity authentication according to the second identity authentication string; If the identity authentication according to the second identity authentication string is successful and identity authentication success information is received from the verification party, it is determined that the two-way identity authentication is successful.
4. The method according to claim 3, characterized in that The second identity authentication string includes a second algorithm identifier, a second signature data, a third signature, and a fourth signature; The performing identity authentication according to the second identity authentication string includes: Determining whether a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm indicated by the second algorithm identifier are supported; If the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm are supported, verifying whether the second time-varying parameter carried in the second signature data is valid, and verifying whether the identity of the claiming party carried in the second signature data is correct; If the second time-varying parameter is valid and the identity of the claiming party is correct, obtaining the first public key and the second public key of the verifying party; verifying the third signature according to the first public key, and verifying the fourth signature according to the second public key; If both the third signature and the fourth signature are successfully verified, it is determined that the identity authentication is successful.
5. The method according to claim 4, characterized in that The step of obtaining the first public key and the second public key of the verifier includes at least one of the following: receiving a digital signature certificate and a post-quantum digital signature certificate from the verifier, and after verifying that both the digital signature certificate and the post-quantum digital signature certificate are valid, obtaining a first public key from the digital signature certificate, and obtaining a second public key from the post-quantum digital signature certificate; Acquire the first public key and the second public key of the verifier from a preset storage space, where the preset storage space is used to store a pre-agreed algorithm public key; The first public key and the second public key of the verifier are queried from a trusted third party.
6. An identity authentication method, characterized in that: The method is applied to the verification party, comprising: Receive a first identity authentication string from a claiming party; wherein the first identity authentication string is generated by the claiming party according to the following steps: determine a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm; generate a first algorithm identifier corresponding to the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm; obtain a first time-varying parameter, and generate first signature data according to the first time-varying parameter and the identifier of the verifier; sign the first signature data using the first asymmetric digital signature algorithm to obtain a first signature; sign the first signature data using the first post-quantum digital signature algorithm to obtain a second signature; generate a first identity authentication string according to the first algorithm identifier, the first signature data, the first signature, and the second signature; Perform identity authentication according to the first identity authentication string.
7. The method according to claim 6, characterized in that The method further comprises: Determining a second asymmetric digital signature algorithm and a second post-quantum digital signature algorithm; Generate a second algorithm identifier corresponding to the second asymmetric digital signature algorithm and the second post-quantum digital signature algorithm; Acquire a second time-varying parameter, and generate second signature data according to the second time-varying parameter and an identifier of a claiming party; Signing the second signature data using the second asymmetric digital signature algorithm to obtain a third signature; Signing the second signature data using the second post-quantum digital signature algorithm to obtain a fourth signature; Generate a second identity authentication string according to the second algorithm identifier, the second signature data, the third signature and the fourth signature; Sending the second identity authentication string to the claiming party to instruct the claiming party to perform identity authentication according to the second identity authentication string; If the identity authentication according to the first identity authentication string is successful, and identity authentication success information is received from the claiming party, it is determined that the two-way identity authentication is successful.
8. The method according to claim 6, characterized in that The performing identity authentication according to the first identity authentication string includes: Determining whether a first asymmetric digital signature algorithm and a first post-quantum digital signature algorithm indicated by the first algorithm identifier are supported; If the first asymmetric digital signature algorithm and the first post-quantum digital signature algorithm are supported, verifying whether the first time-varying parameter carried in the first signature data is valid, and verifying whether the identifier of the verifier carried in the first signature data is correct; If the first time-varying parameter is valid and the identification of the verifier is correct, obtaining the third public key and the fourth public key of the claimant; verifying the first signature according to the third public key, and verifying the second signature according to the fourth public key; If both the first signature and the second signature are successfully verified, it is determined that the identity authentication is successful.
9. The method according to claim 8, characterized in that Before receiving the first identity authentication string from the claiming party, the method further includes: Generate random numbers; Sending request data to the claiming party according to the random number to instruct the claiming party to use the random number as a first time-varying parameter; The verifying whether the first time-varying parameter carried in the first signature data is valid includes: Verifying whether the first time-varying parameter carried in the first signature data is consistent with the generated random number; If they are consistent, it is determined that the first time-varying parameter is valid.
10. An identity authentication system, characterized in that: The identity authentication system includes a claiming party and a verifying party; wherein: The claimant is used to implement the steps of the method described in any one of claims 1 to 5 when executing a computer program; The verification party is used to implement the steps of the method as described in any one of claims 6 to 9 when executing a computer program.
Citation Information
Patent Citations
Two-way authentication method and system
CN108366069A
Identity authentication method and device based on SM9 algorithm, and computer equipment
CN111259353A
Certificate authentication system and authentication method based on post-quantum signature
CN116388986A
Code signature method and device, equipment and storage medium
CN118748593A
Quantum-resistant double signature system
US10742420B1
Cited By
Identity processing method and device
CN120768655A
Identity processing method and apparatus
CN120768655B
Identity authentication method and system
WO2026103126A1