Fingerprint recognition method and device

By combining perceptual hashing and searchable encryption algorithms, fingerprint data features are extracted and matched in a fingerprint encrypted cloud database, solving the problems of insufficient recognition speed and accuracy in large-scale fingerprint databases and achieving efficient and secure fingerprint recognition.

CN116884042BActive Publication Date: 2026-06-09INDUSTRIAL AND COMMERCIAL BANK OF CHINA

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INDUSTRIAL AND COMMERCIAL BANK OF CHINA
Filing Date
2023-07-12
Publication Date
2026-06-09

Smart Images

  • Figure CN116884042B_ABST
    Figure CN116884042B_ABST
Patent Text Reader

Abstract

The application discloses a kind of fingerprint identification method and device, it is related to biological recognition technical field, the method includes: according to the first perceptual hash value of the feature of input fingerprint data;Corresponding to the first perceptual hash value, trapdoor is generated based on searchable encryption algorithm;The trapdoor is matched with pre-established index set, and from pre-established fingerprint ciphertext cloud database, determine the multiple second perceptual hash value corresponding to the index matched with the trapdoor, and corresponding target fingerprint ciphertext data;Calculate the fingerprint image similarity between the input fingerprint data and each second perceptual hash value corresponding target fingerprint ciphertext data;The target fingerprint ciphertext data with the fingerprint image similarity less than preset range is determined as the target fingerprint ciphertext data matched with input fingerprint data, to determine the identity recognition result of input fingerprint data in turn.The application is to improve the efficiency and accuracy of fingerprint identification.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of biometrics, and more particularly to fingerprint recognition methods and devices. Background Technology

[0002] This section is intended to provide background or context for the embodiments of the invention set forth in the claims. The description herein is not an admission that it is prior art simply because it is included in this section.

[0003] Fingerprint image matching is a crucial step in fingerprint recognition. Currently, fingerprint image matching methods typically involve matching the obtained fingerprint feature values ​​with stored fingerprint feature value templates, and obtaining the matching result through similarity calculation and comparison.

[0004] Common matching modes include 1:1 verification and 1:N identification. Verification mode obtains a fingerprint feature template from a database based on a known owner's identity and compares it with the fingerprint features collected on-site. Identification mode, on the other hand, compares the fingerprint features collected on-site with each fingerprint feature stored in the database to determine the owner's identity. Compared to verification mode, the efficiency of linear matching fingerprint recognition in identification mode is more affected by the amount of fingerprint data.

[0005] Fingerprint-based identity recognition, as the most widely used biometric technology, is commonly used in national security, public security, e-commerce, and personal information security. It is characterized by the massive amount of fingerprint feature data collected and stored. The key challenge in fingerprint recognition with large-scale fingerprint databases is how to improve the speed and accuracy of fingerprint recognition as much as possible in a fingerprint feature database with ever-increasing data volume.

[0006] A common method to improve the recognition speed of large-scale fingerprint databases is to classify the stored fingerprint images. By classifying the fingerprint images acquired by the device and then matching them with fingerprint templates of specific categories, the scope of the original linear search method is narrowed, thereby improving recognition efficiency and response speed. Research on fingerprint classification methods aims to propose different fingerprint classification standards to divide fingerprint categories with better discriminative power and higher accuracy, thereby reducing the misclassification rate and the range of fingerprint images that need to be linearly matched after classification.

[0007] However, even with various fingerprint classification methods employed to accelerate fingerprint recognition databases, the amount of fingerprint data within a single category remains substantial for large-scale fingerprint databases. Furthermore, if subclassification is based solely on more accurate and detailed fingerprint classification standards, the number of subclasses increases with classification precision, leading to greater difficulty in classifying fingerprint features and consequently reduced efficiency. Therefore, it is necessary to consider improving image matching speed within a certain fingerprint classification range to meet the demands of real-time fingerprint recognition as application scenarios expand. Summary of the Invention

[0008] This invention provides a fingerprint recognition method to improve the efficiency and accuracy of fingerprint recognition. The method includes:

[0009] Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features of the corresponding input fingerprint data;

[0010] Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated.

[0011] The trapdoor is matched with a pre-established set of indexes, and from the pre-established fingerprint ciphertext cloud database, the following are determined: multiple second perceptual hash values ​​corresponding to the indexes matching the trapdoor, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: pre-stored perceptual hash values ​​corresponding to each index in the index set; the pre-stored perceptual hash values ​​are associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash values ​​of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm;

[0012] Based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0013] The target fingerprint ciphertext data whose fingerprint image similarity is less than a preset range is determined as the target fingerprint data that matches the input fingerprint data;

[0014] Based on the pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is determined as the identity recognition result of the input fingerprint data.

[0015] This invention also provides a fingerprint recognition device to improve the efficiency and accuracy of fingerprint recognition. The device includes:

[0016] The first perceptual hash value determination module is used to perform feature extraction and perceptual hash value calculation on the input fingerprint data based on the perceptual hash algorithm to obtain the first perceptual hash value of the features of the corresponding input fingerprint data.

[0017] The trapdoor generation module is used to generate a trapdoor corresponding to the first perceived hash value based on a searchable encryption algorithm and the first perceived hash value.

[0018] An index matching module is used to match the trapdoor with a pre-established set of indexes, and determine from a pre-established fingerprint ciphertext cloud database the following corresponding to the indexes that match the trapdoor: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the index set; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm;

[0019] The fingerprint image similarity module is used to calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0020] The target fingerprint data determination module is used to determine the target fingerprint encrypted data whose fingerprint image similarity is less than a preset range as the target fingerprint data that matches the input fingerprint data.

[0021] The identity recognition module is used to determine the identity identifier associated with the target fingerprint data as the identity recognition result of the input fingerprint data based on a pre-established fingerprint encrypted cloud database.

[0022] This invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the fingerprint recognition method described above.

[0023] This invention also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the fingerprint recognition method described above.

[0024] This invention also provides a computer program product, which includes a computer program that, when executed by a processor, implements the fingerprint recognition method described above.

[0025] In this embodiment of the invention, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain a first perceptual hash value corresponding to the features of the input fingerprint data; based on a searchable encryption algorithm, a trapdoor corresponding to the first perceptual hash value is generated; the trapdoor is matched with a pre-established set of indexes, and from a pre-established fingerprint ciphertext cloud database, the indexes matching the trapdoor are determined to correspond to: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; based on the first perceptual hash value, the input fingerprint data, Multiple second-perceptual hash sequence values ​​and target fingerprint ciphertext data corresponding to each second-perceptual hash value are used to calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second-perceptual hash value. Target fingerprint ciphertext data with fingerprint image similarity less than a preset range are identified as target fingerprint data that matches the input fingerprint data. Based on a pre-established fingerprint ciphertext cloud database, the identity identifier associated with the target fingerprint data is identified as the identity recognition result of the input fingerprint data. Thus, based on a searchable encryption algorithm, the fingerprint ciphertext cloud database is searched and matched using indexes and perceptual hash values. This enhances the security of fingerprint storage, ensures the availability of fingerprint recognition, and improves the efficiency of fingerprint recognition. It avoids the problem in existing technologies where simply relying on fingerprint classification methods to narrow the fingerprint classification range leads to slower fingerprint matching speeds, thereby improving the efficiency and accuracy of fingerprint recognition. Attached Figure Description

[0026] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings:

[0027] Figure 1 This is a flowchart illustrating a fingerprint recognition method according to an embodiment of the present invention;

