Face encryption and decryption method based on fuzzy insurance library

By converting real-valued face feature vectors into integer features and performing reliability calculations, a stable face feature template is generated, and the key generation process is simplified by using fuzzy vault technology, the complexity of facial recognition applications in the existing technology is solved. and security issues, achieving efficient and secure identity authentication and key management.

CN119416191AActive Publication Date: 2025-02-11XIDIAN UNIV
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411394976.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-08
Publication Date
2025-02-11
Estimated Expiration
2044-10-08

AI Technical Summary

Technical Problem

The application of existing fuzzy vault technology in facial recognition has problems such as high complexity, large calculation volume, and high real-time requirements, and it is difficult to effectively prevent forgery and deception and protect user privacy.

Method used

By converting real-valued face feature vectors into integer features and performing reliability calculations, a stable face feature template is generated; the fuzzy vault technology is used to simplify the key generation process, and the fuzzy vault is initialized using the face feature template to improve the System security and efficiency.

Benefits of technology

It improves the stability and security of the face feature set, simplifies the key generation process, enhances the security and efficiency of the system, and avoids the risk of fighting attacks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119416191A_ABST
    Figure CN119416191A_ABST
Patent Text Reader

Abstract

The invention discloses a face encryption and decryption method based on a fuzzy insurance library. The method mainly solves the problems that in the authentication process of an existing face image, a face feature template is prone to adversarial attacks, and safety and efficiency are low. According to the scheme, two face images are collected and preprocessed; inputting the preprocessed image into a FaceNet model to obtain two real value face feature vectors; mapping each face real value feature vector into an integer value feature set, comparing the two feature sets, identifying common integer values between the two feature sets, and forming a set; generating fuzzy insurance library parameters and configuration information by using the set; inputting the feature set into a fuzzy insurance library, outputting a key character string, and completing the encryption of the face image; and setting a new feature set and inputting the new feature set into the fuzzy insurance library to recover the key so as to complete decryption of the face image. According to the method, the countermeasure attack on the face feature template can be avoided, the security and the efficiency of the system are improved, and the method can be used for credible identity authentication and key security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the field of biometric authentication, and in particular relates to a face encryption and decryption method based on a fuzzy safe, which can be used for trusted identity authentication and key security. Background Art

[0002] Fuzzy Vault technology is an advanced method introduced to address security challenges in traditional biometric authentication systems. Traditional biometric authentication systems rely on features such as fingerprints, irises, and facial recognition, but these features are at risk of being stolen, forged, or used illegally. Fuzzy Vault binds biometrics to random keys and stores them securely in a vault, ensuring that even if the biometric data is leaked, attackers cannot easily recover or exploit the original key. Fuzzy Vault technology utilizes a complex encoding and decoding process so that the key can only be extracted when the correct biometrics are provided, significantly improving the security and reliability of the system.

[0003] Although fuzzy vaults have been widely studied and verified in theory, there are still many challenges in practical applications, especially the design and implementation of vaults for facial features. Facial biometrics have significant advantages in the field of biometrics, such as high recognition accuracy, user convenience, and contactless operation. However, the application of fuzzy vault technology in facial recognition still needs to overcome problems such as high complexity, large amount of calculation, and high real-time requirements. In addition, further research is needed on how to effectively prevent forgery and deception and protect user privacy. Therefore, fuzzy vaults have shown great potential in improving the security of biometric systems, but they still need to be continuously optimized and improved to achieve wider practical applications.

[0004] Rathgeb et al. proposed a fuzzy vault for facial features in their paper "Deep face fuzzy vault: Implementation and performance" (Computers & Security, 2022, 113: 102539.), combining the extracted features with randomly generated secret information to form a fuzzy vault. The principle is to combine the feature set with a secret polynomial to form an encrypted template. During the identity authentication process, if a sufficiently similar feature set is provided, the secret polynomial can be reconstructed and its correctness verified. The fuzzy vault uses polynomial encryption technology to ensure that even if part of the data is lost, it can still perform identity authentication. Even if the data is stolen, the attacker cannot restore the original facial information, thereby protecting the user's privacy. However, since this method does not perform reliability calculation on the extracted feature vector in the feature extraction stage, the attacker may bypass the identity authentication by generating a forged feature vector, posing the risk of adversarial attacks. At the same time, the construction of the fuzzy vault in this scheme requires a lot of storage space, especially when processing high-dimensional features, which is difficult to apply on resource-constrained devices.

