Multi-server-oriented anti-quantum two-factor identity authentication method and system
Through a two-factor authentication method combining biometrics and PUF, combined with grid cryptography technology and central binomial distributed sampling, the problem of identity authentication vulnerability in the existing technology is solved, and a multi-server identity authentication scheme with high security and scalability is realized.
Patent Information
- Application Number
- CN202510581064.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-07
- Publication Date
- 2025-08-15
AI Technical Summary
The existing single-factor password authentication scheme is susceptible to offline dictionary guessing attacks and quantum computing attacks, resulting in insufficient security of identity authentication. The authentication scheme of multi-server architecture has insufficient scalability and security problems.
A two-factor authentication method combining biometrics with physical non-cloneable functions (PUF) is adopted, combined with grid cryptography technology and central binomial distribution sampling, and key negotiation is carried out through an error coordination mechanism to improve authentication security.
Effectively resist server leakage attacks and quantum computing attacks, improve the security and scalability of identity authentication, and ensure the confidentiality and integrity of communications.
Smart Images

Figure CN120498661A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of Internet technology, and in particular to a quantum-resistant two-factor identity authentication method and system for multiple servers. Background Art
[0002] With the development of internet services and e-commerce technologies, ensuring secure authentication between servers and users has become crucial. Identity authentication is the first line of defense for information security, and its importance is self-evident. Mutual identity authentication allows communicating parties to negotiate a common session key, ensuring the confidentiality and integrity of subsequent communications and enabling secure communication over open networks. Key agreement serves as the first line of defense in communication security and is a crucial component of cryptographic information protection. Research on secure authentication and key agreement will provide irreplaceable theoretical foundations and technical means for information security.
[0003] Passwords are currently the primary means of identity authentication on the internet due to their ease of memorization, deployment, and management. However, password-based single-factor authentication protocols suffer from a fundamental flaw: they are often vulnerable to offline dictionary guessing attacks. Specifically, attackers can quickly test possible user passwords based on the hash value of the actual password. Furthermore, for ease of memorization, people often tend to choose weak passwords with low entropy. As a result, a large proportion of user-selected passwords are easily guessed automatically. Password-based single-factor authentication has serious security issues and cannot meet the needs of security-critical applications such as online banking, e-government, and e-healthcare. For security reasons, adding one or two additional authentication factors is often used to enhance security. The leakage of password data can directly lead to the leakage of private data, posing a serious security risk.
[0004] Existing password authentication schemes based on a single-server architecture have experienced frequent security incidents, leading to widespread attention for multi-server and dual-server password authentication schemes. However, the security of two-server password authentication schemes has been questioned, and their scalability is insufficient, making them suitable only for resource-constrained applications. Furthermore, they suffer from numerous unresolved security issues and fail to meet practical needs. Existing multi-server password authentication schemes offer higher security than two-server schemes, are widely deployable, and offer sufficient scalability. Therefore, multi-server password authentication key agreement schemes offer promising application prospects and have garnered significant attention. Furthermore, multi-factor multi-server authentication schemes have gradually replaced traditional single-factor single-server authentication schemes as the mainstream authentication solution. Summary of the Invention
[0005] In response to the problem that identity authentication schemes in the existing technology are susceptible to server leakage attacks and quantum computing attacks, resulting in insufficient security of identity authentication schemes, the present invention proposes a quantum-resistant two-factor identity authentication method for multiple servers. By combining the password with the user's own biometric characteristics and using the corresponding lattice cryptography technology to re-encrypt the password and biometric information, the corresponding identity authentication technology is implemented to improve security performance.
[0006] In a first aspect, the present invention proposes a quantum-resistant two-factor identity authentication method for multiple servers, comprising:
[0007] Registration phase: The client calculates a first temporary password and a first temporary identity based on the user's input identity, biometrics, and password, combined with its own PUF, and completes registration with the registration center through a secure channel. The registration center generates a first random number and first login verification information and returns them to the client, which then stores them.
[0008] Login verification phase: The client calculates a second temporary password and a second temporary identity based on the user's input identity, biometrics, and password in combination with its own PUF. It then calculates a second login verification message based on the first random number and determines whether the first login verification message and the second login verification message are equal. If they are equal, the login is successful and the key negotiation phase proceeds. If they are not equal, the login fails.
[0009] Key agreement phase: the client calculates first key agreement information based on a first secret value and a first error value sampled from a central binomial distribution and sends the information to the server;
[0010] After receiving the first key agreement message, the server samples a second secret value and a second error value from a central binomial distribution, generates a second random number and a third random number, and calculates second key agreement information and sends it to the client;
[0011] After receiving the second key negotiation information, the user end obtains the second authentication information through the error protocol mechanism, and determines whether the second authentication information is equal to the first authentication information. If they are not equal, the session is terminated; otherwise, the shared key is continued to be calculated.
[0012] Furthermore, the registration phase specifically includes:
[0013] Step 1.1: User U i Select an ID i and password PW i , using the biometric extractor to obtain the biometric template Bio i , the ID i 、The PWi and the Bio i Input client U;
[0014] Step 1.2: The client U uses the generating function of the fuzzy extractor to calculate (Ku, FI) = FE.Gen (Bio i ) obtain the user's first biometric key Ku and auxiliary information FI; wherein the auxiliary information FI is stored in the user U i On the client;
[0015] Step 1.3: The client U uses the first biometric key Ku as the parameter information of the PUF to obtain a first response value X i =PUF(Ku);
[0016] Step 1.4: The client U calculates the first temporary password TPW i =H0(Ku||PW i ||X i ||n0) and the first temporary identity TID i =H0(X i ||ID i ||n0);
[0017] Step 1.5: The client U sends the registration information m0=(TPW i ,TID i ) sent to the registration center RC;
[0018] Step 1.6: The registration center RC receives the registration information m0=(TPW i ,TID i ), generate a random number n0 and calculate the first private key ad i =H0(TID i ||n0), KD i =H0(ad i ||n0),ap i =H0(TPW i ||n0), KP i =H0(ap i ||n0),
[0019] Step 1.7: The registration center RC calculates the first login verification information V i =H0(KDP i || n0) and sends the first login verification information to the user terminal U.
[0020] Furthermore, the login verification stage specifically includes:
[0021] Step 2.1: User U i The ID of the registered i , Biometric template i and password PW i Input the client U, and the client U obtains the corresponding first login verification information V i and said auxiliary information FI;
[0022] Step 2.2: The client U uses the auxiliary information FI as the input of the fuzzy extractor regeneration function to calculate the second biometric key Ku′=FE.rep(Bio i ,FI);
[0023] Step 2.3: The client U uses the second biometric key Ku′ as the parameter information of the PUE to calculate the second response value X i ′=PUF(Ku′);
[0024] Step 2.4: The client U calculates the second temporary password TPW i ′=H0(Ku′||PW i ||X i '||n0) and the second temporary identity TID' i =H0(X i ′||ID i ||n0);
[0025] Step 2.5: The client U calculates the second private key ad i ′=H0(TID i ′||n0), KD i ′=H0(ad i ′||n0),ap i ′=H0(TPW i ′||n0), KP i ′=H0(ap i ′||n0), And calculate the second login verification information V based on the second private key i ′=H0(KDP i ′||n0);
[0026] Step 2.6: Determine whether the client determines the first login verification information V i and the second login verification information V i ′ are equal. If they are equal, the login is successful and the key negotiation phase is carried out; if they are not equal, the login fails.
[0027] Further, step 3.1: the client U samples the first secret value and the first error value in the center two-lane distribution Calculate b U =As U +e U , And generate a second random number n1, and obtain the first key negotiation information M0=(KD′ i ,n1,D U ,KP i ') send to the server S;
[0028] Step 3.2: After receiving the first key agreement information M0, the server S obtains At the same time, a second random number n is generated k2 and the third random number n k3 ,calculate and And use random doubling, cross-certification and modular integer function to calculate the doubling value Signal value Coordination Value
[0029] Step 3.3: The server S calculates the first authentication information Auth between itself and the client U U,Sk =H1(KD i ′||n1||n k2 ||c k ||D U ||b Sk ||KP i ′) and shared key SK U,Sk =H2(TDP i ′||n1||n k3 ||c k ||D U ||b Sk ), and the second key negotiation information M1=(Auth U,Sk ,n k2 ,n k3 ,σ k ,b Sk ) is sent to the client U;
[0030] Step 3.4: After receiving the second key agreement information N1, the client U calculates the second doubling value through the error protocol mechanism And use the signal value to obtain the second coordination value c k ′=rec(2w′ k ,σ k )∈{0,1} n , and calculate the second authentication information Auth′ U,Sk =H1(KD i ′||n1||nk2 ||c k ′||D U ||b Sk ||KP i ′);
[0031] Step 3.5: The client U determines whether the second authentication information is equal to the first authentication information. If not, the client terminates the session. If they are equal, the client calculates the shared key SKU. ,Sk =H2(TDP i ′||n1||n k3 ||c k ′||D U ||b Sk ).
[0032] In a second aspect, the present invention proposes a multi-server quantum-resistant two-factor identity authentication system, comprising: a client, a server, and a registration center. The system is used to implement the various steps of the multi-server quantum-resistant two-factor identity authentication method described above.
[0033] In a third aspect, the present invention proposes an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described above when executing the program.
[0034] In a fourth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program executes the method described above when executed by a processor.
[0035] The beneficial effects of the present invention are:
[0036] This invention combines the user's biometrics with the physical properties of the PUF as authentication factors, and in combination with the use of passwords, it addresses the weak security of passwords and improves security. By leveraging knowledge from lattice cryptography, using efficient sampling techniques, and combining them with an error coordination mechanism, the invention enables the identity authentication scheme to resist server leakage attacks and quantum computing attacks. The invention uses a more efficient central binomial distribution sampling technique, combined with an error coordination mechanism, to negotiate the generation process of the session key between the user and the server, thereby completing the entire key exchange process. This is an identity authentication scheme that can resist server leakage attacks and quantum computing attacks. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Figure 1 A schematic diagram of a process flow of a multi-server quantum-resistant two-factor identity authentication method provided by an embodiment of the present invention;
[0038] Figure 2A flowchart of the registration phase provided by an embodiment of the present invention;
[0039] Figure 3 A flowchart of the login authentication and key agreement phase provided by an embodiment of the present invention;
[0040] Figure 4 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0041] To make the objectives, technical solutions, and advantages of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly described below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0042] To facilitate description of the method provided by the present invention, some symbols involved in the embodiments of the present invention are first introduced:
[0043] Table 1
[0044]
[0045] like Figure 1 As shown, an embodiment of the present invention provides a multi-server quantum-resistant two-factor identity authentication method, including:
[0046] Registration phase: The client calculates the first temporary password information and the first temporary identity based on the identity identifier, biometrics and password entered by the user and combined with its own PUF, and completes the registration with the registration center through a secure channel. The registration center generates a first random number and first login verification information and returns them to the client, which stores the first random number and first login verification information.
[0047] Specifically, the registration center is a preset trusted server that provides registration functions for users and clients. The user enters a unique identity, biometrics, and password to the client U, and the client U calculates the first temporary password TPW based on its own physical unclonable function PUF. i and the first temporary identity TID i TPW i and TID i The registration information is sent to the registration center RC via a secure channel to complete the registration. After receiving the registration information, the registration center RC generates a first random number and generates first login verification information based on the received registration information and the first random number, and sends the first random number and the first login verification information to the corresponding client.
[0048] Login verification phase: The client calculates the second temporary password information and second temporary identity based on the identity identifier, biometrics and password entered by the user and combined with its own PUF, calculates the second login verification information based on the first random number, and determines whether the first login verification information and the second login verification information are equal. If they are equal, the login is successful and the key negotiation phase is carried out; if they are not equal, the login fails.
[0049] Specifically, during the login stage, the user needs to input the identity, biometrics and password used during the registration stage into the client U. After the client U identifies the information, it obtains the first login verification information and the first random number stored during registration, so that the client can calculate the second login verification information in the same way and compare it with the first login verification information. If they are equal, the login is successful.
[0050] Key agreement phase: The client calculates first key agreement information based on a first secret value and a first error value sampled from a central binomial distribution and sends the information to the server.
[0051] After receiving the first key agreement message, the server samples the second secret value and the second error value from a central binomial distribution, generates a second random number and a third random number, calculates the first authentication information and the shared key, obtains second key agreement information, and sends it to the client; the second key agreement information includes the first authentication information;
[0052] After receiving the second key negotiation information, the user end obtains the second authentication information through the error protocol mechanism and determines whether the second authentication information is equal to the first authentication information. If they are not equal, the session is terminated; otherwise, the shared key is calculated.
[0053] Specifically, the server is a server that provides services to users. After the user successfully logs in on the client, the client needs to negotiate a key with the server to ensure the security and stability of subsequent calls. Therefore, in this embodiment, the client first samples from a central binomial distribution to obtain a first secret value and a first error value. The secret value is used for key generation, and the error value is used to introduce noise to further enhance security. The client then calculates first key negotiation information and sends it to the server. After receiving the information, the server samples from the central binomial distribution and calculates first authentication information and a shared key based on random doubling, cross rounding, and modular rounding functions. The server then sends second key negotiation information consisting of the first authentication information to the client. The client calculates the second authentication information through an error negotiation mechanism and compares it with the first authentication information. If they are equal, the client continues to calculate the shared key. This shared key is consistent with the server's shared key, and subsequent calls can be made based on this key.
[0054] The method provided by the embodiment of the present invention solves the weak security of passwords and improves security by combining the user's biometrics with the physical characteristics of the PUF as authentication factors and using passwords.
[0055] Furthermore, the key negotiation phase specifically includes:
[0056] Step 1.1: User U i Select an Identifier ID i and password PW i , using the biometric extractor to obtain the biometric Bio i , the ID i 、PW i and Bio i Input client U;
[0057] Specifically, the biometric feature extractor is at least one of a fingerprint extractor, a facial recognition extractor, an iris extractor, and a voice recognition extractor, and is used to extract the user's biometric features.
[0058] Step 1.2: Client U uses the generating function of the fuzzy extractor to calculate (Ku, FI) = FE.Gen(Bio i ) obtain the user's first biometric key Ku and auxiliary information FI; wherein the auxiliary information FI is stored in the user U i On the client;
[0059] Specifically, the client uses a fuzzy function extractor to extract the biometric key and auxiliary information. The first biometric key Ku can only be obtained by the user U. i Bio i The auxiliary information FI is generated and stored in the client for subsequent authentication.
[0060] Step 1.3: The client U uses the first biometric key Ku as the parameter information of the PUF to obtain the first response value X i =PUF(Ku);
[0061] Specifically, the uniqueness of the user's biometrics and the physical uniqueness of the device PUF are combined, and the resulting response value is also unique, ensuring the security of registration and authentication.
[0062] Step 1.4: Client U calculates the first temporary password TPW i =H0(Ku||PW i ||X i ||n0) and the first temporary identity TID i =H0(X i ||ID i ||n0);
[0063] Step 1.5: The client U sends the registration information m0=(TPW i ,TID i ) sent to the registration center RC;
[0064] Step 1.6: The registration center RC receives the registration information m0=(TPW i ,TID i ), generate a random number n0 and calculate the first private key ad i =H0(TID i ||n0), KD i =H0(ad i ||n0),ap i =H0(TPW i ||n0), KP i =H0(ap i ||n0),
[0065] Step 1.7: The registration center RC calculates the first login verification information V i =H0(KDP i || n0) and sends the first login verification information to the user terminal U.
[0066] It can be understood that during the registration phase, the user provides the identity, password and biometric template to the client, and the information is encrypted using the information extraction step to generate the corresponding temporary identity and temporary password information to register with the registration center, ensuring the user's identity security.
[0067] Furthermore, the login verification phase specifically includes:
[0068] Step 2.1: User U i The ID of the registered i , Biometric template i and password PW i Enter the client U, and the client U obtains the corresponding first login verification information V i and auxiliary information FI;
[0069] Step 2.2: The client U uses the auxiliary information FI as the input of the fuzzy extractor regeneration function to calculate the second biometric key Ku′=FE.rep(Bio i ,FI);
[0070] Specifically, the client uses the auxiliary information stored in the registration phase as the input of the fuzzy extractor regeneration function to generate a second biometric key to complete the login authentication.
[0071] Step 2.3: The client U uses the second biometric key Ku′ as the parameter information of the PUF and calculates the second response value X i ′=PUF(Ku′);
[0072] Step 2.4: The client U calculates the second temporary password TPW′ i =H0(Ku′||PW i ||X i '||n0) and the second temporary identity TID' i =H0(X i ′||ID i ||n0);
[0073] Step 2.5: Client U calculates the second private key ad i ′=H0(TID i ′||n0), KD i ′=H0(ad i ′||n0),ap i ′=H0(TPW i ′||n0), KP i ′=H0(ap i ′||n0), And calculate the second login verification information V based on the second private key i ′=H0(KDP i ′||n0);
[0074] Step 2.6: Determine if the client U determines the first login verification information V i and the second login verification information V i ′ are equal. If they are equal, the login is successful and the key negotiation phase is carried out; if they are not equal, the login fails.
[0075] Furthermore, the key negotiation phase specifically includes:
[0076] Step 3.1: Client U samples the first secret value and the first error value from the center two-lane distribution Calculate b U =As U +e U , And generate a second random number n1, and obtain the first key negotiation information M0=(KD′ i ,n1,D U ,KP i ′) is sent to server S.
[0077] Specifically, the client samples a secret value and an error value from a central binomial distribution, where the secret value is used for key generation and the error value is used to introduce noise to enhance security.
[0078] Step 3.2: After receiving the first key agreement information M0, the server S samples the central binomial distribution to obtain At the same time, a second random number n is generated k2 and the third random number n k3 ,calculate and And use random doubling, cross rounding and modulo rounding functions to calculate the doubling value Signal value Coordination Value
[0079] Step 3.3: Server S calculates the first authentication information Auth between it and client U U,Sk =H1(KD i ′||n1||n k2 ||c k ||D U ||b Sk ||KP i ′) and shared key SK U,Sk =H2(TDP i ′||n1||n k3 ||c k ||D U ||b Sk ), and the second key negotiation information M1=(Auth U,Sk ,n k2 ,n k3 ,σ k ,b Sk ) is sent to client U;
[0080] Step 3.4: After receiving the second key negotiation information M1, the client U calculates the second doubling value through the error protocol mechanism And use the signal value to get the second coordination value c k ′=rec(2w′ k ,σ k )∈{0,1} n , and calculate the second authentication information Auth′ U,Sk =H1(KD i ′||n1||n k2 ||c k ′||D U ||b Sk ||KP i ′);
[0081] Specifically, the error agreement mechanism adopts the Peikert error coordination mechanism, which is a technology used to solve the error coordination problem in fault-tolerant learning, and can ensure that the communicating parties can extract a consistent key from the shared value with noise.
[0082] Assume that q is an integer greater than 2, define Define three intervals: I0 = {0, 1, ..., q / 4-1} (modq), I1 = {-q / 4, ..., -1} (modq), in
[0083] Cross-round function: <·> q,2 : Specifically defined as:
[0084] Modulo integer function: Specifically defined as:
[0085] Coordination function: rec: Specifically defined as:
[0086] Step 3.5: The client U determines whether the second authentication information is equal to the first authentication information. If not, the client terminates the session. If they are equal, the client calculates the shared key SK. U,Sk =H2(TDP i ′||n1||n k3 ||c k ′||D U ||b Sk ).
[0087] Based on the above embodiment, an embodiment of the present invention further provides a multi-server quantum-resistant two-factor identity authentication system, including: a client, a server, and a registration center. The system is used to implement each step of the multi-server quantum-resistant two-factor identity authentication method described in the above embodiment.
[0088] like Figure 4 As shown, an embodiment of the present invention further provides an electronic device, which may include: a processor (processor) 401, a communication interface (Communications Interface) 402, a memory (memory) 403 and a communication bus 404, wherein the processor 401, the communication interface 402, and the memory 403 communicate with each other via the communication bus 404. The processor 401 may call the logic instructions in the memory 403 to execute the method provided in the above embodiment, for example, including:
[0089] Registration phase: The client calculates the first temporary password and first temporary identity based on the user's input identity, biometrics, and password, combined with its own PUF, and completes registration with the registration center through a secure channel. The registration center generates a first random number and first login verification information and returns them to the client, which then stores them.
[0090] Login verification phase: The client calculates the second temporary password and second temporary identity based on the user's input identity, biometrics, and password in combination with its own PUF. It then calculates the second login verification information based on the first random number and determines whether the first and second login verification information are equal. If they are equal, the login is successful and the key negotiation phase begins; if they are not equal, the login fails.
[0091] Key agreement phase: The client calculates the first key agreement information based on the first secret value and the first error value sampled from the central binomial distribution and sends it to the server; after receiving the first key agreement message, the server samples the second secret value and the second error value from the central binomial distribution, and simultaneously generates a second random number and a third random number, calculates the second key agreement information and sends it to the client; after receiving the second key agreement information, the user end obtains the second authentication information through the error protocol mechanism, and determines whether the second authentication information is equal to the first authentication information. If they are not equal, the session is terminated; otherwise, the shared key is calculated.
[0092] In addition, when the logic instructions in the above-mentioned memory 403 are implemented in the form of a software functional unit and sold or used as an independent product, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0093] An embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the method provided in the above embodiment is implemented, for example, including:
[0094] Registration phase: The client calculates the first temporary password and first temporary identity based on the user's input identity, biometrics, and password, combined with its own PUF, and completes registration with the registration center through a secure channel. The registration center generates a first random number and first login verification information and returns them to the client, which then stores them.
[0095] Login verification phase: The client calculates the second temporary password and second temporary identity based on the user's input identity, biometrics, and password in combination with its own PUF. It then calculates the second login verification information based on the first random number and determines whether the first and second login verification information are equal. If they are equal, the login is successful and the key negotiation phase begins; if they are not equal, the login fails.
[0096] Key agreement phase: The client calculates the first key agreement information based on the first secret value and the first error value sampled from the central binomial distribution and sends it to the server; after receiving the first key agreement message, the server samples the second secret value and the second error value from the central binomial distribution, and simultaneously generates a second random number and a third random number, calculates the second key agreement information and sends it to the client; after receiving the second key agreement information, the user end obtains the second authentication information through the error protocol mechanism, and determines whether the second authentication information is equal to the first authentication information. If they are not equal, the session is terminated; otherwise, the shared key is calculated.
[0097] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A quantum-resistant two-factor identity authentication method for multiple servers, characterized in that: include: Registration phase: The client calculates a first temporary password and a first temporary identity based on the user's input identity, biometrics, and password, combined with its own PUF, and completes registration with the registration center through a secure channel. The registration center generates a first random number and first login verification information and returns them to the client, which then stores them. Login verification phase: The client calculates a second temporary password and a second temporary identity based on the user's input identity, biometrics, and password in combination with its own PUF. It then calculates a second login verification message based on the first random number and determines whether the first login verification message and the second login verification message are equal. If they are equal, the login is successful and the key negotiation phase proceeds. If they are not equal, the login fails. Key agreement phase: the client calculates first key agreement information based on a first secret value and a first error value sampled from a central binomial distribution and sends the information to the server; After receiving the first key agreement message, the server samples the second secret value and the second error value from the central binomial distribution, generates a second random number and a third random number, calculates the first authentication information and the shared key, obtains the second key agreement information, and sends it to the client; wherein the second key agreement information includes the first authentication information; After receiving the second key negotiation information, the user end obtains the second authentication information through the error protocol mechanism, and determines whether the second authentication information is equal to the first authentication information. If they are not equal, the session is terminated; otherwise, the shared key is continued to be calculated.
2. A quantum-resistant two-factor identity authentication method for multiple servers according to claim 1, characterized in that: The registration stage specifically includes: Step 1.1: User U i Select an ID i and password PW i , using the biometric extractor to obtain the biometric Bio i , the ID i 、The PW i and the Bio i Input client U; Step 1.2: The client U uses the generating function of the fuzzy extractor to calculate (Ku, FI) = FE.Gen (Bio i ) obtain the user's first biometric key Ku and auxiliary information FI; wherein the auxiliary information FI is stored in the user U i On the client; Step 1.3: The client U uses the first biometric key Ku as the parameter information of the PUF to obtain a first response value X i =PUF(Ku); Step 1.4: The client U calculates the first temporary password TPW i =H0(Ku||PW i ||X i ||n0) and the first temporary identity TID i =H0(X i ||ID i ||n0); Step 1.5: The client U sends the registration information m0=(TPW i ,TID i ) sent to the registration center RC; Step 1.6: The registration center RC receives the registration information m0=(TPW i ,TID i ), generate a random number n0, and calculate the first private key adi = H0 (TID i ||n0), KD i =H0(ad i ||n0),ap i =H0(TPW i ||n0), KP i =H0(ap i ||n0), Step 1.7: The registration center RC calculates the first login verification information V i =H0(KDP i || n0) and sends the first login verification information to the user terminal U.
3. A quantum-resistant two-factor identity authentication method for multiple servers according to claim 2, characterized in that: The login verification stage specifically includes: Step 2.1: User U i The ID of the registered i , Biometric template i and password PW i Input the client U, and the client U obtains the corresponding first login verification information V i and said auxiliary information FI; Step 2.2: The client U uses the auxiliary information FI as the input of the fuzzy extractor regeneration function to calculate the second biometric key Ku′=FE.rep(Bio i ,FI); Step 2.3: The client U uses the second biometric key Ku′ as the parameter information of the PUF to calculate the second response value X i ′=PUF(Ku′); Step 2.4: The client U calculates the second temporary password TPW i ′=H0(Ku′||PW i ||X i '||n0) and the second temporary identity TID i ′=H0(X i ′||ID i ||n0); Step 2.5: The client U calculates the second private key ad i ′=H0(TID i ′||n0), KD i ′=H0(ad i ′||n0),ap i ′=H0(TPW i ′||n0), KP i ′=H0(ap i ′||n0), And calculate the second login verification information V based on the second private key i ′=H0(KDP i ′||n0); Step 2.6: Determine whether the client determines the first login verification information V i and the second login verification information V i ′ are equal. If they are equal, the login is successful and the key negotiation phase is carried out; if they are not equal, the login fails.
4. A quantum-resistant two-factor identity authentication method for multiple servers according to claim 3, characterized in that: The key negotiation phase specifically includes: Step 3.1: The client U samples the first secret value and the first error value from the central binomial distribution Calculate b U =As U +e U , And generate a second random number n1, and obtain the first key negotiation information M0=(KD′ i ,n1,D U ,KP i ') send to the server S; Step 3.2: After receiving the first key agreement information M0, the server S obtains At the same time, a second random number n is generated k2 and the third random number n k3 ,calculate and And use random doubling, cross-certification and modular integer function to calculate the doubling value Signal value Coordination Value Step 3.3: The server S calculates the first authentication information Auth between itself and the client U U,Sk =H1(KD′ i ||n1||n k2 ||c k ||D U ||b Sk ||KP i ′) and shared key SK U,Sk =H2(TDP i ′||n1||n k3 ||c k ||D U ||b Sk ), and the second key negotiation information M1 = (Auth U,Sk ,n k2 ,n k3 ,σ k ,b Sk ) is sent to the client U; Step 3.4: After receiving the second key agreement information M1, the client U calculates the second doubling value through the error protocol mechanism And use the signal value to obtain the second coordination value c k ′=rec(2w′ k ,σ k )∈{0,1} n , and calculate the second authentication information Auth′ U,Sk =H1(KD i ′||n1||n k2 ||c k ′||D U ||b Sk ||KP i ′); Step 3.5: The client U determines whether the second authentication information is equal to the first authentication information. If not, the client terminates the session. If they are equal, the client calculates the shared key SK. U,Sk =H2(TDP i ′||n1||n k3 ||c k ′||D U ||b Sk ).
5. A quantum-resistant two-factor identity authentication system for multiple servers, characterized by: include: The client, server and registration center are used to implement the various steps of the multi-server quantum-resistant two-factor identity authentication method according to any one of claims 1 to 4.
6. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the method according to any one of claims 1 to 4 is implemented.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 4 is executed.