[0028] Figure 2 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0029] Figure 3 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0030] Figure 4 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0031] Figure 5 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0032] Figure 6 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0033] Figure 7 This is a specific example diagram of a fingerprint recognition method in an embodiment of the present invention;

[0034] Figure 8 This is a schematic diagram of the structure of a fingerprint recognition device according to an embodiment of the present invention;

[0035] Figure 9 This is a specific example diagram of a fingerprint recognition device according to an embodiment of the present invention;

[0036] Figure 10 This is a schematic diagram of a computer device used for fingerprint recognition in an embodiment of the present invention. Detailed Implementation

[0037] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings. Here, the illustrative embodiments of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention.

[0038] In this document, the term "and / or" merely describes a relationship, indicating that three relationships can exist. For example, A and / or B can represent three cases: A alone, A and B simultaneously, and B alone. Furthermore, the term "at least one" in this document means any combination of at least two of any one or more elements. For example, including at least one of A, B, and C can mean including any one or more elements selected from the set consisting of A, B, and C.

[0039] In the description of this specification, the terms "comprising," "including," "having," and "containing" are open-ended terms, meaning that they include but are not limited to. The terms "an embodiment," "a specific embodiment," "some embodiments," and "for example," etc., refer to specific features, structures, or characteristics described in connection with that embodiment or example that are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, or characteristics described can be combined in any suitable manner in one or more embodiments or examples. The order of steps involved in the various embodiments is used to illustrate the implementation of this application, and the order of steps is not limited and can be adjusted appropriately as needed.

[0040] The acquisition, storage, use, and processing of data in this application all comply with the relevant provisions of national laws and regulations.

[0041] The following terms are used in the embodiments of this invention and are explained below:

[0042] Searchable encryption enables the searchability of data in a encrypted database, allowing data to be queried and processed in encrypted form. A searchable encryption system typically includes a data owner, a data user, and a cloud server. The data owner encrypts the data they possess and sends the encrypted data and its index to the cloud server; the data user uses keywords to query the encrypted data on the cloud server, retrieves the search results, and decrypts the data to obtain the original data; the cloud server provides storage for the data files, matches the corresponding encrypted files based on the search keywords, and returns them to the data user.

[0043] Hash functions: Given original data of arbitrary length, they can output data of fixed length. They are generally used for data compression and to ensure data integrity.

[0044] Perceptual hashing is an information processing theory for multimedia data (images, audio). It uniquely maps multimedia content with the same perceptual characteristics to a digital digest. The essential difference between perceptual hashing and traditional hashing lies in two aspects: First, traditional hash functions only provide data compression and cannot eliminate redundancy in the multimedia content itself, while perceptual hashing can abstract multimedia content at the perceptual level, obtaining a concise digest while preserving the content. Second, traditional hash functions are insensitive to any differences in multimedia content, while perceptual hashing allows for a certain degree of distortion; that is, multimedia content with the same perceptual characteristics can still obtain similar hash values, ensuring the robustness of multimedia content. Therefore, perceptual hashing retains the data compression properties of traditional hashing while also possessing robustness to adapt to multimedia content.

[0045] Fingerprint image matching is a crucial step in fingerprint recognition. Currently, fingerprint image matching methods typically involve matching the obtained fingerprint feature values ​​with stored fingerprint feature value templates, and obtaining the matching result through similarity calculation and comparison.

[0046] Common matching modes include 1:1 verification and 1:N identification. Verification mode obtains a fingerprint feature template from a database based on a known owner's identity and compares it with the fingerprint features collected on-site. Identification mode, on the other hand, compares the fingerprint features collected on-site with each fingerprint feature stored in the database to determine the owner's identity. Compared to verification mode, the efficiency of linear matching fingerprint recognition in identification mode is more affected by the amount of fingerprint data.

[0047] Fingerprint-based identity recognition, as the most widely used biometric technology, is commonly used in national security, public security, e-commerce, and personal information security. It is characterized by the massive amount of fingerprint feature data collected and stored. The key challenge in fingerprint recognition with large-scale fingerprint databases is how to improve the speed and accuracy of fingerprint recognition as much as possible in a fingerprint feature database with ever-increasing data volume.

[0048] A common method to improve the recognition speed of large-scale fingerprint databases is to classify the stored fingerprint images. By classifying the fingerprint images acquired by the device and then matching them with fingerprint templates of specific categories, the scope of the original linear search method is narrowed, thereby improving recognition efficiency and response speed. Research on fingerprint classification methods aims to propose different fingerprint classification standards to divide fingerprint categories with better discriminative power and higher accuracy, thereby reducing the misclassification rate and the range of fingerprint images that need to be linearly matched after classification.

[0049] However, even with various fingerprint classification methods employed to accelerate fingerprint recognition databases, the amount of fingerprint data within a single category remains substantial for large-scale fingerprint databases. Furthermore, if subclassification is based solely on more accurate and detailed fingerprint classification standards, the number of subclasses increases with classification precision, leading to greater difficulty in classifying fingerprint features and consequently reduced efficiency. Therefore, it is necessary to consider improving image matching speed within a certain fingerprint classification range to meet the demands of real-time fingerprint recognition as application scenarios expand.

[0050] Meanwhile, due to the uniqueness and immutability of biometrics, as an important identifier for human identification, their security requirements are extremely important. Even cloud-based databases require fingerprint features to be stored in encrypted form, further increasing the difficulty of current fingerprint classification methods research and application.

[0051] To address the aforementioned problems, embodiments of the present invention provide a fingerprint recognition method to improve the efficiency and accuracy of fingerprint recognition. See [link to relevant documentation]. Figure 1 The method may include:

[0052] Step 101: Based on the perceptual hash algorithm, perform feature extraction and perceptual hash value calculation on the input fingerprint data to obtain the first perceptual hash value of the features of the corresponding input fingerprint data;

[0053] Step 102: Based on the searchable encryption algorithm, generate a trapdoor corresponding to the first perceptual hash value;

[0054] Step 103: Match the trapdoor with a pre-established set of indexes, and determine from the pre-established fingerprint ciphertext cloud database the indexes corresponding to the trapdoor: multiple second perceptual hash values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set of indexes; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm;

[0055] Step 104: Based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0056] Step 105: The target fingerprint ciphertext data with a fingerprint image similarity less than a preset range is determined as the target fingerprint data that matches the input fingerprint data;

[0057] Step 106: Based on the pre-established fingerprint encrypted cloud database, determine the identity identifier associated with the target fingerprint data as the identity recognition result of the input fingerprint data.

[0058] In this embodiment of the invention, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain a first perceptual hash value corresponding to the features of the input fingerprint data; based on a searchable encryption algorithm, a trapdoor corresponding to the first perceptual hash value is generated; the trapdoor is matched with a pre-established set of indexes, and from a pre-established fingerprint ciphertext cloud database, the indexes matching the trapdoor are determined to correspond to: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, the input fingerprint data and each second perceptual hash value are calculated. The fingerprint image similarity between the target fingerprint encrypted data corresponding to the value is calculated. Target fingerprint encrypted data with a similarity less than a preset range is identified as target fingerprint data that matches the input fingerprint data. Based on a pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is identified as the identity recognition result of the input fingerprint data. Thus, based on a searchable encryption algorithm, the fingerprint encrypted cloud database is searched and matched using indexes and inductive hash values, enhancing the security of fingerprint storage, ensuring the availability of fingerprint recognition, and improving the efficiency of fingerprint recognition. Simultaneously, using inductive hashing to refer to fingerprint data, while ensuring the data integrity of the fingerprint image (a multimedia content), compresses the fingerprint image data, reducing the pressure on the database for storing fingerprint data. This avoids the problems of larger data volume and slower response speed caused by encrypted storage in existing technologies, and also avoids the problem of slower fingerprint matching speed caused by simply relying on fingerprint classification methods to narrow the fingerprint classification range, thus improving the efficiency and accuracy of fingerprint recognition.