[0005] Patent document with application number CN201610136315.8 discloses a method, device and system for PBOC transactions based on biometric encryption, which proposes to use a fuzzy vault algorithm to combine biometrics with private keys into a biometric template for identifying user identity information. During user identity authentication, the fuzzy vault projects the eigenvalues ​​of the biometrics onto a polynomial to generate helper data, and adds a large amount of interference data to cover up the real data to generate a fuzzy vault. When the user provides biometrics for identity authentication, the system extracts helper data from the fuzzy vault, reconstructs the polynomial, recovers the user's private key from the polynomial, and performs identity authentication. Since this method assumes that its biometric template is unique and irreversible, there are two problems: first, the biometric data itself has certain noise and variability, and it is difficult to ensure complete uniqueness when generating the template; second, although irreversibility can improve security, once errors or malicious interference occur during the template generation process, the user will be unable to recover the key. At the same time, since the fuzzy vault in this method relies on interference data to protect the user's key information, the addition of a large amount of interference data will cause the problem that the auxiliary data cannot be accurately extracted and the key cannot be correctly recovered.

[0006] The patent document with application number CN202310606687.2 discloses a personalized facial biometric key generation method based on deep neural network encoding. It pre-processes the facial image, uses a deep neural network to extract a personalized feature map, and then generates a stable biometric key through feature screening and binarization. In order to improve the stability and security of the key, it adopts a combination of error correction code and fuzzy extraction to make the biometric key achieve more than 99.5% stability and high strength in the application, which is suitable for symmetric cryptographic systems and public key cryptographic systems. Although the network can extract stable features, in actual applications, due to the different acquisition environments of facial images, it will affect the accuracy of feature extraction, and due to the complexity of the key generation process, it not only increases the computational overhead, but also reduces the efficiency of real-time applications. Summary of the invention

[0007] The purpose of the present invention is to address the deficiencies of the above-mentioned existing technologies and propose a face encryption method based on a fuzzy safe to avoid adversarial attacks on facial feature templates during the authentication process, simplify the complexity of the key generation process, and improve the security and efficiency of the system.

[0008] The technical idea for achieving the purpose of the present invention is to convert a real-valued feature vector into a set of integer features by adopting a feature conversion method that is independent of biometrics, and perform reliability calculation on the integer features, and finally obtain a reliable and stable facial feature template to avoid adversarial attacks on the facial feature template during the authentication process; simplify the complexity of the key generation process by adopting a fuzzy safe for key management; and improve the security and efficiency of the system by using the configuration information obtained by initializing the fuzzy safe with the facial feature template.

[0009] According to the above ideas, the implementation steps of the present invention include the following:

[0010] (1) Perform face detection, face alignment, and image normalization preprocessing on a face image in sequence, input the preprocessed image into the existing FaceNet model, and output a 1×128-dimensional real-valued face feature vector where v i is the i-th real value, n represents the size of the facial feature;

[0011] (2) Map the real-valued feature vector to obtain a set of registered and reliable integer values ​​W:

[0012] (2a) Map the real-valued eigenvector v to an integer-valued eigenvector Map the integer-valued feature vector q to a binary feature vector where q i is the original integer value of the ith jis the jth binary string, m is the length of the jth binary string;

[0013] (2b) All the indices that are 1 in the binary feature vector b form the first feature set: P1 = {j|b j =1};

[0014] (2c) Perform the same processing as steps (1), (2a) and (2b) on another face image to obtain the second feature set P2. Compare the feature sets P1 and P2 of the two face images and find the integer values ​​they share to form the registration set. where a k is the kth integer value, z is the number of integer values;

[0015] (3) Select parameters for the fuzzy vault according to the size of the registration set W, generate a key-value pair file for initializing the fuzzy vault, and let X be the registration input string, X′ be the authentication input string, ek be the key derivation factor string, and ek′ be the key derivation factor recovery string;

[0016] (4) Concatenate the registered set W with the originalwords string, perform hash calculation on the concatenation result, and assign the hash result to the registered input string X;

[0017] (5) Call the existing GenSketch function, that is, take the registration set W as the input of the function, return a string S containing the fuzzy vault configuration information, and add the assigned input string X to the string S;

[0018] (7) According to each reliable integer value a in the registration set W k Calculate the modulo integer value set e:

