A biometric authentication method and system for protecting user privacy
Through homomorphic encryption and privacy intersection technology, the problem of privacy leakage in biometric authentication is solved, and low-cost, high-precision user privacy protection is achieved.
Patent Information
- Application Number
- CN202510630912.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2045-05-16
AI Technical Summary
The existing biometric authentication system cannot effectively protect user privacy, leading to privacy leakage problems.
Homomorphic encryption and privacy intersection technology are used to encrypt features during biometric authentication, and user privacy is protected through collaborative computing between the client and the server.
It achieves all-round privacy protection of user biometrics, similarity and comparison thresholds, reduces computing costs, and improves authentication accuracy and efficiency.
Smart Images

Figure CN120150922B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application relates to a biometric authentication method and system for protecting user privacy, and belongs to the technical field of cryptography. BACKGROUND
[0002] Homomorphic encryption is a public key encryption system that can perform addition and multiplication operations on encrypted data. The input ciphertext, intermediate calculation result and final calculation result cannot be decrypted by anyone except the private key holder, ensuring privacy and security.
[0003] Private set intersection is a secure multi-party computation task that allows two or more parties to know the intersection of the set held without revealing other data information. The private set intersection implementation based on homomorphic encryption can reduce the number of interactions of private set intersection, and its packing feature can meet the needs of small and medium-sized private set intersection tasks.
[0004] Biometric authentication is commonly used in artificial, pattern recognition, machine learning, deep learning and other methods to extract corresponding features from user biological data. Since similar biological data input can produce similar features, calculating the similarity of the features and setting a reasonable threshold can achieve high-accuracy biometric authentication. General biometric authentication systems cannot protect biological features, resulting in privacy leakage. SUMMARY
[0005] The purpose of the application is to provide a biometric authentication method and system for protecting user privacy based on homomorphic encryption and private set intersection, which uses homomorphic encryption to protect features based on the paradigm of biometric authentication, and is suitable for privacy protection of any biometric authentication.
[0006] To achieve the above purpose, the application adopts the following technical solutions.
[0007] A biometric authentication method for protecting user privacy, comprising the following steps:
[0008] 1) In the user registration phase, the client collects user biological features and performs quantitative encoding, encrypts using a private key, and generates encrypted features; at the same time, a user ID is generated, and the user ID and encrypted features are sent to the server together, and stored in the ciphertext database of the server;
[0009] 2) In the user authentication phase, the client collects the user's biological characteristics at the current time and quantitatively encodes them to generate encrypted features according to the user's authentication request; at the same time, the server extracts the corresponding encrypted features from the ciphertext database according to the user ID, and performs homomorphic similarity calculation on the two encrypted features, and generates homomorphic similarity ciphertext based on a random number and sends it to the client; the client re-encrypts the homomorphic similarity ciphertext after decryption, generates ciphertext and sends it to the server; the server performs homomorphic private intersection on the ciphertext, generates new ciphertext and returns it to the client; the client decrypts the ciphertext and judges whether to pass the authentication according to the decryption result.
[0010] Further, in the initialization phase, the client generates homomorphic encryption private key, public key and relinearization key, wherein the private key is kept in the client, and the public key and relinearization key are sent to the server.
[0011] Further, in the user registration phase, the step of quantitatively encoding the user's biological characteristics includes: multiplying the biological characteristics by an integer and taking the integer part to obtain the plaintext polynomial .
[0012] Further, in the user authentication phase, the step of quantitatively encoding the user's biological characteristics at the current time includes: multiplying the biological characteristics by an integer and taking the integer part to obtain the plaintext polynomial .
[0013] Further, the step of homomorphic similarity calculation includes: performing homomorphic multiplication on two encrypted features and to obtain ; then a random polynomial is randomly taken and added to to obtain the homomorphic similarity ciphertext .
[0014] Further, the step of re-encrypting the homomorphic similarity ciphertext by the client after decryption includes: the client decrypts the homomorphic similarity ciphertext using the private key, then normalizes the decryption result by dividing by the quantization factor γ to obtain the normalized similarity, and then re-encrypts the normalized similarity using the private key to obtain new ciphertext .
[0015] Further, the step of performing homomorphic private intersection on the ciphertext by the server includes: the server adds random numbers to the threshold interval and shuffles the order, then encodes it into an NTT form polynomial , subtracts the ciphertext sent by the client from the polynomial to obtain ; then additional random selection a non-zero random number, encoded as a polynomial in NTT form , and multiplied by , to obtain ciphertext .
[0016] Further, the step of judging whether the authentication passes according to the decryption result comprises: judging whether there is 0 in the decryption result, if there is 0, the authentication passes, otherwise, the authentication does not pass.
[0017] A biological recognition verification system based on homomorphic encryption, comprising:
[0018] A client, configured to collect biological features of a user, perform a registration and authentication process of the user, encrypt the collected biological features and send them to a server, and decrypt received verification results and make an authentication judgment;
[0019] A server, configured to store a ciphertext database of encrypted features of the user, and extract encrypted features of the user according to a query request in a user authentication stage, perform homomorphic similarity calculation with encrypted features collected at present, and perform homomorphic private intersection calculation.
[0020] The present application has the following beneficial effects.
[0021] 1. The present application adopts homomorphic similarity calculation and homomorphic private intersection, protects biological features of the user, similarity, comparison threshold and other intermediate results, and protects data and privacy of all parties in the whole system.
[0022] 2. The homomorphic similarity calculation of the present application only needs one homomorphic multiplication, and the homomorphic multiplication is optimized, so that the whole system has low calculation cost, privacy and high precision.
[0023] 3. The homomorphic private intersection of the present application only needs polynomial multiplication and addition to complete, and the efficiency of homomorphic similarity calculation is improved by using NTT, which is better than other multi-round multi-party secure calculation. BRIEF DESCRIPTION OF DRAWINGS
[0024] Figure 1 is a biological feature authentication process diagram for protecting user privacy in embodiment 1 of the present application. DETAILED DESCRIPTION
[0025] In order to make the technical features and technical effects of the above technical solutions of the present application more obvious and easy to understand, the following embodiments are described in detail.
[0026] The present embodiment provides a biological feature authentication system for protecting user privacy, comprising a client and a server which can communicate with each other, the client stores a decryption private key, and the client participates in homomorphic private intersection calculation, such as Figure 1The specific steps are shown, and specifically include:
[0027] Client: holding the decryption private key, the terminal device used by the user during registration and authentication, responsible for collecting the user's biometric features, generating the user's encrypted features, and participating in homomorphic privacy intersection calculation;
[0028] Server: holding the encrypted database, storing the user's encrypted features, responsible for executing homomorphic feature comparison and privacy intersection calculation.
[0029] Based on the above system, the specific steps of biometric feature authentication for protecting user privacy are as follows.
[0030] 1. Initialization.
[0031] The client generates homomorphic encryption private key, public key and relinearization key, wherein the private key is only reserved locally in the client; the public key and the relinearization key are sent to the server for homomorphic similarity calculation.
[0032] 2. User feature collection.
[0033] The client collects user biological data through the device, and obtains user biometric features by using a feature extraction method .
[0034] 3. User registration.
[0035] The client uses coefficient coding on the collected user biometric features, multiplies each feature by an integer γ and takes the integer to perform quantization processing, and constructs a plaintext polynomial . The private key is used to encrypt the above plaintext polynomial, to generate user encrypted features , , wherein is a power of 2, is a ciphertext modulus; and a user ID is generated at the same time. The client sends the user ID and the corresponding encrypted features to the server, which stores them in the encrypted database.
[0036] 4. Homomorphic similarity calculation.
[0037] When the user initiates an authentication request, the client collects user biometric feature data again, and obtains a feature vector by using the same feature extraction method. The client uses coefficient coding on the newly collected features to construct a plaintext polynomial . The client uses the private key to encrypt the polynomial to generate new encrypted features , and sends them to the server.
[0038] The server queries the corresponding encrypted features from the encrypted database according to the ID provided by the user, and performs homomorphic multiplication (see Figure 1 in sim), wherein represents a homomorphic multiplication operation, and mod extracts the constant term, and the inner product result is obtained . Subsequently, in order to perform the next homomorphic privacy intersection calculation, the server randomly generates a polynomial , calculates the homomorphic similarity ciphertext (see Figure 1 in sim+r), and sends it to the client.
[0039] 5. Homomorphic privacy intersection.
[0040] After the client receives the homomorphic similarity ciphertext , the private key is used for decryption, and the decrypted result is divided by the quantization factor γ to perform normalization processing, so as to obtain the normalized similarity, and ensure that the data precision is about 0.01. Finally, the private key is used to re-encrypt the normalized similarity, to obtain the ciphertext , and send it to the server.
[0041] The server performs homomorphic privacy intersection, first adds the random number to the threshold interval to obtain }, shuffles the order, and encodes it into an NTT form polynomial , and calculates the subtraction with the ciphertext , to obtain . Subsequently, additional random selection of non-zero random numbers , is the plaintext modulus, encoded into an NTT form polynomial , the plaintext ciphertext multiplication is calculated, to obtain the ciphertext , and returned to the client.
[0042] 6. User identity authentication.
[0043] After the client receives the ciphertext returned by the server, the private key is used for decryption, and it is judged whether 0 exists in the decrypted result. If 0 exists in the decrypted result, it indicates that the similarity between the newly collected features and the registered features is within the legal threshold range, and the authentication is passed; otherwise, it indicates that the similarity is not within the legal threshold range, and the authentication fails.
[0044] Although the present application has been disclosed as above with examples, it is not intended to limit the present application, and appropriate modifications or equivalent replacements of the technical solutions of the present application made by those skilled in the art should be covered within the protection scope of the present application, and the protection scope of the present application is limited by the claims.
Claims
1. A biometric authentication method for protecting user privacy, characterized in that: The following steps are involved: 1) During the user registration phase, the client collects the user's biometrics, quantifies and encodes them, and encrypts them using a private key to generate encrypted features. It also generates a user ID and sends both the user ID and the encrypted features to the server, which then stores them in the server's encrypted database. 2) During the user authentication phase, the client collects the user's biometric features at the current moment and quantizes and encodes them according to the user's authentication request to generate an encrypted feature. Simultaneously, the server extracts the corresponding encrypted feature from the secret database based on the user ID, performs homomorphic similarity calculations on the two encrypted features, and generates a homomorphic similarity ciphertext based on a random number, which is then sent to the client. The client decrypts the homomorphic similarity ciphertext and re-encrypts it to generate a ciphertext, which it then sends to the server. The server performs homomorphic privacy intersection on the ciphertext, generates a new ciphertext, and returns it to the client. The client decrypts the ciphertext and determines whether the authentication is successful based on the decryption result; The steps of re-encrypting the homomorphic similarity ciphertext after decryption by the client include: the client decrypts the homomorphic similarity ciphertext using the private key, then normalizes the decrypted result by dividing it by the coefficient quantization factor γ to obtain the normalized similarity, and then re-encrypts the normalized similarity using the private key to obtain the new ciphertext The steps for the server to perform homomorphic privacy intersection on the ciphertext include: the server adds random numbers to the threshold interval, scrambles the order, and then encodes them into a polynomial in the form of NTT , the ciphertext sent by the client Subtract the polynomial ,get ; followed by an additional random selection non-zero random numbers, encoded as a polynomial of NTT form , and with Multiply and get the ciphertext .
2. The method according to claim 1, wherein During the initialization phase, the client generates a homomorphically encrypted private key, public key, and relinearization key. The private key remains on the client, and the public key and relinearization key are sent to the server.
3. The method according to claim 1, wherein During the user registration phase, the steps for quantifying and encoding the user's biometrics include: Multiply by an integer and round to get the plaintext polynomial .
4. The method according to claim 1, wherein In the user authentication stage, the steps of quantifying and encoding the user's biometric characteristics at the current moment include: Multiply by an integer and round to get the plaintext polynomial .
5. The method according to claim 1, wherein The steps of homomorphic similarity calculation include: and Performing homomorphic multiplication, we get ; Then randomly pick a random polynomial , add it to In the example, we get the homomorphic similarity ciphertext .
6. The method according to claim 1, wherein The step of judging whether the authentication is passed according to the decryption result includes: judging whether there is 0 in the decryption result, if there is 0, the authentication is passed, otherwise the authentication is failed.
7. A biometric authentication system based on homomorphic encryption, used to execute the method according to any one of claims 1 to 6, characterized in that: include: The client is used to collect user biometrics, perform user registration and authentication processes, encrypt the collected biometrics and send them to the server, and decrypt the received verification results and make authentication decisions; The server is used to store the secret database of user encrypted features, and extract the user encrypted features according to the query request during the user authentication phase, perform homomorphic similarity calculation with the currently collected encrypted features, and perform homomorphic privacy intersection calculation.
Citation Information
Patent Citations
Efficient and accurate privacy intersection system, method and device
CN111914279A
Biometric authentication method and system based on homomorphic encryption
CN115913580A