[0059] In practice, the first step is to extract features and calculate the perceptual hash value of the input fingerprint data based on the perceptual hash algorithm, so as to obtain the first perceptual hash value of the features of the corresponding input fingerprint data.

[0060] In one embodiment, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain a first perceptual hash value corresponding to the features of the input fingerprint data, including:

[0061] Based on the perceptual hash algorithm using discrete cosine transform, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features corresponding to the input fingerprint data.

[0062] In the above embodiments, the fingerprint data input is the fingerprint data input by the user, and the purpose is to determine the identity identifier corresponding to the input fingerprint data, thereby determining the user identity of the input fingerprint data.

[0063] For example, a perceptual hashing algorithm using discrete cosine transform is used to extract features from the original fingerprint image and obtain a perceptual hash sequence Δ={ω1,ω2,...,ω...} of the fingerprint data to be stored. n}

[0064] In one embodiment, it also includes:

[0065] Based on a symmetric cryptography algorithm, a security key is calculated and a first and a second security hash function are generated according to the input security parameters; the security parameters are random binary strings and correspond one-to-one with the fingerprint ciphertext cloud database; the first and the second security hash functions are anti-collision related.

[0066] Establish the association between the fingerprint encrypted cloud database and security parameters, the first security hash function, and the second security hash function;

[0067] The security key is sent to the user; the security key is used to decrypt the target fingerprint ciphertext data determined from the fingerprint ciphertext cloud database when the security key entered by the user is correct.

[0068] In the above embodiment, a 256-bit binary string K←{0,1} can be randomly selected. 256 This serves as a security parameter, from which a secure key K' can be generated based on a symmetric cryptographic algorithm, and two collision-resistant hash functions H1:{01} can be generated. * →{0,1} 256 H2:{01} * →{0,1} 256 Each established fingerprint encrypted cloud database is associated with its corresponding security parameters, first secure hash function, and second secure hash function.

[0069] In specific implementation, after extracting features and calculating perceptual hash values ​​from the input fingerprint data based on the perceptual hash algorithm to obtain the first perceptual hash value corresponding to the features of the input fingerprint data, a trapdoor corresponding to the first perceptual hash value is generated based on the searchable encryption algorithm.

[0070] In one embodiment, based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated, including:

[0071] Obtain the security key, first security hash function, and second security hash function carried in the fingerprint encrypted cloud database;

[0072] Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated according to the following formula:

[0073] k i =H1(K||ω i )

[0074] r=H2(k i ||1)

[0075] T ω =(I1,r)

[0076] Where r is the median value; k i H1 is the first key; H1 is the first secure hash function, H1:{01} * →{0,1} 256 ;ω i Let K be the keyword of the i-th input; K be the security parameter; H2 be the second security hash function, H2:{01} * →{0,1} 256 ;T ω This is the trapdoor corresponding to the i-th input keyword.

[0077] In the embodiment, ω i Let be the keyword of the i-th input, which is used to distinguish different fingerprint data.

[0078] In this embodiment, the fingerprint encrypted cloud database can be searched and matched based on the trapdoor corresponding to the first perceived hash value, which enhances the security of fingerprint storage, ensures the availability of fingerprint recognition, and improves the efficiency of recognition.

[0079] In specific implementation, after generating a trapdoor corresponding to the first perceptual hash value based on a searchable encryption algorithm, the trapdoor is matched with a pre-established set of indexes. Then, from a pre-established fingerprint ciphertext cloud database, the following are determined: multiple second perceptual hash values ​​corresponding to the indexes matching the trapdoor, and target fingerprint ciphertext data corresponding to each second perceptual hash value. The fingerprint ciphertext cloud database includes: pre-stored perceptual hash values ​​corresponding to each index in the index set; the pre-stored perceptual hash values ​​are associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm.