[0019]

[0020] Where p is a prime number, s k is a random integer value chosen uniformly from a finite field of p elements;

[0021] (8) Concatenate the modulo integer value set e with the keys string, perform hash calculation on the concatenation result, and assign the hash result to the key derivation factor string ek;

[0022] (9) Call the existing key derivation function f ek , that is, taking the assigned key derivation factor ek as the input of the function and returning a key string sk;

[0023] (10) During authentication, let W′ be the authentication set, and concatenate the authentication set W′ with the originalwords string, perform hash calculation on the concatenation result, assign the hash result to the authentication input string X′, and then determine whether the authentication input string X′ is consistent with the registration input string X obtained in step (4):

[0024] If they are consistent, then execute step (12).

[0025] Otherwise, execute step (11);

[0026] (11) Call the existing set recovery function RecSet, that is, take the registration input string X and the authentication set W′ obtained in step (4) as the input of the function, return a root value set R, and determine whether the root value set R is empty:

[0027] If it is empty, the entire authentication process is aborted.

[0028] Otherwise, assign the registration set W to the authentication set W′;

[0029] (12) Recover the modulo integer value set e based on the authentication set W′;

[0030] (13) Concatenate the recovered modulo integer value set e with the keys string, perform hash calculation on the concatenation result, and assign the hash result to the key derivation factor recovery string ek′;

[0031] (14) Call the existing key derivation function f ek , that is, taking the assigned key derivation factor recovery string ek′ as the input of the function, returning a key string sk, and outputting it to complete the encryption of the face.

[0032] Compared with the prior art, the present invention has the following advantages:

[0033] 1. The extracted facial feature set has higher stability and security.

[0034] The present invention performs mapping processing on two face images respectively during the process of mapping the real-valued feature vector to obtain two integer-valued feature sets. By comparing the two integer-valued feature sets, inconsistent and unstable feature values ​​between different images are filtered out, and only stable features that appear in both images are retained. This makes the new set composed of the retained integer values ​​more stable and reliable, and can avoid adversarial attacks on face feature templates during the authentication process.

[0035] 2. Simplifies the complexity of the key generation process and improves the security and efficiency of the system

[0036] The present invention simplifies the traditional key management and generation process by using the fuzzy vault technology. At the same time, since the threshold error correction technology is used in the fuzzy vault, a small number of errors can be tolerated, that is, in the registration and authentication process, it is not necessary to ensure that the integer value feature set input into the fuzzy vault is completely consistent, thereby improving the security and efficiency of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 It is the overall flow chart of the implementation of the present invention;

[0038] Figure 2 It is a sub-flow chart of the feature mapping process in the present invention;

[0039] Figure 3 is a sub-flow chart of the reliability calculation process in the present invention;

[0040] Figure 4 It is a sub-flow chart of key generation in the present invention;

[0041] Figure 5 It is a sub-flow chart of key recovery in the present invention. DETAILED DESCRIPTION

[0042] The embodiments of the present invention are further described in detail below with reference to the accompanying drawings.

[0043] The implementation of this example is based on two entities, the user and the server. Its implementation process includes six stages, namely, face feature extraction stage, feature mapping stage, reliability calculation stage, fuzzy vault parameter generation stage, secret generation stage, and secret recovery stage. Through these six stages, the face image is converted into a key string, that is, an input face image is converted into an output key string to realize the encryption of the face image.

[0044] Reference Figure 1 , the implementation steps of this example are as follows:

[0045] Step 1: facial feature extraction.

[0046] Face feature extraction is the first stage of this example, and its implementation steps are as follows:

[0047] 1.1) Use the camera to collect two facial images of the user, and align, crop, and perform color and lighting standardization preprocessing on the two facial images to ensure the consistency of image quality and the accuracy of feature extraction;

[0048] 1.2) Select the existing FaceNet model, which is a deep learning model proposed by Google for facial feature extraction, recognition and verification. The core idea of ​​the FaceNet model is to map facial images into a Euclidean space, so that the faces of the same person are closer in the space, while the faces of different people are farther away. In this way, face recognition and verification can be performed by calculating the Euclidean distance;

[0049] 1.3) Input the two preprocessed face images into the FaceNet model to extract deep features of the images, and finally output two 1×128-dimensional first real-valued face feature vectors and the second real-valued facial feature vector where v i is the ith real value, v j is the jth real value, and n represents the size of the facial feature.