[0080] In this embodiment, the searchable encryption mainly includes three parts: encryption, trapdoor generation, and retrieval, involving plaintext data F = {F1, F2, ..., F...}.n}, keyword Δ={ω1,ω2,...,ω n In fingerprint image recognition, the perceptual hash of the fingerprint image and the corresponding identity identifier are used as plaintext data, and the perceptual hash value sequence constructed above is used as the keyword set.

[0081] In the above embodiments, the fingerprint encrypted cloud database is associated with the corresponding security parameters, the first security hash function, and the second security hash function. The fingerprint encrypted cloud database also stores a pre-stored perceived hash value corresponding to each index in the index set, and the pre-stored perceived hash value is associated with the fingerprint encrypted data of different identity identifiers.

[0082] In one embodiment, it also includes:

[0083] like Figure 2 As shown, the index set can be built by following these steps:

[0084] Step 201: Establish a set of plaintext fingerprint data based on the different fingerprint data of different identities;

[0085] Step 202: Based on the perceptual hash algorithm, perform feature extraction and perceptual hash value calculation on the fingerprint plaintext data set to obtain the perceptual hash value sequence of the corresponding fingerprint plaintext data set; the perceptual hash sequence includes: the pre-stored perceptual hash value corresponding to the fingerprint data of different identity identifiers in the fingerprint plaintext data set;

[0086] Step 203: Based on the searchable encryption algorithm, by using the perceptual hash sequence as a keyword combination, an index set corresponding to the keyword combination is obtained.

[0087] In this embodiment, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation can be performed on the fingerprint plaintext data set to obtain a perceptual hash value sequence corresponding to the fingerprint plaintext data set. This realizes the process of establishing a fingerprint encrypted cloud database and completes the collection and data association operations of fingerprint data in the database. The perceptual hash sequence includes: pre-stored perceptual hash values ​​corresponding to fingerprint data of different identity identifiers in the fingerprint plaintext data set. Furthermore, based on a searchable encryption algorithm, the perceptual hash sequence can be used as a keyword combination to obtain an index set corresponding to the keyword combination.

[0088] In one specific embodiment, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the fingerprint plaintext data set to obtain a perceptual hash value sequence corresponding to the fingerprint plaintext data set, such as... Figure 3 As shown, it includes:

[0089] Step 301: Extract features from the fingerprint plaintext data set to obtain a feature set;

[0090] Step 302: Based on the perceptual hash algorithm using discrete cosine transform, calculate the perceptual hash value for each feature in the feature set to obtain the pre-stored perceptual hash value corresponding to each fingerprint data.

[0091] Step 303: Based on the pre-stored perceptual hash value corresponding to each fingerprint data and the identity identifier associated with the corresponding fingerprint data, establish a perceptual hash value sequence for the corresponding fingerprint plaintext data set.

[0092] In this embodiment, based on the perceptual hash algorithm using discrete cosine transform, a perceptual hash value is calculated for each feature in the feature set to obtain a pre-stored perceptual hash value corresponding to each fingerprint data. Based on the pre-stored perceptual hash value corresponding to each fingerprint data and the identity identifier associated with the corresponding fingerprint data, a perceptual hash value sequence for the corresponding fingerprint plaintext data set is established, realizing the process of establishing a fingerprint encrypted cloud database. This completes the collection and data association operations of fingerprint data in the database, which helps to complete the matching operation of the index set in subsequent steps.

[0093] In one specific embodiment, based on a searchable encryption algorithm, an index set corresponding to the keyword combinations is obtained by using the perceptual hash sequence as a keyword combination, such as... Figure 4 As shown, it includes:

[0094] Step 401: For each keyword in the keyword combination, determine whether a key corresponding to that keyword already exists; if it does, determine the existing key as the first key; if it does not exist, generate the first key based on the first secure hash function, the security parameter, and the keyword.

[0095] Step 402: Randomly generate a second key;

[0096] Step 403: Generate an index corresponding to the keyword based on the second secure hash function, the first key, and the second key;

[0097] Step 404: Obtain the index set corresponding to the keyword combination based on the index of each keyword in the keyword combination.

[0098] In the embodiments, the above-mentioned operation of obtaining the index set corresponding to the keyword combination by using the perceptual hash sequence as a keyword combination based on the searchable encryption algorithm can be pre-established, so as to complete the matching search operation on the input fingerprint data.

[0099] For example, a first key can be generated based on a first secure hash function, security parameters, and the keyword using the following formula:

[0100] k i =H1(K||ωi )

[0101] Where, k i H1 is the first key; H1 is the first secure hash function, H1:{01} * →{0,1} 256 ;ω i Let be the i-th keyword; K is the security parameter.

[0102] For example, based on the second secure hash function, the first key, and the second key, an index corresponding to the keyword is generated, such as... Figure 5 As shown, it includes:

[0103] Step 501: Based on the second secure hash function and the first key, generate the first component of the index corresponding to the keyword;

[0104] Step 502: Based on the second secure hash function, the first key, and the second key, generate the second component of the index corresponding to the keyword;

[0105] Step 503: Combine the first component and the second component to generate an index corresponding to the keyword.

[0106] As an example, the first and second components of the index corresponding to the keyword are generated according to the following formula, as well as the index corresponding to the keyword is generated:

[0107] I i1 =H2(k i ||0)

[0108]

[0109] I = (I i1 ,I i2 )

[0110] Among them, I i1 This is the first component of the index corresponding to the i-th keyword; I i2 H2 is the second component corresponding to the index of the i-th keyword; H2 is the second secure hash function, H2:{01} * →{0,1} 256 ;k i This is the first key; k′ i is the second key; I is the index corresponding to the i-th keyword.

[0111] In one specific embodiment, it further includes:

[0112] When it is determined that there is no corresponding key for each keyword in the keyword combination, the generated first key is determined as the key corresponding to the keyword.

[0113] In one embodiment, the trapdoor is matched against a pre-established set of indexes, such as... Figure 6 As shown, it includes:

[0114] Step 601: Determine a first target index from the index set whose first component is the same as the trapdoor;

[0115] Step 602: Calculate the target index component based on the second component of the first target index, the trapdoor, and the second secure hash function;

[0116] Step 603: Determine a second target index from the index set whose first component is the same as the target index component;

[0117] Step 604: Update the target index component according to the second component of the second target index, the trapdoor, and the second secure hash function. Repeat the above steps until each target index in the index set whose first component is the same as the updated target index component is determined.

[0118] Step 605: Determine each target index as the index that matches the trapdoor.

[0119] In one specific embodiment, the target index component is calculated according to the following formula:

[0120]

[0121] I' i =H2(k′) i ||0)

[0122] Among them, I i2 H2 is the second component corresponding to the index of the i-th keyword; H2 is the second secure hash function, H2:{01} * →{0,1} 256 ;k′ i For the second key; I′ i For the target index component; T ω Let r be the trapdoor corresponding to the i-th input keyword; r is the intermediate value.

[0123] For example, based on the search trapdoor T ω = (I1, r), find the I that is the same as the first component from the index. i1 And find the corresponding encrypted file C i And calculate the random key. Then calculate I′ i =H2(k′) i ||0), continue searching for I′ in the index. i The same first component I j1Repeat the above steps until no more cases with the same first variable are found.

[0124] In specific implementation, after matching the trapdoor with a pre-established set of indexes and determining from the pre-established fingerprint ciphertext cloud database the indexes corresponding to the trapdoor, the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value is calculated based on the first perceptual hash value, the input fingerprint data, the multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0125] In one embodiment, it also includes:

[0126] Based on the symmetric encryption algorithm, the fingerprint data corresponding to the identity identifier associated with the pre-stored perceptual hash value corresponding to each index in the index set is encrypted according to the security key to obtain the fingerprint ciphertext data corresponding to each index.

[0127] In this embodiment, for a fingerprint image template, ciphertext can be generated using a symmetric encryption algorithm and a symmetric key according to the following formula:

[0128] C i ←Ε(F i ,K')

[0129] Among them, C i For fingerprint encrypted data; F i K' is the plaintext fingerprint data; K' is the security key.

[0130] In one embodiment, it also includes:

[0131] Pre-build the fingerprint encrypted cloud database as follows:

[0132] Based on the identity identifier of the fingerprint data, the fingerprint ciphertext data corresponding to the fingerprint data of the identity identifier, the index and the keywords corresponding to the index are stored accordingly to establish a fingerprint ciphertext cloud database.

[0133] In one embodiment, from a pre-established fingerprint ciphertext cloud database, the following are determined: multiple second perceptual hash values ​​corresponding to the index matching the trapdoor, and target fingerprint ciphertext data corresponding to each second perceptual hash value, including:

[0134] Based on the pre-stored perceptual hash value corresponding to each index in the index set included in the fingerprint encrypted cloud database, determine the multiple second perceptual hash values ​​corresponding to the index that matches the trapdoor;

[0135] Based on the correlation between the pre-stored perceptual hash value and the fingerprint ciphertext data of different identities, the target fingerprint ciphertext data corresponding to each second perceptual hash value is determined.

[0136] For example, the following steps can be used to build an index set and a fingerprint encrypted cloud database:

[0137] 1. For the fingerprint image template, ciphertext C is generated using a symmetric encryption algorithm and a symmetric key. i ←Ε(F i ,K');

[0138] 2. For the perceptual hash value ω corresponding to the current fingerprint data i Check if there is an existing (ω) i ,k i If it exists, then take the first key as k. i Otherwise calculate k i =H1(K||ω i ), and randomly generate a second key k′ i ←{0,1} 256 Calculate the first component of the index corresponding to the i-th keyword: I i1 =H2(k i ||0), and the second component of the index corresponding to the i-th keyword: Thus, ω is obtained i The corresponding security index I = (I i1 ,I i2 ), and update (ω) i ,k i ) is (ω i ,k′ i ).

[0139] 3. Based on the identity identifier of the fingerprint data, store the fingerprint ciphertext data, index and keywords corresponding to the fingerprint data of the identity identifier, and establish a fingerprint ciphertext cloud database.

[0140] In specific implementation, after calculating the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, the target fingerprint ciphertext data whose fingerprint image similarity is less than a preset range is determined as the target fingerprint data that matches the input fingerprint data.

[0141] In one embodiment, it also includes:

[0142] When receiving input fingerprint data, the system also receives the security key entered by the user.

[0143] Based on a symmetric encryption algorithm, the target fingerprint ciphertext data is decrypted using the input security key to obtain and output the corresponding target fingerprint plaintext data.

[0144] For example, input the fingerprint ciphertext data C = {C1, C2, ..., C} obtained from the search. k The algorithm can output the decrypted plaintext fingerprint data. The ciphertext data is then processed using a symmetric decryption algorithm to obtain the corresponding plaintext data F. i ←D(C i ,K').

[0145] In specific implementation, after determining the target fingerprint encrypted data whose fingerprint image similarity is less than a preset range as the target fingerprint data that matches the input fingerprint data, the identity identifier associated with the target fingerprint data is determined as the identity recognition result of the input fingerprint data according to the pre-established fingerprint encrypted cloud database.

[0146] In this embodiment, the perceptual hash sequence obtained based on discrete cosine transform is essentially a description of the overall features of the image; therefore, image similarity can be obtained using Hamming distance from information theory. The Hamming distance between two perceptual hash values ​​is calculated using the following formula:

[0147]

[0148] This allows setting a similarity threshold δ, and then comparing δ and dis to obtain the image that is closest to the fingerprint to be matched among multiple fingerprint templates searched in the database, and obtain the corresponding identity identifier to complete fingerprint recognition.

[0149] The following is a specific embodiment to illustrate the application of the method of the present invention. This embodiment may include the following steps:

[0150] This embodiment consists of three steps: fingerprint image perceptual hash construction, searchable encryption, and fingerprint image similarity comparison. The flowchart is as follows: Figure 7 As shown, it may include the following steps:

[0151] 1. Fingerprint image perceptual hash construction

[0152] This scheme proposes to extract features from the original fingerprint image using a perceptual hash algorithm based on discrete cosine transform, and obtain a perceptual hash sequence Δ={ω1,ω2,...,ω...} of the fingerprint data to be stored. n}

[0153] 2. Searchable encryption

[0154] It mainly consists of three parts: encryption, trapdoor generation, and retrieval, involving plaintext data F = {F1, F2, ..., F...}n}, keyword Δ={ω1,ω2,...,ω n In fingerprint image recognition, the perceptual hash of the fingerprint image and the corresponding identity identifier are used as plaintext data, and the perceptual hash constructed in the first step is used as the keyword set.

[0155] 1) Key generation