[0050] Step 2: Perform feature mapping on the first real-valued facial feature vector v1 and the second real-valued facial feature vector v2 to obtain a first feature set P1 and a second feature set P2.

[0051] The feature mapping stage is the second stage of this example, which maps the real-valued face feature vector extracted in the face feature extraction stage into an integer-valued feature vector.

[0052] Reference Figure 2 , the implementation steps of this stage are as follows:

[0053] 2.1) Construct the first feature set P1:

[0054] 2.1.1) Estimate the probability density of all n feature elements in the first real-valued feature vector v1, divide the feature space of each feature element into intervals with integer labels according to the obtained probability density, and quantize each real-valued element of the first real-valued feature vector v1 to one of the intervals, thereby completing the quantization of the first real-valued feature vector v1 into the first integer-valued feature vector process, where q i is the integer value in the first integer-valued eigenvector q1;

[0055] 2.1.2) Binarize each integer value in the first integer-valued feature vector q1 into a corresponding binary string using a direct binary representation method, and then concatenate all binary strings to generate a final binary feature representation, completing the binarization of the first integer-valued feature vector q1 into the first binary feature vector process, where b j is the binary string in the first binary feature vector b1, and m is the binary string b j Length;

[0056] 2.1.3) Take all the indices of 1 in the first binary feature vector b1 and form the first feature set P1 = {j|b j =1}, completing the process of mapping the first binary feature vector b1 to the first feature set P1.

[0057] 2.2) Construct the second feature set P2:

[0058] 2.2.1) Estimate the probability density of all n feature elements in the second real-valued feature vector v2, divide the feature space of each feature element into intervals with integer labels according to the obtained probability density, and quantize each real-valued element of the real-valued feature vector v2 to one of the intervals, thereby completing the quantization of the second real-valued feature vector v2 into a second integer-valued feature vector process, where q′ i is the integer value in the second integer-valued eigenvector q2;

[0059] 2.2.2) Binarize each integer value in the second integer-valued feature vector q2 into a corresponding binary string using a direct binary representation method, and then concatenate all binary strings to generate a final binary feature representation, completing the binarization of the second integer-valued feature vector q2 into a second binary feature vector process, where b′ j is the binary string in the second binary feature vector b2, and m is the binary string b′ j Length;

[0060] 2.2.3) Take all the indices of 1 in the binary feature vector b2 and use them to form the second feature set P2 = {j|b′ j =1}, completing the process of mapping the second binary feature vector b2 to the second feature set P2;

[0061] Step 3: Calculate the reliability of the first feature set P1 and the second feature set P2 to obtain the registration set W.

[0062] The reliability calculation phase is the third phase of this example, which is to obtain the registration set W using the integer-valued feature vector.

[0063] Reference Figure 3 , the implementation steps of this stage are as follows:

[0064] 3.1) Compare the first feature set P1 and the second feature set P2 to identify the integer values ​​common between them;

[0065] 3.2) Filter out inconsistent and unstable feature values ​​between the first feature set P1 and the second feature set P2 based on the shared integer value. The instability here means that the features extracted in the two facial feature extraction processes have different feature values. Such unstable feature values ​​will cause facial feature decryption failure;

[0066] 3.3) Keep the stable features obtained after filtering to obtain a set of registered reliable integer values where a k is the kth retained integer value, and z is the number of all retained integer values.

[0067] Step 4: Generate fuzzy safe parameters and configuration information string S based on the registration set W.

[0068] The Fuzzy Vault is a cryptographic scheme based on fuzzy logic, mainly used to protect the privacy of biometric data such as fingerprints, irises, and facial features, while providing a secure authentication mechanism. It combines the concepts of fuzzy extractors and secret sharing, allowing reliable authentication even when biometric data is damaged or incomplete.

[0069] The use of the fuzzy vault must first define its parameters, which is the fourth stage of this example. This stage is to define parameters for the fuzzy vault according to the size of the registration set W, generate a key-value pair file for initializing the fuzzy vault, and use the registration set W to generate the configuration information string S of the fuzzy vault. According to the key-value pair file and the configuration information string S, the fuzzy vault is used to encrypt and protect the face image. The specific implementation is as follows:

[0070] 4.1) Define the following parameters:

[0071] The correct data threshold, which represents the minimum number of correct integer values ​​that must be in the authentication set W′, and this number must be greater than half the size of the registration set W. Let W′ be the authentication set;

[0072] The fuzzy vault size, which represents the number of integer values ​​that can be accommodated in the fuzzy vault;

[0073] A prime number p is used to represent a finite field of order p.

[0074] Salt value, used to increase the randomness of key derivation;

[0075] A set of random values ​​used for key recovery during the authentication phase, where each element is a random value from a finite field of order p. uniformly randomly selected from;

[0076] The number of polynomial coefficients is t

[0077] The parameters selected above are all positive integer values.

[0078] 4.2) Configuration information string S:

[0079] 4.2.1) Input the registration set W and construct a polynomial with the registration set W as the root

[0080] 4.2.2) Expand the polynomial p(x) to obtain the expanded polynomial x z +∑ i∈[0,z-1] α i x i , where α i is the i-th coefficient of the expanded polynomial;

[0081] 4.2.3) Output the first t coefficients (α z-1 ,…,α z-t ), convert these t coefficients into character data in turn, and concatenate these character data to form a character string S of the fuzzy safe configuration information.

[0082] Step 5: Input the registration set W into the fuzzy safe to generate a key.

[0083] Key generation is the fifth stage of this example, which is to input the registration set W into the fuzzy safe to output a key string sk to complete the encryption of the face image.

[0084] Reference Figure 4 , the implementation steps of this stage are as follows:

[0085] 5.1) According to each reliable integer value a in the registration set W k Calculate the modulo integer value set e:

[0086]

[0087] 5.2) Select hash algorithms to perform hash operations on different strings:

[0088] The existing hash algorithms include: MD4 hash algorithm, MD5 hash algorithm, and Hash 256 algorithm. This example uses but is not limited to the existing Hash 256 algorithm, which is a widely used cryptographic hash function belonging to the Secure Hash Algorithm 2 series, designed by the National Security Agency of the United States and released by the National Institute of Standards and Technology. The Hash 256 algorithm is widely used in data integrity verification, digital signatures, cryptographic applications, and blockchain technology.

[0089] 5.2.1) Convert each integer value in the modulo integer value set e into character data, and add them to the keys string in sequence to obtain a concatenated string; then use the hash 256 algorithm to convert the concatenated string into a fixed-length hash value to obtain the key derivation factor string ek;

[0090] 5.2.2) Use the Hash 256 algorithm to convert the key derivation factor ek into a fixed-length hash value, and use the hash value as the key derivation function f ek The output key string sk is saved on the server.

[0091] Step 6: Input the authentication set W′ into the fuzzy vault to recover the key.

[0092] Key recovery is the sixth stage of this example, which is to verify the correctness of the key string sk output in step 5, that is, to input the authentication set W′ into the fuzzy safe to output a key string sk to complete the decryption of the face image.

[0093] Reference Figure 5 , the implementation steps of this stage are as follows:

[0094] 6.1) Recover the modulo integer value set e based on the authentication set W′:

[0095] 6.1.1) Input the authentication set W′ and the first t coefficients of the expanded polynomial (α z-1 ,…,α z-t ), utilization coefficient (α z-1 ,…,α z-t ) constructs a first term with coefficient 1 and other t coefficients (α z-1 ,…,α z-t ) of a high-order polynomial p high ;

[0096] 6.1.2) Input the authentication set W′ into the polynomial p high The calculated value set G is obtained from the existing Reed-Solomon decoding algorithm, and the calculated value set G is decoded to obtain the low-order polynomial p low ;

[0097] 6.1.3) Using a high-order polynomial p high Subtract the low-degree polynomial p low Get the difference polynomial: p diff =p high -p low , and determine the difference polynomial p diff Whether there are different roots, if yes, output all roots and assign the registration set W to the authentication set W′, if no, the authentication is terminated;

[0098] 6.1.4) Perform modulo operation:

[0099] 6.2) Convert each integer value in the recovered modulo integer value set e into character data, and add them to the keys string in sequence to obtain a concatenated string; then use the hash 256 algorithm to convert the concatenated string into a fixed-length hash value to obtain the key derivation factor recovery string ek′;

[0100] 6.3) Use the Hash 256 algorithm to convert the key derivation factor recovery string ek′ into a fixed-length hash value, and use the hash value as the key derivation function f ek Recover the key string sk and complete the decryption of the face image.