[0156] Input a security parameter and output the security key and security hash function.

[0157] Randomly select a 256-bit binary string K ← {0, 1} 256 Given a key K′ for a symmetric cryptographic algorithm, generate two collision-resistant hash functions H1: {01} * →{0,1} 256 H2: {01} * →{0,1} 256

[0158] 2) Encryption

[0159] Enter keyword ω i Output security index I i ; Input plaintext fingerprint data F i Output ciphertext C i .

[0160] For the fingerprint image template, ciphertext C is generated using a symmetric encryption algorithm and a symmetric key. i ←E(F i ,K′);

[0161] For the perceptual hash ω corresponding to the current fingerprint data i Check if ω already exists. i k i If it exists, then take the key as k. i Otherwise, calculate k. i =H1(K||ω i ), and randomly generate a new key k′ i ←{0, 1} 256 Calculate I i1 =H2(k i ||0) and Get ω i The corresponding security index I = (I i1 I i2 ), and update (ω) i k i ) is (ω i , k′ i ).

[0162] 3) Trapdoor generation

[0163] Enter keyword ω i Output trapdoor T ω .

[0164] Calculate r = H2(k) i ||1), obtain the trapdoor T ω = (I1, r).

[0165] 4) Search

[0166] Input Trapdoor T ω Output the matched ciphertext file C.

[0167] According to the search trap T ω = (I1, r), find the I that is the same as the first component from the index. i1 And find the corresponding encrypted file C i And calculate the random key. Then calculate I′ i =H2(k′) i ||0), continue searching for I′ in the index. i The same first component I j1 Repeat the above steps until no more cases with the same first variable are found.

[0168] 5) Decryption

[0169] Input the search result C = {C1, C2, ..., C} k The decrypted plaintext fingerprint data is output. The ciphertext data is then processed using a symmetric decryption algorithm to obtain the corresponding plaintext data F. i ←D(C i , K′).

[0170] 3. Comparison of fingerprint image similarity

[0171] The perceptual hash sequence obtained based on discrete cosine transform is essentially a description of the overall features of an image; therefore, image similarity can be obtained using Hamming distance from information theory. (Calculation...) A similarity threshold δ is set, and by comparing δ and dis, the image that is closest to the fingerprint to be matched among multiple fingerprint templates searched in the database is obtained, and the corresponding identity identifier is obtained to complete fingerprint recognition.

[0172] In summary, this embodiment achieves search and matching of encrypted fingerprint cloud databases, enhancing the security of fingerprint storage, ensuring the availability of fingerprint recognition, and improving recognition efficiency. Simultaneously, by using perceptual hashing as a digest of fingerprint data, it compresses fingerprint images while maintaining the data integrity of this multimedia content, reducing the pressure on database storage. It overcomes the limitations of relying solely on fingerprint classification methods to narrow the fingerprint classification range, accelerate fingerprint matching, and improve fingerprint recognition speed in current fingerprint recognition applications that require encrypted fingerprint database storage, larger data volumes, and faster response times. This embodiment proposes a searchable encrypted image matching method, implementing an encrypted fingerprint data search method based on effective fingerprint classification methods, improving the efficiency and accuracy of fingerprint recognition, and providing a reference for the further development of fingerprint recognition.

[0173] Of course, it is understood that there may be other variations of the above detailed process, and all such variations should fall within the protection scope of this invention.

[0174] In this embodiment of the invention, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain a first perceptual hash value corresponding to the features of the input fingerprint data; based on a searchable encryption algorithm, a trapdoor corresponding to the first perceptual hash value is generated; the trapdoor is matched with a pre-established set of indexes, and from a pre-established fingerprint ciphertext cloud database, the indexes matching the trapdoor are determined to correspond to: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, the input fingerprint data and each second perceptual hash value are calculated. The fingerprint image similarity between the target fingerprint encrypted data corresponding to the value is calculated. Target fingerprint encrypted data with a similarity less than a preset range is identified as target fingerprint data that matches the input fingerprint data. Based on a pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is identified as the identity recognition result of the input fingerprint data. Thus, based on a searchable encryption algorithm, the fingerprint encrypted cloud database is searched and matched using indexes and inductive hash values, enhancing the security of fingerprint storage, ensuring the availability of fingerprint recognition, and improving the efficiency of fingerprint recognition. Simultaneously, using inductive hashing to refer to fingerprint data, while ensuring the data integrity of the fingerprint image (a multimedia content), compresses the fingerprint image data, reducing the pressure on the database for storing fingerprint data. This avoids the problems of larger data volume and slower response speed caused by encrypted storage in existing technologies, and also avoids the problem of slower fingerprint matching speed caused by simply relying on fingerprint classification methods to narrow the fingerprint classification range, thus improving the efficiency and accuracy of fingerprint recognition.

[0175] This invention also provides a fingerprint recognition device, as described in the following embodiments. Since the principle by which this device solves the problem is similar to that of the fingerprint recognition method, the implementation of this device can refer to the implementation of the fingerprint recognition method, and repeated details will not be elaborated further.

[0176] This invention also provides a fingerprint recognition device to improve the efficiency and accuracy of fingerprint recognition, such as... Figure 8 As shown, the device includes:

[0177] The first perceptual hash value determination module 801 is used to perform feature extraction and perceptual hash value calculation on the input fingerprint data based on the perceptual hash algorithm to obtain the first perceptual hash value of the features of the corresponding input fingerprint data.

[0178] The trapdoor generation module 802 is used to generate a trapdoor corresponding to the first perceived hash value based on a searchable encryption algorithm and the first perceived hash value.

[0179] The index matching module 803 is used to match the trapdoor with a pre-established set of indexes, and determine from the pre-established fingerprint ciphertext cloud database the following corresponding to the index that matches the trapdoor: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set of indexes; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm;

[0180] The fingerprint image similarity module 804 is used to calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0181] The target fingerprint data determination module 805 is used to determine the target fingerprint encrypted data whose fingerprint image similarity is less than a preset range as the target fingerprint data that matches the input fingerprint data.

[0182] The identity recognition module 806 is used to determine the identity identifier associated with the target fingerprint data as the identity recognition result of the input fingerprint data based on the pre-established fingerprint encrypted cloud database.

[0183] In one embodiment, the first perceptual hash value determination module is specifically used for:

[0184] Based on the perceptual hash algorithm using discrete cosine transform, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features corresponding to the input fingerprint data.

[0185] In one embodiment, such as Figure 9 As shown, it also includes:

[0186] Safety parameter calculation module 901 is used for:

[0187] Based on a symmetric cryptography algorithm, a security key is calculated and a first and a second security hash function are generated according to the input security parameters; the security parameters are random binary strings and correspond one-to-one with the fingerprint ciphertext cloud database; the first and the second security hash functions are anti-collision related.

[0188] Establish the association between the fingerprint encrypted cloud database and security parameters, the first security hash function, and the second security hash function;

[0189] The security key is sent to the user; the security key is used to decrypt the target fingerprint ciphertext data determined from the fingerprint ciphertext cloud database when the security key entered by the user is correct.

[0190] In one embodiment, it also includes:

[0191] The index set creation module is used for:

[0192] The index set shall be constructed as follows:

[0193] Establish a set of plaintext fingerprint data based on different fingerprint data of different identities;

[0194] Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the fingerprint plaintext data set to obtain the perceptual hash value sequence corresponding to the fingerprint plaintext data set; the perceptual hash sequence includes: the pre-stored perceptual hash value corresponding to the fingerprint data of different identity identifiers in the fingerprint plaintext data set;

[0195] Based on a searchable encryption algorithm, an index set corresponding to the keyword combination is obtained by using the perceptual hash sequence as a keyword combination.

[0196] In one embodiment, the index set building module is specifically used for:

[0197] Feature extraction is performed on the fingerprint plaintext data set to obtain a feature set;

[0198] Based on the perceptual hash algorithm using discrete cosine transform, the perceptual hash value is calculated for each feature in the feature set to obtain the pre-stored perceptual hash value corresponding to each fingerprint data.

[0199] Based on the pre-stored perceptual hash value corresponding to each fingerprint data and the identity identifier associated with the corresponding fingerprint data, a perceptual hash value sequence for the corresponding fingerprint plaintext data set is established.

[0200] In one embodiment, the index set building module is specifically used for:

[0201] For each keyword in the keyword combination, determine whether a key corresponding to that keyword already exists; if it does, determine the existing key as the first key; if it does not exist, generate the first key based on the first secure hash function, the security parameters, and the keyword.

[0202] A second key is generated randomly;

[0203] Based on the second secure hash function, the first key, and the second key, an index corresponding to the keyword is generated;

[0204] Based on the index of each keyword in the keyword combination, the corresponding index set of the keyword combination is obtained.

[0205] In one embodiment, it also includes:

[0206] The key determination module corresponding to the keyword is used for:

[0207] When it is determined that there is no corresponding key for each keyword in the keyword combination, the generated first key is determined as the key corresponding to the keyword.

[0208] In one embodiment, the index set building module is specifically used for:

[0209] The first key is generated based on the first secure hash function, the security parameters, and the keyword using the following formula:

[0210] k i =H1(K||ω i )

[0211] Where, k i H1 is the first key; H1 is the first secure hash function, H1:{01} * →{0,1} 256 ;ω i Let be the i-th keyword; K is the security parameter.

[0212] In one embodiment, the index set building module is specifically used for:

[0213] Based on the second secure hash function, the first key, and the second key, an index corresponding to the keyword is generated, including:

[0214] Based on the second secure hash function and the first key, generate the first component of the index corresponding to the keyword;

[0215] Based on the second secure hash function, the first key, and the second key, a second component of the index corresponding to the keyword is generated;

[0216] The first component and the second component are combined to generate an index corresponding to the keyword.

[0217] In one embodiment, the index set building module is specifically used for:

[0218] Generate the first and second components of the index corresponding to the keyword using the following formula, and generate the index corresponding to the keyword:

[0219] I i1 =H2(k i ||0)

[0220]

[0221] I = (I i1 ,I i2 )

[0222] Among them, I i1 This is the first component of the index corresponding to the i-th keyword; I i2 H2 is the second component corresponding to the index of the i-th keyword; H2 is the second secure hash function, H2:{01} * →{0,1} 256 ;k i This is the first key; k′ i is the second key; I is the index corresponding to the i-th keyword.

[0223] In one embodiment, it also includes:

[0224] The fingerprint data encryption module is used for:

[0225] Based on the symmetric encryption algorithm, the fingerprint data corresponding to the identity identifier associated with the pre-stored perceptual hash value corresponding to each index in the index set is encrypted according to the security key to obtain the fingerprint ciphertext data corresponding to each index.

[0226] In one embodiment, it also includes:

[0227] The fingerprint encrypted cloud database establishment module is used for:

[0228] Pre-build the fingerprint encrypted cloud database as follows:

[0229] Based on the identity identifier of the fingerprint data, the fingerprint ciphertext data corresponding to the fingerprint data of the identity identifier, the index and the keywords corresponding to the index are stored accordingly to establish a fingerprint ciphertext cloud database.

[0230] In one embodiment, the trapdoor generation module is specifically used for:

[0231] Obtain the security key, first security hash function, and second security hash function carried in the fingerprint encrypted cloud database;

[0232] Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated according to the following formula:

[0233] k i =H1(K||ω i )

[0234] r=H2(k i ||1)

[0235] T ω =(I1,r)

[0236] Where r is the median value; k i H1 is the first key; H1 is the first secure hash function, H1:{01} * →{0,1} 256 ;ω i Let K be the keyword of the i-th input; K be the security parameter; H2 be the second security hash function, H2:{01} * →{0,1} 256 ;T ω This is the trapdoor corresponding to the i-th input keyword.

[0237] In one embodiment, the index matching module is specifically used for:

[0238] Determine a first target index from the index set whose first component is the same as the trapdoor;

[0239] The target index component is calculated based on the second component of the first target index, the trapdoor, and the second secure hash function;

[0240] Determine a second target index from the index set whose first component is the same as the target index component;

[0241] The target index component is updated based on the second component of the second target index, the trapdoor, and the second secure hash function. The above steps are repeated until each target index in the index set whose first component is the same as the updated target index component is determined.

[0242] Each target index is determined as the index that matches the trapdoor.

[0243] In one embodiment, the index matching module is specifically used for:

[0244] Calculate the target index component using the following formula:

[0245]

[0246] I' i =H2(k′) i ||0)

[0247] Among them, I i2 H2 is the second component corresponding to the index of the i-th keyword; H2 is the second secure hash function, H2:{01} * →{0,1} 256 ;k′ i For the second key; I′ i For the target index component; T ω Let r be the trapdoor corresponding to the i-th input keyword; r is the intermediate value.

[0248] In one embodiment, the index matching module is specifically used for:

[0249] Based on the pre-stored perceptual hash value corresponding to each index in the index set included in the fingerprint encrypted cloud database, determine the multiple second perceptual hash values ​​corresponding to the index that matches the trapdoor;

[0250] Based on the correlation between the pre-stored perceptual hash value and the fingerprint ciphertext data of different identities, the target fingerprint ciphertext data corresponding to each second perceptual hash value is determined.

[0251] In one embodiment, it also includes:

[0252] The fingerprint data decryption module is used for:

[0253] When receiving input fingerprint data, the system also receives the security key entered by the user.

[0254] Based on a symmetric encryption algorithm, the target fingerprint ciphertext data is decrypted using the input security key to obtain and output the corresponding target fingerprint plaintext data.