[0101] The above description is only a specific example of the present invention and does not constitute any limitation to the present invention. It is obvious that for professionals in this field, after understanding the content and principles of the present invention, it is possible to make various modifications and changes in form and details without departing from the principles and structures of the present invention. However, these modifications and changes based on the ideas of the present invention are still within the scope of protection of the claims of the present invention.

[0102] It should be noted that the serial number markings in this specification and claims are only for a clearer description of the implementation scheme, and the order of the serial numbers is not limited.

Claims

1. A face encryption and decryption method based on a fuzzy safe, characterized in that: The steps include: (1) Perform face detection, face alignment, and image normalization preprocessing on a face image in sequence, input the preprocessed image into the existing FaceNet model, and output a 1×128-dimensional real-valued face feature vector where v i is the i-th real value, n represents the size of the facial feature; (2) Map the real-valued feature vector to obtain a set of registered and reliable integer values ​​W: (2a) Map the real-valued eigenvector v to an integer-valued eigenvector Map the integer-valued feature vector q to a binary feature vector where q i is the original integer value of the ith element, b j is the jth binary string, m is the length of the jth binary string; (2b) All the indices that are 1 in the binary feature vector b form the first feature set: P1 = {j|b j =1}; (2c) Perform the same processing as steps (1), (2a) and (2b) on another face image to obtain the second feature set P2. Compare the feature sets P1 and P2 of the two face images and find the integer values ​​they share to form the registration set. where a k is the kth integer value, z is the number of integer values; (3) Select parameters for the fuzzy vault according to the size of the registration set W, generate a key-value pair file for initializing the fuzzy vault, and let X be the registration input string, X′ be the authentication input string, ek be the key derivation factor string, and ek′ be the key derivation factor recovery string; (4) Concatenate the registered set W with the originalwords string, perform hash calculation on the concatenation result, and assign the hash result to the registered input string X; (5) Call the existing GenSketch function, that is, take the registration set W as the input of the function, return a string S containing the fuzzy vault configuration information, and add the assigned input string X to the string S; (7) According to each reliable integer value a in the registration set W k Calculate the modulo integer value set e: Where p is a prime number, s k is a random integer value chosen uniformly from a finite field of p elements; (8) Concatenate the modulo integer value set e with the keys string, perform hash calculation on the concatenation result, and assign the hash result to the key derivation factor string ek; (9) Call the existing key derivation function f ek , that is, taking the assigned key derivation factor ek as the input of the function, returning a key string sk to complete the encryption of the face image; (10) During authentication, let W′ be the authentication set, and concatenate the authentication set W′ with the originalwords string, perform hash calculation on the concatenation result, assign the hash result to the authentication input string X′, and then determine whether the authentication input string X′ is consistent with the registration input string X obtained in step (4): If they are consistent, then execute step (12). Otherwise, execute step (11); (11) Call the existing set recovery function RecSet, that is, take the registration input string X and the authentication set W′ obtained in step (4) as the input of the function, return a root value set R, and determine whether the root value set R is empty: if it is empty, terminate the entire authentication process; otherwise, assign the registration set W to the authentication set W′; (12) Recover the modulo integer value set e based on the authentication set W′; (13) Concatenate the recovered modulo integer value set e with the keys string, perform hash calculation on the concatenation result, and assign the hash result to the key derivation factor recovery string ek′; (14) Call the existing key derivation function f ek , that is, taking the assigned key derivation factor recovery string ek′ as the input of the function, returning a key string sk, and outputting it to complete the decryption of the face image.

2. The method according to claim 1, characterized in that: Step (2a) maps the real-valued feature vector v to an integer-valued feature vector q by using the existing quantization method of equal probability intervals. First, the probability density of all n feature elements in the real-valued feature vector v is estimated, and then the real-value range is divided into multiple equal probability intervals. The real-valued data is represented as the corresponding interval number to obtain the integer-valued feature vector 3. The method according to claim 1, characterized in that: In step (2a), the integer-valued feature vector q is mapped to a binary feature vector b by using the existing binary reflected Gray code method. Each element in the integer-valued feature vector q is first converted into a binary representation, and then the binary representation is shifted right by one bit. Finally, the binary representation after the right shift is added to the original binary representation to obtain the binary feature vector b.