[0255] This invention provides an embodiment of a computer device for implementing all or part of the above-described fingerprint recognition method. The computer device specifically includes the following components:

[0256] The computer device comprises a processor, memory, a communications interface, and a bus; wherein the processor, memory, and communications interface communicate with each other via the bus; the communications interface is used to realize information transmission between related devices; the computer device can be a desktop computer, tablet computer, or mobile terminal, etc., and this embodiment is not limited thereto. In this embodiment, the computer device can be implemented with reference to the embodiments for implementing a fingerprint recognition method and the embodiments for implementing a fingerprint recognition device, the contents of which are incorporated herein by reference, and repeated details will not be described again.

[0257] Figure 10This is a schematic block diagram illustrating the system configuration of the computer device 1000 according to an embodiment of this application. Figure 10 As shown, the computer device 1000 may include a central processing unit 1001 and a memory 1002; the memory 1002 is coupled to the central processing unit 1001. It is worth noting that... Figure 10 This is an example; other types of structures can also be used to supplement or replace this structure to achieve telecommunications functions or other functions.

[0258] In one embodiment, the fingerprint recognition function can be integrated into the central processing unit 1001. The central processing unit 1001 can be configured to perform the following control:

[0259] Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features of the corresponding input fingerprint data;

[0260] Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated.

[0261] The trapdoor is matched with a pre-established set of indexes, and from the pre-established fingerprint ciphertext cloud database, the following are determined: multiple second perceptual hash values ​​corresponding to the indexes matching the trapdoor, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: pre-stored perceptual hash values ​​corresponding to each index in the index set; the pre-stored perceptual hash values ​​are associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash values ​​of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm;

[0262] Based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value.

[0263] The target fingerprint ciphertext data whose fingerprint image similarity is less than a preset range is determined as the target fingerprint data that matches the input fingerprint data;

[0264] Based on the pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is determined as the identity recognition result of the input fingerprint data.

[0265] In another embodiment, the fingerprint recognition device can be configured separately from the central processing unit 1001. For example, the fingerprint recognition device can be configured as a chip connected to the central processing unit 1001, and the fingerprint recognition function can be implemented through the control of the central processing unit.

[0266] like Figure 10 As shown, the computer device 1000 may further include: a communication module 1003, an input unit 1004, an audio processor 1005, a display 1006, and a power supply 1007. It is worth noting that the computer device 1000 does not necessarily need to include... Figure 10 All components shown; in addition, the computer device 1000 may also include Figure 10 For components not shown, please refer to existing technologies.

[0267] like Figure 10 As shown, the central processing unit 1001, sometimes also referred to as a controller or operation control, may include a microprocessor or other processor device and / or logic device. The central processing unit 1001 receives input and controls the operation of various components of the computer device 1000.

[0268] The memory 1002 may be, for example, one or more of a cache, flash memory, hard drive, removable medium, volatile memory, non-volatile memory, or other suitable device. It may store the aforementioned failure-related information, and also store a program for executing that information. The central processing unit 1001 may execute the program stored in the memory 1002 to perform information storage or processing, etc.

[0269] Input unit 1004 provides input to central processing unit 1001. This input unit 1004 may be, for example, a keypad or touch input device. Power supply 1007 provides power to computer device 1000. Display 1006 displays images, text, and other display objects. This display may be, for example, an LCD display, but is not limited to this.

[0270] The memory 1002 can be a solid-state memory, such as a read-only memory (ROM), random access memory (RAM), a SIM card, etc. It can also be a memory that retains information even when power is off, can be selectively erased, and contains more data; examples of this type of memory are sometimes referred to as EPROMs, etc. The memory 1002 can also be some other type of device. The memory 1002 includes a buffer memory 1021 (sometimes referred to as a buffer). The memory 1002 may include an application / function storage unit 1022 for storing application programs and function programs or processes for executing operations of the computer device 1000 via the central processing unit 1001.

[0271] The memory 1002 may also include a data storage unit 1023 for storing data, such as contacts, digital data, pictures, sounds, and / or any other data used by the computer device. The driver storage unit 1024 of the memory 1002 may include various drivers for the computer device for communication functions and / or for performing other functions of the computer device (such as messaging applications, address book applications, etc.).

[0272] The communication module 1003 is a transmitter / receiver 1003 that transmits and receives signals via the antenna 1008. The communication module (transmitter / receiver) 1003 is coupled to the central processing unit 1001 to provide input signals and receive output signals, which can be the same as in a conventional mobile communication terminal.

[0273] Based on different communication technologies, multiple communication modules 1003 can be configured in the same computer device, such as cellular network modules, Bluetooth modules, and / or wireless LAN modules. The communication module (transmitter / receiver) 1003 is also coupled to a speaker 1009 and a microphone 1010 via an audio processor 1005 to provide audio output via the speaker 1009 and receive audio input from the microphone 1010, thereby realizing typical telecommunications functions. The audio processor 1005 may include any suitable buffer, decoder, amplifier, etc. Furthermore, the audio processor 1005 is also coupled to a central processing unit 1001, enabling on-device recording via the microphone 1010 and on-device playback of stored sound via the speaker 1009.

[0274] This invention also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the fingerprint recognition method described above.

[0275] This invention also provides a computer program product, which includes a computer program that, when executed by a processor, implements the fingerprint recognition method described above.

[0276] In this embodiment of the invention, based on a perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain a first perceptual hash value corresponding to the features of the input fingerprint data; based on a searchable encryption algorithm, a trapdoor corresponding to the first perceptual hash value is generated; the trapdoor is matched with a pre-established set of indexes, and from a pre-established fingerprint ciphertext cloud database, the indexes matching the trapdoor are determined to correspond to: multiple second perceptual hash values, and target fingerprint ciphertext data corresponding to each second perceptual hash value; the fingerprint ciphertext cloud database includes: a pre-stored perceptual hash value corresponding to each index in the set; the pre-stored perceptual hash value is associated with fingerprint ciphertext data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, the input fingerprint data and each second perceptual hash value are calculated. The fingerprint image similarity between the target fingerprint encrypted data corresponding to the value is calculated. Target fingerprint encrypted data with a similarity less than a preset range is identified as target fingerprint data that matches the input fingerprint data. Based on a pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is identified as the identity recognition result of the input fingerprint data. Thus, based on a searchable encryption algorithm, the fingerprint encrypted cloud database is searched and matched using indexes and inductive hash values, enhancing the security of fingerprint storage, ensuring the availability of fingerprint recognition, and improving the efficiency of fingerprint recognition. Simultaneously, using inductive hashing to refer to fingerprint data, while ensuring the data integrity of the fingerprint image (a multimedia content), compresses the fingerprint image data, reducing the pressure on the database for storing fingerprint data. This avoids the problems of larger data volume and slower response speed caused by encrypted storage in existing technologies, and also avoids the problem of slower fingerprint matching speed caused by simply relying on fingerprint classification methods to narrow the fingerprint classification range, thus improving the efficiency and accuracy of fingerprint recognition.

[0277] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0278] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0279] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0280] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0281] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A fingerprint recognition method, characterized in that, include: Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features of the corresponding input fingerprint data; Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated. The trapdoor is matched with a pre-established set of indexes, and from the pre-established fingerprint ciphertext cloud database, the indexes that match the trapdoor are determined to correspond to: multiple second perceptual hash values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value. The fingerprint encrypted cloud database includes: a pre-stored perceptual hash value corresponding to each index in the index set; the pre-stored perceptual hash value is associated with fingerprint encrypted data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; Based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value, calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value. The target fingerprint ciphertext data whose fingerprint image similarity is less than a preset range is determined as the target fingerprint data that matches the input fingerprint data; Based on the pre-established fingerprint encrypted cloud database, the identity identifier associated with the target fingerprint data is determined as the identity recognition result of the input fingerprint data.

2. The method as described in claim 1, characterized in that, Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features corresponding to the input fingerprint data, including: Based on the perceptual hash algorithm using discrete cosine transform, feature extraction and perceptual hash value calculation are performed on the input fingerprint data to obtain the first perceptual hash value of the features corresponding to the input fingerprint data.

3. The method as described in claim 1, characterized in that, Also includes: Based on symmetric cryptography algorithms, the security key is calculated and the first and second security hash functions are generated according to the input security parameters. The security parameter is a random binary string and corresponds one-to-one with the fingerprint encrypted cloud database; the first security hash function and the second security hash function are anti-collision related; Establish the association between the fingerprint encrypted cloud database and security parameters, the first security hash function, and the second security hash function; The security key is sent to the user; the security key is used to decrypt the target fingerprint ciphertext data determined from the fingerprint ciphertext cloud database when the security key entered by the user is correct.

4. The method as described in claim 1, characterized in that, Also includes: The index set shall be constructed as follows: Establish a set of plaintext fingerprint data based on different fingerprint data of different identities; Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the fingerprint plaintext data set to obtain the perceptual hash value sequence of the corresponding fingerprint plaintext data set; The perceptual hash sequence includes: pre-stored perceptual hash values ​​corresponding to fingerprint data of different identities in the fingerprint plaintext data set; Based on a searchable encryption algorithm, an index set corresponding to the keyword combination is obtained by using the perceptual hash sequence as a keyword combination.

5. The method as described in claim 4, characterized in that, Based on the perceptual hash algorithm, feature extraction and perceptual hash value calculation are performed on the fingerprint plaintext data set to obtain a perceptual hash value sequence corresponding to the fingerprint plaintext data set, including: Feature extraction is performed on the fingerprint plaintext data set to obtain a feature set; Based on the perceptual hash algorithm using discrete cosine transform, the perceptual hash value is calculated for each feature in the feature set to obtain the pre-stored perceptual hash value corresponding to each fingerprint data. Based on the pre-stored perceptual hash value corresponding to each fingerprint data and the identity identifier associated with the corresponding fingerprint data, a perceptual hash value sequence for the corresponding fingerprint plaintext data set is established.

6. The method as described in claim 4, characterized in that, Based on a searchable encryption algorithm, by using the perceptual hash sequence as a keyword combination, an index set corresponding to the keyword combination is obtained, including: For each keyword in the keyword combination, determine whether a key for the corresponding keyword already exists; if it does, determine the existing key as the first key; if it does not exist, generate the first key based on the first secure hash function, the security parameter, and the keyword. A second key is generated randomly; Based on the second secure hash function, the first key, and the second key, an index corresponding to the keywords is generated; Based on the index of each keyword in the keyword combination, the corresponding index set of the keyword combination is obtained.

7. The method as described in claim 6, characterized in that, Also includes: When it is determined that there is no corresponding key for each keyword in the keyword combination, the generated first key is determined as the key corresponding to the keyword.

8. The method as described in claim 6, characterized in that, Based on the second secure hash function, the first key, and the second key, an index corresponding to the keyword is generated, including: Based on the second secure hash function and the first key, generate the first component of the index corresponding to the keyword; Based on the second secure hash function, the first key, and the second key, a second component of the index corresponding to the keyword is generated; The first component and the second component are combined to generate an index corresponding to the keyword.

9. The method as described in claim 3, characterized in that, Also includes: Based on the symmetric encryption algorithm, the fingerprint data corresponding to the identity identifier associated with the pre-stored perceptual hash value corresponding to each index in the index set is encrypted according to the security key to obtain the fingerprint ciphertext data corresponding to each index.

10. The method as described in claim 9, characterized in that, Also includes: Pre-build the fingerprint encrypted cloud database as follows: Based on the identity identifier of the fingerprint data, the fingerprint ciphertext data corresponding to the fingerprint data of the identity identifier, the index and the keywords corresponding to the index are stored accordingly to establish a fingerprint ciphertext cloud database.

11. The method as described in claim 3, characterized in that, Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated, including: Obtain the security key, first security hash function, and second security hash function carried in the fingerprint encrypted cloud database; Based on a searchable encryption algorithm, a trapdoor corresponding to the first perceived hash value is generated.

12. The method as described in claim 8, characterized in that, Matching the trapdoor with a pre-established set of indices includes: Determine a first target index from the index set whose first component is the same as the trapdoor; The target index component is calculated based on the second component of the first target index, the trapdoor, and the second secure hash function; Determine a second target index from the index set whose first component is the same as the target index component; The target index component is updated based on the second component of the second target index, the trapdoor, and the second secure hash function. The above steps are repeated until each target index in the index set is found to have a first component that is the same as the updated target index component. Each target index is determined as the index that matches the trapdoor.

13. The method as described in claim 12, characterized in that, From a pre-established fingerprint ciphertext cloud database, determine the fingerprint ciphertext data corresponding to the index that matches the trapdoor, including: Based on the pre-stored perceptual hash value corresponding to each index in the index set included in the fingerprint encrypted cloud database, determine the multiple second perceptual hash values ​​corresponding to the index that matches the trapdoor; Based on the correlation between the pre-stored perceptual hash value and the fingerprint ciphertext data of different identities, the target fingerprint ciphertext data corresponding to each second perceptual hash value is determined.

14. The method as described in claim 3, characterized in that, Also includes: When receiving input fingerprint data, the system also receives the security key entered by the user. Based on a symmetric encryption algorithm, the target fingerprint ciphertext data is decrypted using the input security key to obtain and output the corresponding target fingerprint plaintext data.

15. A fingerprint recognition device, characterized in that, include: The first perceptual hash value determination module is used to perform feature extraction and perceptual hash value calculation on the input fingerprint data based on the perceptual hash algorithm to obtain the first perceptual hash value of the features of the corresponding input fingerprint data. The trapdoor generation module is used to generate a trapdoor corresponding to the first perceived hash value based on a searchable encryption algorithm and the first perceived hash value. The index matching module is used to match the trapdoor with a pre-established set of indexes, and determine from the pre-established fingerprint ciphertext cloud database the indexes that match the trapdoor: multiple second perceptual hash values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value; The fingerprint encrypted cloud database includes: a pre-stored perceptual hash value corresponding to each index in the index set; the pre-stored perceptual hash value is associated with fingerprint encrypted data of different identities; the index is obtained by calculating the pre-stored perceptual hash value of the features of the fingerprint data corresponding to the index using a searchable encryption algorithm; The fingerprint image similarity module is used to calculate the fingerprint image similarity between the input fingerprint data and the target fingerprint ciphertext data corresponding to each second perceptual hash value based on the first perceptual hash value, the input fingerprint data, multiple second perceptual hash sequence values, and the target fingerprint ciphertext data corresponding to each second perceptual hash value. The target fingerprint data determination module is used to determine the target fingerprint encrypted data whose fingerprint image similarity is less than a preset range as the target fingerprint data that matches the input fingerprint data. The identity recognition module is used to determine the identity identifier associated with the target fingerprint data as the identity recognition result of the input fingerprint data based on a pre-established fingerprint encrypted cloud database.

16. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method of any one of claims 1 to 14.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method of any one of claims 1 to 14.

18. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the method of any one of claims 1 to 14.