4. The method according to claim 1, characterized in that: In step (3), the parameters for the fuzzy vault are selected according to the size of the registration set W, and the following parameters are selected: The correct data threshold, which represents the authentication set W ′ There must be a minimum number of correct integer values ​​in , and this number must be greater than half the size of the registration set W; The fuzzy vault size, which represents the number of integer values ​​that can be accommodated in the fuzzy vault; A prime number p, used to define a finite field of order p Salt value, used to increase the randomness of key derivation; A set of random values ​​used for key recovery during the authentication phase, where each element is a random value from a finite field of order p. uniformly randomly selected from; The number of polynomial coefficients t; The parameters selected above are all positive integer values.

5. The method according to claim 1, characterized in that: In step (4), the hash calculation is performed on the concatenated registration set W and the originalwords string, which is to first convert each integer value in the registration set W into character data, and then add it to the originalwords string in sequence to obtain the concatenated string; Then use the existing hash 256 algorithm to convert the concatenated string into a hash value of fixed length.

6. The method according to claim 1, characterized in that: In step (5), the registration set W is used as the input of the GenSketch function, and a string S containing the fuzzy vault configuration information is returned. The registration set W is first input; then a polynomial with the registration set W as the root is constructed. And expand it to get the expanded polynomial Finally, output the first t coefficients of the expanded polynomial (α z-1 ,…,α z-t ), convert these t coefficients into character data in turn, and concatenate these character data to form a string S of fuzzy vault configuration information, where α i is the i-th coefficient of the expanded polynomial.

7. The method according to claim 1, characterized in that: In step (11), the registered input string X and the authentication set W′ obtained in step (4) are used as the input of the function, and a root value set R is returned, which is the first input authentication set W′ and the first t coefficients (α z-1 ,…,α z-t ); Reuse coefficient (α z-1 ,…,α z-t ) constructs a first term with coefficient 1 and other t coefficients (α z-1 ,…,α z-t ) of a high-order polynomial p high ; Input the authentication set W′ into the polynomial p high Get the calculated value set G; Then use the existing Reed-Solomon decoding algorithm to decode the calculated value set G to obtain the low-order polynomial p low ; Then use the high-order polynomial p high Subtract the low-degree polynomial p low Get the difference polynomial: p diff =p high -p low , and determine the difference polynomial p diff Whether there are different roots, if so, output all the roots, if not, the function terminates.

8. The method according to claim 1, characterized in that: In the step (9), the assigned key derivation factor ek is used as the input of the function, and a key string sk is returned. The assigned key derivation factor ek is converted into a hash value of a fixed length using the existing hash 256 algorithm, and the hash value is used as the key derivation function f ek The output key string sk; In the step (14), the assigned key derivation factor recovery string ek′ is used as the input of the function, and a key string sk is returned. The assigned key derivation factor recovery string ek′ is converted into a hash value of a fixed length using the existing hash 256 algorithm, and the hash value is used as the key derivation function f ek The output key string sk.

9. The method according to claim 1, characterized in that: In step (8), a hash calculation is performed on the concatenated modulo integer value set e and the keys string result, which is to first convert each integer value in the modulo integer value set e into character data, and add it to the keys string in sequence to obtain a concatenated string; then use the existing hash 256 algorithm to convert the concatenated string into a hash value of a fixed length.

10. The method according to claim 1, characterized in that: In step (10), the hash calculation of the result of concatenating the authentication set W′ and the originalwords string is performed by first converting each integer value in the authentication set W′ into character data and sequentially adding it to the originalwords string to obtain the concatenated string; Then use the existing hash 256 algorithm to convert the concatenated string into a hash value of fixed length.

11. The method according to claim 1, characterized in that: In step (13), the hash calculation is performed on the concatenation result of the restored modulo integer value set e and the keys string. Each integer value in the restored modulo integer value set e is first converted into character data, and is sequentially added to the keys string to obtain a concatenated string; then the existing hash 256 algorithm is used to convert the concatenated string into a hash value of a fixed length.

Citation Information

Patent Citations

  • Method, device and system for PBOC transaction based on biometric encryption

    CN106709716A

  • Personalized facial biometric key generation method based on deep neural network encoding

    CN116628660B

  • Fuzzy strong box remote identity authentication method based on face feature

    CN102215223A

  • Apparatus and computer-implemented method for fingerprint based authentication

    CN106663204A

  • Fuzzy vault implementation method based on fingerprint and face feature level fusion

    CN108429614A