Method and system for secure biometric authentication
Through biometric key generation technology, the transmission of biometric data in unsafe channels is solved, and the problem of insufficient security of biometric data transmission in the prior art is realized, the secure decryption and verification of data is realized, and the security of the system is enhanced.
Patent Information
- Application Number
- CN201910247957.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-04-23
- Filing Date
- 2019-03-29
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2039-12-21
AI Technical Summary
Existing biometric verification systems require secure communication channels when transmitting biometric data between devices, otherwise they are easily intercepted and leaked, resulting in impairment of system security.
Through biometric key generation technology, fuzzy extractors and cryptographic circuit systems are used to transmit data in an unsafe communication channel, generate and decrypt cryptographic keys, ensuring the security of biometric data.
It ensures the security of biometric data without the need for a secure communication channel, prevents malicious attacks and data leakage, and improves the security of the system.
Smart Images

Figure CN110390191B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to systems and methods for secure biometric authentication. In particular, the present disclosure relates to systems and methods for securely exchanging biometric comparison data between devices without requiring a secure communication channel. Background Art
[0002] Biometric data, such as fingerprint data, voice data, iris data, or other such data, can be used as an identifier of a user that is unique and difficult to copy or intercept. For example, a device can capture a user's thumb or fingerprint and compare it to a previously captured thumb or fingerprint. If the prints match, the user can be identified as the user who provided the previously captured thumb or fingerprint and can be authenticated.
[0003] Such biometric authentication systems may be most secure when used on a single device (i.e., utilizing both original and new biometric data captured on the same device so that the data never needs to be transferred to another device). However, because biometric data is useful for user authentication, some systems allow biometric data to be communicated between devices. For example, a user may first enroll or capture biometric data on a first device. The biometric data or a template or profile may be provided to a second device. The second device may then capture the user's biometric data, compare the captured data to the template or profile, and authenticate the user.
[0004] While such systems are useful for allowing users to authenticate without a password, they require a secure communication channel between the devices: intercepting or exfiltrating the biometric template or profile during communication between the devices would compromise the security of the biometric system. For example, if the template represents a captured voice recording or fingerprint, a malicious attacker who intercepted the template could present it to the system as if it were newly captured. Because the new capture would necessarily match the intercepted template, the system could falsely authenticate the attacker. Summary of the invention
[0005] In one aspect, the present application relates to a method for achieving data security via biometric key generation, comprising: receiving, by a fuzzy extractor circuit system of a device, a security sketch generated by a second device, the first random number, and a second biometric data set from a first biometric data set and a first random number; generating, by the fuzzy extractor circuit system, a second random number from the security sketch, the first random number, and the second biometric data set; receiving, by a cryptographic circuit system of the device, the second random number and an encrypted data set; and decrypting, by the cryptographic circuit system, the encrypted data set using the second random number to generate a decrypted data set.
[0006] In another aspect, the present application relates to a system for achieving data security via biometric key generation, comprising: a fuzzy extractor circuit system of a device, the fuzzy extractor circuit system being configured to: receive a security sketch generated by a second device, the first random number, and a second biometric data set from a first biometric data set and a first random number, and generate a second random number from the security sketch, the first random number, and the second biometric data set; and a cryptographic circuit system of the device, the cryptographic circuit system being configured to: receive the second random number and an encrypted data set, and decrypt the encrypted data set using the second random number to generate a decrypted data set.
[0007] In another aspect, the present application relates to a method for achieving data security via biometric key generation, comprising: receiving a first biometric template by a biometric processor circuit system of a first device, the first biometric template comprising a biometric data set having multiple detail elements; receiving a decoding key by the biometric processor circuit system from a cryptographic circuit system of the first device; modifying a subset of the multiple detail elements of the first biometric template by the biometric processor circuit system to encode the decoding key; generating a second biometric template by the biometric processor circuit system, the second biometric template comprising a modified subset of the multiple detail elements; and transmitting the second biometric template to a second device by the first device, the second device being configured to extract the decoding key from the second biometric template via comparison of the second biometric template with a corresponding input biometric data set.
[0008] In another aspect, the present application relates to a system for achieving data security via biometric key generation, comprising: a biometric circuit system of a first device, the biometric circuit system being configured to: receive a biometric template from a second device, the biometric template comprising a biometric data set having a plurality of detail elements, receive an input biometric data set having a second plurality of detail elements, extract modifications to the biometric template performed by the second device via comparison of the first plurality of detail elements with the second plurality of detail elements, the modifications comprising an encoding of a security sketch and a first random number; a fuzzy extractor circuit system, which is configured to generate a second random number from the security sketch, the first random number and the input biometric data set; and a cryptographic circuit system of the device, the cryptographic circuit system being configured to: receive the second random number and an encrypted data set, and decrypt the encrypted data set using the second random number to generate a decrypted data set. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Various objects, aspects, features and advantages of the present disclosure will become more apparent and better understood by reference to the detailed description taken in conjunction with the accompanying drawings, in which the same reference numerals identify corresponding elements throughout. In the drawings, the same reference numerals generally indicate the same, functionally similar and / or structurally similar elements.
[0010] Figure 1 is a block diagram of an embodiment of a system for biometric authentication;
[0011] Figure 2A is a block diagram of an embodiment of a system for data security via biometric key generation and exchange via an insecure data channel;
[0012] Figure 2B and 2C is a block diagram of another embodiment of a system for data security generated via a biometric key and exchanged via an insecure data channel;
[0013] Figure 3 A flow chart of an embodiment of a method for data security generated via a biometric key and exchanged via an insecure data channel;
[0014] Figure 4A is a block diagram depicting an embodiment of a network environment including one or more access points communicating with one or more devices or stations; and
[0015] Figure 4B and 4C A block diagram is provided to depict an embodiment of a computing device suitable for use in conjunction with the methods and systems described herein.
[0016] The details of various embodiments of the method and system are set forth in the accompanying drawings and the description below. DETAILED DESCRIPTION
[0017] The following IEEE standards, including any draft versions of such standards, are hereby incorporated by reference in their entirety and made a part of this disclosure for all purposes: IEEE P802.11n TM ; and IEEE P802.11ac TM Although the present disclosure may refer to aspects of these standards, the present disclosure is in no way limited to these standards.
[0018] For the purpose of reading the description of the various embodiments below, the following description of sections of this specification and its corresponding content may be helpful:
[0019] - Section A describes embodiments of systems and methods for secure biometric authentication; and
[0020] - Section B describes a network environment and a computing environment that may be suitable for practicing the embodiments described herein.
[0021] A. Systems and methods for secure biometric authentication
[0022] Authentication using passwords is widely used for everything from computer registration to accessing bank accounts over the Internet. However, password security is often insufficient, with countless attacks and billions of user accounts compromised, with potential attack vectors including dictionary or brute force attacks; hardware or software loggers; credential stuffing or using stolen credentials from one online account to access other valuable accounts; stealing databases that store credentials in plain text or easily invalidated ciphertext; phishing and social engineering attacks to trick users into clicking on malicious links or entering credentials on the wrong website; etc.
[0023] One solution to thwart password attacks is to use biometric features, such as fingerprints, facial recognition, voice recognition, iris recognition, etc. Biometric authentication usually works in two stages: First, the user enrolls his or her biometric sample, and the biometric features are extracted and a template is generated. Second, to authenticate the user, the user presents his or her biometric sample, and the device matches the sample with the enrolled template.
[0024] Such biometric authentication systems may be most secure when used on a single device (i.e., utilizing both the original and new biometric data captured on the same device so that the data never needs to be transferred to another device). However, because biometric data is useful for user authentication, some systems allow biometric data to be communicated between devices. For example, Figure 11 is a block diagram of an implementation of a system for biometric authentication. As shown, a user may first register or capture biometric data 102A on a first device A100A. Device A100A may include any type and form of device having an input biometric sensor 104, such as a smartphone; a desktop computer; a laptop; a tablet computer; a wearable computer; a smart appliance (e.g., an Internet of Things or IoT device); a smart car with keyless entry; etc. Sensor 104 may include any type and form of sensor for capturing biometric features, such as a fingerprint sensor, a camera, or a microphone. The biometric sensor 104 output may be processed by a biometric processor 106, which may include circuitry and / or software for identifying significant features captured by biometric data. For example, in some implementations, the biometric processor 106 may include a circuit configured to compress and filter input audio to generate a unique signature. In other embodiments, the biometric processor 106 may include an application or service that is executed by the processor of the device A 100A and is configured to screen the fingerprint image and extract detail points corresponding to a predetermined set of fingerprint features (e.g., ridge endings, bifurcations or mergers, increments, etc.). These features or points can be identified by xy coordinates within the fingerprint image and angles corresponding to the direction of the feature (e.g., along the ridge). Similar details can be found in iris images for identification. Similarly, facial features can be identified and mapped via eigenfaces or similar algorithms to generate a unique mapping. Details or other features can be recorded as an array, table, or other similar data structure in the biometric template 108.
[0025] In order to avoid requiring the user to register on each device, in some embodiments, the biometric template 108 can be provided to a second device B 100B, such as another smart phone, tablet computer, desktop computer, laptop computer, wearable computer, appliance, etc. The second device 100B can capture the biometric data of the user 102B via the sensor 104 in a similar manner, and process the data with the biometric processor 106 to extract a set of details or features. The second device 100B may include a biometric comparator 110, which may include hardware or software for comparing the biometric template 108 from device A with the extracted features or details generated by the processor of the second device from the second input data 102B. In many embodiments, the comparison does not have to be accurate, but the match is above a threshold. For example, the comparator 110 can determine whether at least a predetermined number of details correspond (e.g., 80%, 90%, or any other such value). In some embodiments, matching details or features may include performing transformations on the input data set, such as scaling to enlarge or reduce features (e.g., multiplying xy coordinates by a scale factor), and / or rotating the feature set (e.g., remapping xy coordinates to the x'-y' axis, adding a predetermined offset to an angle indicating the feature's orientation, etc.).
[0026] While such systems are suitable for allowing users to authenticate without a password, they require a secure communication channel 112 between the devices: interception of the biometric template 108 or profile during communication between the devices, or leakage of the template 108 or profile, would undermine the security of the biometric system. For example, if the template 108 represents a captured voice recording or fingerprint, a malicious attacker who intercepted the template 108 could provide it to the system as if it were a new capture 102B. Because the new capture 102B would necessarily match the intercepted template 108, the system could falsely authenticate the attacker. The secure communication channel 112 may require strong encryption, may be slow or inefficient to utilize, and may be secure only in theory - that is, the channel 112 may be compromised, and as a result, a malicious attacker may gain access to one or both devices.
[0027] Alternatively, the systems and methods discussed enable the use of biometric authentication on a local or remote device without requiring a secure communication channel between the devices. Briefly, in some embodiments, secure biometric authentication can be achieved by:
[0028] 1. Perform a registration operation on the first device;
[0029] 2. Encrypt enrollment data and user credentials using a cryptographic key generated using biometric information;
[0030] 3. Transfer the encrypted registration data to a remote device via any available communication channel regardless of the security of the communication channel; and
[0031] 4. Regenerate the cryptographic key on the remote device using the most recently captured biometric data, and decrypt the registration data and user credentials.
[0032] After decrypting the biometric registration data and credentials, the user can use any registered biometric characteristic to perform authentication (e.g., any registered finger, registered iris, voice snippet, etc.). This allows the user to completely dispense with using a password on the remote device.
[0033] In some embodiments, a fuzzy extractor for the captured biometric data can be used to generate and regenerate on a second device a cryptographic key for encrypting and decrypting the registration data on a first device. Although biometric captures can vary within a range from one capture to another, the cryptographic key generation will output the same key (or seed for the key generator) as long as the new capture is close to the original capture (i.e., where the Hamming distance between the captures: Dis(W, W') < t).
[0034] Figure 2A A block diagram of an embodiment of a system for data security for biometric key generation and exchange via an insecure data channel. The first device 200A can receive an input biometric data set 102C via a biometric sensor 204, such as a fingerprint, voice capture, face capture, iris capture, etc. Similar to device 100 and sensor 104, device 200 can include any type and form of computing device, such as a smart phone, tablet computer, laptop computer, desktop computer, wearable computer, appliance, or other device; and can include a biometric sensor 204, such as a visible light and / or infrared camera, fingerprint reader, microphone, 3D sensor (e.g., stereo camera, sonar transmitter and receiver, etc.), or any other such sensor or combination of sensors.
[0035] Device 200 can include a random number generator 202 or a pseudo-random number generator for generating a random number or string i 210. In some embodiments, a starting seed, such as a time or date, device address or identifier, or any other such information, can be provided to the random or pseudo-random number generator 202.
[0036] The device 200 may include a biometric processor 206. As discussed above, the biometric processor 206 may include hardware circuitry and / or software for receiving a biometric input and screening the biometric input data to extract salient features or details and generate an output string or array of identifying features or details. In some embodiments, the biometric processor 206 may include a fuzzy extractor 208. The fuzzy extractor 208 may include hardware circuitry or software executed by a processor of the device for generating a secure sketch 214 and an output string R 212 from an input biometric data set 102 (and optionally a random number i 210).
[0037] The security sketch 214 is a string or randomized mapping extracted from input data w (e.g., biometric input data) such that, assuming any similar biometric input data w' (e.g., Hamming distance (w, w') < threshold t), the original input data w can be recovered. The security sketch is sometimes referred to as reconciliation data, and in theory can be similar to an error correction system. The security sketch itself may not have enough information to generate the biometric input data w, w', and therefore, the security sketch can be transmitted via a secure or unsecure data channel without compromising biometric security.
[0038] In some embodiments, the security sketch 214 may be generated as follows. W represents a distribution across a metric space M, where the Hardy space H ∞ (W) = m. The error parameter δ is less than or equal to a threshold, such as 1 / 2. The parameter l is equal to m + H 0 (W)-1 rounds down to an integer value (e.g., rounds l down so that lm is an integer (set l = m + [(lm)])). For each iteration of i from m to l-1 (e.g., i = m, m+1, ..., l-1), L i =(2 -(i+1) ,2 -i ), F i :K i ×M→R i is a family of universal hash functions, where
[0039] ext is of Average-case extractor, with output length κ.
[0040] In some embodiments, the sketch generation function (Gen W ) may include:
[0041] 1. Input: w.
[0042] 2. Find i such that Pr[W=w]∈L i .
[0043] 3. If i = 1, then set ss = (i, w, 0);
[0044] 4. Otherwise, K←K i Take a sample and set ss = (i, F i (K,w),K).
[0045] 5. Sample the uniformly extracted word seed.
[0046] 6. Output key = ext(w,seed), p = (ss,seed).
[0047] Similarly, in some embodiments, the reproduction function (Reproduction function) W ) may include:
[0048] 1. Input: (w',p=(ss,seed)).
[0049] 2. Analyze ss as (i,y,K).
[0050] 3. If i = l, then set w * =y;
[0051] 4. Otherwise
[0052] (a) Make W * ={w * |dis(w * ,w')≤t∧Pr[W=w * ]∈L i}.
[0053] (b) Find any w * ∈W * , so that F i (K,w * )=y; if it does not exist, then set w * =⊥.
[0054] 5. Output ext(w * ,seed).
[0055] As mentioned above, the fuzzy extractor 208 may also generate a random string seed or R 212, which may be based on or calculated from the input biometric data and the random number i 210 generated by the random or pseudo-random number generator 202. In some embodiments, R 212 may be provided to the cryptographic circuit 216 for use in encrypting data 218, such as user data, verification data, enrollment data, or any other type and form of data, thereby generating an encrypted data set 220. In some embodiments, the random number R may be used as an encryption key, such as a symmetric encryption key using any corresponding algorithm. In other embodiments, the random number R may be used as a seed to generate an encryption key, such as generating another symmetric key or an asymmetric key pair, so that the data 218 can be encrypted by one of the asymmetric keys (e.g., a public key). Therefore, in some embodiments, R 212 may be provided as a seed to the pseudo-random number generator 202 to generate another random number (not illustrated) that can be used to encrypt user data. In some embodiments, the cryptographic circuit 216 may include a hardware cryptographic module, such as a trusted platform module (TPM), or cryptographic hardware that executes an encryption algorithm, such as Data Encryption Standard (DES), Blowfish, RSA, AES, etc. In other embodiments, the cryptographic circuit 216 may include software executed by a processor of the device, such as executable logic for executing one or more of the encryption algorithms.
[0056] Thus, in some embodiments, the system may generate a first random number i 210, a security sketch 214, and encrypted data 220. The random number i and the security sketch alone are not sufficient to generate the input biometric data 102 or the output random number R 212. Thus, this data along with the encrypted data 220 may be provided to the second device B 200B via an unsecured communication channel 222 (e.g., via the Internet), a local transfer across a local network or LAN, via a wireless communication medium that may be eavesdropped (e.g., cellular, microwave, WiFi, satellite, etc.), or any other such communication medium or combination of media. Additional layers of encryption (e.g., HTTPS communications, establishment of a virtual private network, etc.) may not be necessary to maintain the security of the biometric information and the encrypted data 220.
[0057] The second device B 200B may receive the first random number i 210, the security sketch 214, and the encrypted data 220 via the communication channel 222. As discussed above, the random number and the security sketch alone may not be sufficient to enable the device to generate the cryptographic key R 212. However, the second device B 200B may further receive input biometric data 102D via the input biometric sensor 204', which may (or may not) correspond to the user's input biometric data 102C.
[0058] Device B 200B may include a biometric processor 206' as discussed above, and the biometric processor 206' may include a fuzzy extractor 208'. The fuzzy extractor may include circuitry or executable logic for recovering features, which may compare input data 102D with a secure sketch 214 and an input random string i 210 to regenerate a cryptographic key or seed R 212 using the reproduction function Rep discussed above. W As discussed above, the provided input biometric data 102D is similar to the input biometric data 102C - that is, the Hamming distance between the two data sets is less than a threshold t - and the fuzzy extractor 208' may regenerate the same cryptographic key R 212. If the input data sets are not similar enough (e.g., dis(W,W') > t), then the resulting generated key R' will be invalid and unable to decrypt the encrypted data 220. Thus, the encrypted data is protected by the user's biometric data, and access by third parties is blocked.
[0059] After the cryptographic key R 212 has been recovered, the cryptographic circuit 216' of device B 200B may decrypt the encrypted data 220, which is similar to the encryption discussed above. For example, in some embodiments, the key R 212 may be a symmetric encryption / decryption key. In other embodiments, the cryptographic circuit 216' may use R 212 as a seed to generate an asymmetric key pair, and the circuit may decrypt the encrypted data with the private key in the key pair. The cryptographic circuit may use any corresponding decryption algorithm, such as AES, SHA, Blowfish, DES, etc.
[0060] Although referred to as a cryptographic circuit, as discussed above, in many embodiments, encryption and decryption may be provided by the executable logic of the device. Thus, in some embodiments, the cryptographic circuit may refer to the processor of the device that executes the logic instructions.
[0061] In another embodiment, data may be hidden within the minutiae of biometric data by performing small shifts, for example, in the least significant bits of the minutiae values. This may allow a cryptographic key, random number i, or a hidden sketch to be embedded within the biometric template. The template may then be transferred to the receiving device, eliminating the need for manual entry of the secure sketch or seed i. Since the matching of new biometric data to the template does not need to be precisely qualified as a match (e.g., 0 ≤ dis(W,W') < t), small shifts in the template minutiae may allow hidden data while the matching is only minimally compromised (e.g., depending on the value of the embedded bits of the data, the increase in false negative matches may be negligible).
[0062] As discussed above, minutiae may be encoded as a string of parameter values, such as xy coordinates and angles for fingerprint minutiae; formant frequencies and timing for voiceprint minutiae; etc. In one embodiment, the least significant bits of some or all of these parameters may be adjusted according to a predetermined encoding (e.g., replacing a predetermined number of least significant bits of each parameter with corresponding bits from the hidden data or an encoded version of the bits, etc.). To extract the hidden data, the system may extract each set of replaced least significant bits in a similar manner and concatenate the results to generate the original input hidden data string. If the template does not contain the hidden data string, or if the hidden data string has been corrupted or altered, then the extracted string will be invalid and generate other errors (e.g., when used to decrypt data or compare to a new input biometric data set). In some embodiments, to further hide the data, only a subset of the parameters may be altered, such as the x coordinate of a first minutiae item, the y coordinate of a second minutiae item, and the angle of a third minutiae item. This may also reduce the rate of false negative matches by reducing the amount of altered data (e.g., where each minutiae point is unchanged in both parameters).
[0063] Figure 2B and 2C is a block diagram of one embodiment of a system for data security generated via biometric keys and exchanged via an insecure data channel. Figure 2A , the first device 200A may include a biometric processor 206 including a fuzzy extractor 208, an input sensor 204, a random number generator 202, and a cryptographic circuit 216. The device may receive input biometric data 102C and, as discussed above, may generate a biometric template 108, as well as a security sketch 214 and a cryptographic key or seed R 212.
[0064] Device A 200A may also include a data embedder 250. The data embedder 250 may include hardware circuitry such as a field programmable gate array or an application specific integrated circuit, or software such as an application, service, server, daemon, library, or other executable logic for modifying the biometric template 108 to hide data in the details or parameters of the template. In some embodiments, the data embedder may embed the values of i 210 and security sketch 214 in the details of the biometric template 252. In other embodiments, the data embedder may embed the value of the cryptographic key or seed R 212 directly in the biometric template 254. The resulting modified templates 252, 254 may not be distinguishable from other biometric templates, and it may not be obvious that any modification has been made. Therefore, the modified templates 252, 254 may be transmitted via the communication channel 222 regardless of whether they are secure, without degrading the security of the encrypted data 220.
[0065] Similarly, if Figure 2C As shown in FIG. 1 , the second device B 200B may include an input biometric sensor 204', a biometric processor 206 including a fuzzy extractor 208', and a cryptographic circuit 216'. The second device may receive a second input biometric data set 102D.
[0066] Device B 200B may also include a data extractor 256. The data extractor 256 may include hardware circuitry such as a field programmable gate array or an application specific integrated circuit, or software such as an application, service, server, daemon, library, or other executable logic for extracting hidden data from the modified biometric templates 252, 254. In some implementations, the extractor 256 may extract and concatenate the least significant bits from some or all of the parameters corresponding to the modified parameters as discussed above. Depending on the implementation, the extracted seed i 210 and the security sketch 214 may be provided to the fuzzy extractor 208' for comparison with the input biometric data 102D to recover the cryptographic key or seed R 212; or the extracted key or seed R 212 may be provided directly to the cryptographic circuit 216' for decryption of the data 220 and recovery of the original data 218.
[0067] Therefore, by hiding the data within the biometric template, the need to securely transmit the security sketch, seed i and / or cryptographic key R is no longer required, while still allowing enrollment-free authentication on the second device.
[0068] Figure 3 Flowchart of an embodiment of a method for data security generated via a biometric key and exchanged via an insecure data channel. As shown, at step 300, during the enrollment process, a first device A may receive biometric input data. As discussed above, the input data may include audio, video, or images, such as fingerprint data, facial image data, iris image data, voice recordings, etc. The data may be received by a sensor of the device (e.g., a microphone, camera, or other sensor), and in some embodiments may be pre-processed (e.g., amplified, normalized, filtered, cropped, etc.).
[0069] At step 302, in some embodiments, the device may generate or receive a random number i. The random number may be generated by a random number generator or pseudo-random number generator of the device, or received from an external generator (e.g., via a local connection such as a USB connection, or via a network). The random number may be in any suitable format and may be used as a seed. At step 304, a fuzzy extractor of the device may use the seed number and the biometric input data to generate a secure sketch and a cryptographic key or seed R. As discussed above, the secure sketch may include the output of a reversible function so that the sketch may be used with similar biometric input data (e.g., a Hamming distance with the first biometric input data less than a threshold) to regenerate the original input data. At step 306, the cryptographic circuit of the device may encrypt the data with a key R or with a key in a symmetric key pair generated using R as a seed. The data may include user credentials or enrollment data or other such features.
[0070] As discussed above, in some embodiments, the security sketch and seed i may be transmitted to the second device along with the encrypted data. The transmission may be performed via any suitable means, regardless of the security of the transmission (e.g., the security sketch and seed i need not be encrypted for transmission, and interception of the security sketch may not allow a third party to regenerate the biometric input data).
[0071] In other embodiments, the data may be hidden in the biometric template. At step 310, the first device may generate a biometric template based on the captured biometric input data. At step 312, the first device may embed a security sketch and a seed i in the details of the biometric template; or may embed a seed value or a key R in the biometric template. As discussed above, embedding the data in the template may include replacing a predetermined portion (e.g., the least significant bit) of the parameters of the details in the template with the portion of the data to be hidden. At step 314, the first device may transmit the encrypted data to the second device along with the modified biometric template containing the hidden data via any suitable communication channel. Similarly, as discussed above, interception of the modified template may prevent a third party from decrypting the encrypted data without new capture of the user's biometric input.
[0072] To recover the encrypted data, during the verification phase, at step 316, the second device may receive the encrypted data, and possibly receive the modified biometric template, and may capture a second biometric input data set via a component similar to the component discussed above in conjunction with step 300.
[0073] If the second device has not yet received a biometric template (e.g., possibly including hidden data), then the second device may receive a security sketch and a seed value i at step 318. In some implementations, step 318 may be performed simultaneously with step 316, or may be performed before step 316. For example, a security sketch and a seed i may be input at the second device, and in response to receiving the security sketch and the seed, the second device may capture the biometric input.
[0074] At step 320, the fuzzy extractor of the second device may utilize the security sketch, the seed i, and the input biometric data to recover the cryptographic key or seed R. As discussed above, recovering the key may include reversing the encoding function using the biometric input data. Assuming that the Hamming distance of the new input data to the biometric data input at the first device is less than a threshold t and is used to generate the security sketch, the sketch may be properly decoded and the key R may be recovered.
[0075] At step 324, the encrypted data received from the first device may be decrypted. As discussed above, in some embodiments, the recovered key R may be used as a symmetric decryption key. In other embodiments, the recovered value R may be used as a seed for a pseudo-random number generator for generating a symmetric cryptographic key pair, and a private key in the key pair may be used to decrypt the data. In some embodiments, the encrypted and decrypted data may include credentials or verification data and may be used for further verification or registration of a user. In other embodiments, the data may be user data, an application, an identifier such as a small data file or a device identifier, or any other such information.
[0076] If the device does receive a biometric template that includes hidden data, then where the data includes a security sketch and seed i, at step 324, the sketch and seed i may be extracted by extracting portions (e.g., the least significant bits) of the minutiae parameters and concatenating the results. At step 320, the sketch and seed may then be used to recover the cryptographic key or seed R. Similarly, if the hidden data includes the cryptographic key or seed R, the hidden data may be extracted at step 326, and the encrypted data may be decrypted using the hidden data at step 322. In some embodiments, the security sketch and seed i, or the embedding of the cryptographic key or seed R may be predetermined or configured (e.g., the device may always embed the sketch and seed). In other embodiments, a predetermined bit or flag may be set with a predetermined value to indicate the inclusion of the security sketch and seed compared to the cryptographic key or seed R. This may provide additional flexibility and security.
[0077] In some aspects, the present disclosure relates to a method for implementing data security via biometric key generation. The method includes receiving, by a fuzzy extractor circuit system of a device, a security sketch generated by a second device, a first random number, and a second biometric data set from a first biometric data set and a first random number. The method also includes generating, by the fuzzy extractor circuit system, a second random number from the security sketch, the first random number, and the second biometric data set. The method also includes receiving, by a cryptographic circuit system of the device, the second random number and an encrypted data set. The method also includes decrypting, by the cryptographic circuit system, the encrypted data set using the second random number to generate a decrypted data set.
[0078] In some embodiments, the method includes generating an asymmetric key pair by a pseudo-random number generator of the cryptographic circuit system using a second random number as a seed input; and decrypting the encrypted data set further includes decrypting the encrypted data set using a private key in the asymmetric key pair. In some embodiments, the method includes decrypting the encrypted data set using the second random number by decrypting the encrypted data set using the second random number as a symmetric encryption key. In some embodiments, the Hamming distance between the first biometric data set and the second biometric data set is less than a predetermined distance. In some embodiments, the security sketch and the first random number are received via an insecure communication channel.
[0079] In another aspect, the present disclosure relates to a system for implementing data security via biometric key generation. The system includes a fuzzy extractor circuit system of a device, the fuzzy extractor circuit system being configured to receive a security sketch, a first random number, and a second biometric data set generated by a second device from a first biometric data set and a first random number. The fuzzy extractor is also configured to generate a second random number from the security sketch, the first random number, and the second biometric data set. The system also includes a cryptographic circuit system of the device, the cryptographic circuit system being configured to receive the second random number and an encrypted data set, and decrypt the encrypted data set using the second random number to generate a decrypted data set.
[0080] In some embodiments, the cryptographic circuitry includes a pseudo-random number generator configured to generate an asymmetric key pair using the second random number as a seed input. The cryptographic circuitry is further configured to decrypt the encrypted data set using a private key in the asymmetric key pair.
[0081] In some embodiments, the cryptographic circuitry is further configured to decrypt the encrypted data set using the second random number as a symmetric encryption key. In some embodiments, the Hamming distance between the first biometric data set and the second biometric data set is less than a predetermined distance. In some embodiments, the security sketch and the first random number are received via an unsecured communication channel.
[0082] In another aspect, the present disclosure relates to a method for achieving data security via biometric key generation. The method includes receiving a first biometric template by a biometric processor circuit system of a first device, the first biometric template including a biometric data set having a plurality of detail elements. The method also includes receiving a decoding key by the biometric processor circuit system from a cryptographic circuit system of the first device. The method also includes modifying a subset of the plurality of detail elements of the first biometric template by the biometric processor circuit system to encode a decoding key. The method also includes generating a second biometric template by the biometric processor circuit system, the second biometric template including a modified subset of the plurality of detail elements; and transmitting the second biometric template by the first device to a second device, the second device being configured to extract a decoding key from the second biometric template via comparison of the second biometric template with a corresponding input biometric data set.
[0083] In some embodiments, the decoding key comprises a cryptographic key generated by the cryptographic circuitry of the device. In another embodiment, the cryptographic key comprises a symmetric key. In another embodiment, the cryptographic key comprises a private key in an asymmetric key pair. In some embodiments, the decoding key comprises a security sketch generated by the biometric processor circuitry, and a first random number.
[0084] In another aspect, the present disclosure relates to a system for achieving data security via biometric key generation. The system includes a biometric processor circuit system of a first device, the biometric circuit system being configured to receive a biometric template from a second device, the biometric template including a biometric data set having a plurality of detail elements. The biometric circuit system is also configured to receive an input biometric data set having a second plurality of detail elements. The biometric circuit system is also configured to extract modifications to the biometric template performed by the second device via comparison of the first plurality of detail elements with the second plurality of detail elements, the modifications including an encoding of a security sketch and a first random number. The system also includes a fuzzy extractor circuit system, the fuzzy extractor circuit system being configured to generate a second random number from the security sketch, the first random number, and the input biometric data set. The system also includes a cryptographic circuit system of a device, the cryptographic circuit system being configured to receive the second random number and an encrypted data set, and to decrypt the encrypted data set using the second random number to generate a decrypted data set.
[0085] In some embodiments, the cryptographic circuit system includes a pseudo-random number generator configured to generate an asymmetric key pair using a second random number as a seed input; and the cryptographic circuit system is further configured to decrypt the encrypted data set using a private key in the asymmetric key pair.
[0086] In some embodiments, the cryptographic circuitry is further configured to decrypt the encrypted data set using the second random number as a symmetric encryption key. In some embodiments, the Hamming distance between the input biometric data set and the biometric template is less than a predetermined distance. In some embodiments, the security sketch and the first random number are received via an insecure communication channel.
[0087] B. Computing and Network Environment
[0088] Having discussed specific embodiments of the present invention, it may be helpful to describe aspects of the operating environment and associated system components (eg, hardware elements) in conjunction with the methods and systems described herein. Figure 4A , depicting an embodiment of a network environment. In brief, the network environment includes a wireless communication system, which includes one or more access points 406, one or more wireless communication devices 402, and network hardware components 492. The wireless communication device 402 may, for example, include a laptop computer 402, a tablet computer 402, a personal computer 402, and / or a cellular telephone device 402. Reference Figure 4B and 4C The details of the embodiments of each wireless communication device and / or access point are described in more detail.In one embodiment, the network environment can be a temporary network environment, an infrastructure wireless network environment, a subnet environment, etc.
[0089] The access point (AP) 406 may be operably coupled to the network hardware 492 via a local area network connection. The network hardware 492 may provide a local area network connection for the communication system, and the network hardware 492 may include routers, gateways, switches, bridges, modems, system controllers, appliances, etc. Each of the access points 406 may have an associated antenna or antenna array to communicate with the wireless communication devices 402 in its area. The wireless communication devices 402 may register with a particular access point 406 to receive services from the communication system (e.g., via SU-MIMO or MU-MIMO configurations). For direct connections (e.g., point-to-point communications), some of the wireless communication devices 402 may communicate directly via assigned channels and communication protocols. Some of the wireless communication devices 402 may be mobile or relatively stationary relative to the access point 406.
[0090] In some embodiments, access point 406 includes a device or module (including a combination of hardware and software) that allows wireless communication device 402 to connect to a wired network using Wi-Fi or other standards. Access point 406 may sometimes be referred to as a wireless access point (WAP). Access point 406 may be configured, designed and / or constructed to operate in a wireless local area network (WLAN). In some embodiments, access point 406 may be connected to a router (e.g., via a wired network) as a standalone device. In other embodiments, the access point may be a component of a router. Access point 406 may provide multiple devices 402 access to a network. Access point 406 may, for example, be connected to a wired Ethernet connection and use a radio frequency link to provide wireless connections for other devices 402 to utilize the wired connection. Access point 406 may be constructed and / or configured to support standards for sending and receiving data using one or more radio frequencies. Those standards and the frequencies they use may be defined by IEEE (e.g., IEEE 802.11 standards). The access point may be configured and / or used to support public Internet hotspots, and / or on an intranet to extend the Wi-Fi signal range of the network.
[0091] In some embodiments, the access point 406 may be used for a wireless network (e.g., IEEE 802.11, Bluetooth, ZigBee, any other type of radio frequency based network protocol, and / or variations thereof) (e.g., indoors or within a building). Each of the wireless communication devices 402 may include a built-in radio and / or be coupled to a radio. Such wireless communication devices 402 and / or access points 406 may operate in accordance with various aspects of the present disclosure as presented herein to enhance performance, reduce cost and / or size, and / or enhance broadband applications. Each wireless communication device 402 is capable of acting as a client node seeking access to resources (e.g., data, and connections to networked nodes such as servers) via one or more access points 406.
[0092] The network connection may include any type and / or form of network, and may include any of the following: a point-to-point network, a broadcast network, a telecommunications network, a data communications network, a computer network. The topology of the network may be a bus, a star, or a ring network topology. The network may have any such network topology known to those of ordinary skill in the art that is capable of supporting the operations described herein. In some embodiments, different types of data may be transmitted via different protocols. In other embodiments, the same type of data may be transmitted via different protocols.
[0093] The communication device 402 and the access point 406 may be deployed as and / or may be executed on any type and form of computing device, such as a computer, a network device, or an appliance capable of communicating over any type and form of network and performing the operations described herein. Figure 4B and4C A block diagram of a computing device 400 suitable for practicing embodiments of a wireless communication device 402 or access point 406 is depicted. Figure 4B and 4C As shown in FIG. 4 , each computing device 400 includes a central processing unit 421 and a main memory unit 422. Figure 4B As shown in FIG. 4 , computing device 400 may include storage device 428, installation device 416, network interface 418, I / O controller 423, display devices 424a to 424n, keyboard 426, and pointing device 427, such as a mouse. Storage device 428 may include, but is not limited to, an operating system and / or software. Figure 4C As shown in , each computing device 400 may also include additional optional elements, such as a memory port 403, a bridge 470, one or more input / output devices 430a to 430n (generally referred to using reference numeral 430), and a cache memory 440 that communicates with the central processing unit 421.
[0094] The central processing unit 421 is any logic circuit that responds to and processes instructions retrieved from the main memory unit 422. In many embodiments, the central processing unit 421 is provided by a microprocessor unit, such as those manufactured by Intel Corporation of Mountain View, California; those manufactured by International Business Machines of White Plains, New York; or those manufactured by Advanced Micro Devices of Sunnyvale, California. The computing device 400 may be based on any of these processors, or any other processor capable of operating as described herein.
[0095] The main memory unit 422 may be one or more memory chips capable of storing data and allowing direct access to any storage location by the microprocessor 421, such as any type or variation of static random access memory (SRAM), dynamic random access memory (DRAM), ferroelectric RAM (FRAM), NAND flash memory, NOR flash memory, and solid-state drive (SSD). The main memory 422 may be based on any of the memory chips described above, or any other available memory chip capable of operating as described herein. Figure 4B In the embodiment shown in , processor 421 communicates with main memory 422 via a system bus 450 (described in more detail below). Figure 4C An embodiment of a computing device 400 is depicted in which the processor communicates directly with the main memory 422 via the memory port 403. For example, in Figure 4C In the embodiment, the main memory 422 may be DRDRAM.
[0096] Figure 4C An embodiment is depicted in which the main processor 421 communicates directly with the cache memory 440 via a secondary bus (sometimes referred to as a backside bus). In other embodiments, the main processor 421 communicates with the cache memory 440 using a system bus 450. The cache memory 440 typically has a faster response time than the main memory 422 and is provided by, for example, SRAM, BSRAM, or EDRAM. Figure 4C , the processor 421 communicates with various I / O devices 430 via a local system bus 450. Various buses may be used to connect the central processing unit 421 to any of the I / O devices 430, such as a VESA VL bus, an ISA bus, an EISA bus, a Micro Channel Architecture (MCA) bus, a PCI bus, a PCI-X bus, a PCI Express bus, or a NuBus. For embodiments where the I / O device is a video display 424, the processor 421 may communicate with the display 424 using an Advanced Graphics Port (AGP). Figure 4C An embodiment of a computer 400 is depicted in which the main processor 421 can communicate directly with the I / O device 430b, such as via HYPERTRANSPORT, RAPIDIO, or INFINIBAND communication technology. Figure 4C An embodiment where local bus and direct communication are mixed is also depicted: processor 421 communicates with I / O device 430a using a local interconnect bus while communicating directly with I / O device 430b.
[0097] A wide variety of I / O devices 430a-430n may be present in computing device 400. Input devices include keyboards, mice, trackpads, trackballs, microphones, dials, touchpads, touch screens, and drawing tablets. Output devices include video displays, speakers, inkjet printers, laser printers, projectors, and dye sublimation printers. I / O devices may be controlled by I / O controller 423, such as Figure 4B 4. The I / O controller may control one or more I / O devices, such as a keyboard 426 and a pointing device 427, such as a mouse or an optical pen. In addition, the I / O devices may also provide storage and / or installation media 416 for the computing device 400. In other embodiments, the computing device 400 may provide a USB connection (not shown) to receive a handheld USB storage device, such as a USB flash drive cable of a device manufactured by Twintech Industry, Inc. of Los Alamitos, California.
[0098] Reference again Figure 4B, the computing device 400 may support any suitable installation device 416, such as a disk drive, an optical drive, a CD-R / RW drive, a DVD-ROM drive, a flash memory drive, a tape drive in various formats, a USB device, a hard drive, a network interface, or any other device suitable for installing software and programs. The computing device 400 may further include a storage device, such as one or more hard drives or a redundant array of independent disks, for storing an operating system and other related software, and for storing application software programs, such as any program or software 420 for implementing (e.g., configured and / or designed for) the systems and methods described herein, etc. Optionally, any of the installation devices 416 may also be used as a storage device. In addition, the operating system and software may be run from a bootable media.
[0099] In addition, computing device 400 may include a network interface 418 to interface to network 404 via a variety of connections, including but not limited to a standard telephone line, a LAN or WAN link (e.g., 802.11, T1, T3, 56 kb, X.25, SNA, DECNET), a broadband connection (e.g., ISDN, Frame Relay, ATM, Gigabit Ethernet, Ethernet over SONET), a wireless connection, or some combination of any or all of the above. The connection may be established using a variety of communication protocols (e.g., TCP / IP, IPX, SPX, NetBIOS, Ethernet, ARCNET, SONET, SDH, Fiber Distributed Data Interface (FDDI), RS232, IEEE 802.11, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, IEEE 802.11ac, IEEE802.11ad, CDMA, GSM, WiMax, and direct asynchronous connection). In one embodiment, computing device 400 communicates with other computing devices 400' via any type and / or form of gateway or tunneling protocol, such as Secure Sockets Layer (SSL) or Transport Layer Security (TLS). Network interface 418 may include a built-in network adapter, a network interface card, a PCMCIA network card, a card bus network adapter, a wireless network adapter, a USB network adapter, a modem, or any other device suitable for interfacing computing device 400 to any type of network capable of communicating and performing the operations described herein.
[0100] In some embodiments, the computing device 400 may include or be connected to one or more display devices 424a to 424n. Thus, any one of the I / O devices 430a to 430n and / or the I / O controller 423 may include any type and / or form of suitable hardware, software, or a combination of hardware and software to support, enable, or enable the connection and use of the display devices 424a to 424n by the computing device 400. For example, the computing device 400 may include any type and / or form of video adapters, video cards, drivers, and / or libraries to interface, communicate, connect, or otherwise use the display devices 424a to 424n. In one embodiment, the video adapter may include multiple connectors to interface to the display devices 424a to 424n. In other embodiments, the computing device 400 may include multiple video adapters, each of which is connected to the display devices 424a to 424n. In some embodiments, any part of the operating system of the computing device 400 may be configured to use multiple displays 424a to 424n. One of ordinary skill in the art will recognize and appreciate the various ways and embodiments in which the computing device 400 may be configured to have one or more display devices 424a-424n.
[0101] In another embodiment, the I / O device 430 can be a bridge between the system bus 450 and an external communication bus, such as a USB bus, an Apple desktop bus, an RS-232 serial, a SCSI bus, a FireWire bus, a FireWire 800 bus, an Ethernet bus, an AppleTalk bus, a Gigabit Ethernet bus, an Asynchronous Transfer Mode bus, a Fiber Channel bus, a Serial Attached Small Computer System Interface bus, a USB connection, or an HDMI bus.
[0102] like Figure 4C As shown in , in some implementations, a host-isolated coprocessor (e.g., system-on-chip credential vault 460) can perform the secure sketch generation and / or reproduction methods discussed above. This can provide additional security by separating and isolating these functions from the processor of the computing device 400 and providing easier implementation for the manufacturer of the computing device 400. In addition, the SoC 460 can be tamper-resistant or hardened from intrusion, thereby providing additional physical security for biometric data on the device. In addition to the coprocessor, the SOC 460 can also include the above-mentioned combination of Figures 2A to 2C Any of the components discussed, including the biometric processor 206 , the fuzzy extractor 208 , the template storage device 108 , the data storage device 218 , the cryptographic circuit 216 and / or the random or pseudo-random number generator 202 .
[0103] Figure 4B and 4CA computing device 400 of the class depicted in may operate under the control of an operating system that controls the scheduling of tasks and access to system resources. The computing device 400 may run any operating system, such as any of the following: the Microsoft Windows operating system, different versions of the Unix and Linux operating systems, any version of the MAC OS for Macintosh computers, any embedded operating system, any real-time operating system, any open source operating system, any proprietary operating system, any operating system for mobile computing devices, or any other operating system capable of running on a computing device and performing the operations described herein. Typical operating systems include, but are not limited to: Android produced by Google Inc.; Windows 7 and 8 produced by Microsoft Corporation of Redmond, Washington; MAC OS produced by Apple Computer of Cupertino, California; WebOS produced by Research in Motion (RIM); OS / 2 produced by International Business Machines of Armonk, New York; and Linux, a freely available operating system distributed by Caldera Corp. of Salt Lake City, Utah, or any type and / or form of Unix operating system, among others.
[0104] The computing device 400 may be any workstation, phone, desktop computer, laptop or notebook computer, server, handheld computer, mobile phone or other portable telecommunication device, media playing device, gaming system, mobile computing device, or any other type and / or form of computing, telecommunication or media device capable of communicating. The computer system 400 has sufficient processor power and memory capacity to perform the operations described herein.
[0105] In some embodiments, computing device 400 may have a different processor, operating system, and input device consistent with the device. For example, in one embodiment, computing device 400 is a smart phone, mobile device, tablet computer, or personal digital assistant. In other embodiments, computing device 400 is an Android-based mobile device, an iPhone smart phone manufactured by Apple Computer of Cupertino, California, or a Blackberry or WebOS-based handheld device or smart phone, such as a device manufactured by Dynamic Research. In addition, computing device 400 can be any workstation, desktop computer, laptop or notebook computer, server, handheld computer, mobile phone, any other computer, or other form of computing or telecommunications device that is capable of communication and has sufficient processor power and memory capacity to perform the operations described herein.
[0106] Although the present disclosure may refer to one or more "users", such "users" may refer to devices or stations (STAs) associated with the users, for example, consistent with the terms "user" and "multi-users" typically used in the context of a multi-user multiple-input multiple-output (MU-MIMO) environment.
[0107] Although the examples of communication systems described above may include devices and APs operating according to the 802.11 standard, it should be understood that embodiments of the described systems and methods may operate according to other standards and use wireless communication devices other than devices configured as devices and APs. For example, multi-unit communication interfaces associated with cellular networks, satellite communications, vehicle communication networks, and other non-802.11 wireless networks may utilize the systems and methods described herein to achieve improved overall capacity and / or link quality without departing from the scope of the systems and methods described herein.
[0108] It should be noted that certain paragraphs of the present disclosure may refer to terms such as "first" and "second" in connection with devices, operating modes, transmission chains, antennas, etc., for the purpose of identifying or distinguishing one from another or from others. These terms are not intended to relate entities (e.g., first device and second device) only in time or according to sequence, but in some cases, these entities may include such a relationship. These terms also do not limit the number of possible entities (e.g., devices) that can operate within a system or environment.
[0109] It should be understood that the system described above may provide multiple components of any or each of those components, and these components may be provided on a stand-alone machine or, in some embodiments, on multiple machines in a distributed system. In addition, the system and method described above may be provided as one or more computer-readable programs or executable instructions embodied on or in one or more articles of manufacture. The article of manufacture may be a floppy disk, a hard disk, a CD-ROM, a flash memory card, a PROM, a RAM, a ROM, or a tape. In general, a computer-readable program may be implemented in any programming language, such as LISP, PERL, C, C++, C#, PROLOG, or in any byte code language such as JAVA. A software program or executable instruction may be stored as an object code on or in one or more articles of manufacture.
[0110] Although the foregoing written description of the methods and systems enables one of ordinary skill in the art to make and use what is currently believed to be the best mode, one of ordinary skill in the art will understand and appreciate that there are variations, combinations, and equivalents to the specific embodiments, methods, and examples herein. Therefore, the methods and systems of the present invention should not be limited to the embodiments, methods, and examples described above, but to all embodiments and methods within the scope and spirit of the present disclosure.
Claims
1. A method for achieving data security via biometric key generation, comprising: receiving, by biometric processor circuitry of a first device, a first biometric template comprising a biometric data set having a plurality of minutiae elements; receiving, by the biometric processor circuitry, a decoding key from the cryptographic circuitry of the first device; modifying, by the biometric processor circuitry, a subset of the plurality of minutiae elements of the first biometric template to encode the decoding key; generating, by the biometric processor circuitry, a second biometric template comprising a modified subset of the plurality of minutiae elements; transmitting, by the first device, the second biometric template to a second device, the second device being configured to extract the decoding key from the second biometric template via comparison of the second biometric template with a corresponding input biometric data set, the decoding key comprising an encoding of a security sketch and a first random number; generating, by fuzzy extractor circuitry of the second device, a second random number from the security sketch, the first random number, and the input biometric data set; receiving, by cryptographic circuitry of the second device, the second random number and the encrypted data set; as well as The encrypted data set is decrypted by the cryptographic circuitry of the second device using the second random number to generate a decrypted data set.
2. The method of claim 1, wherein the decoding key comprises a cryptographic key generated by the cryptographic circuitry of the device. The method of claim 2 , wherein the cryptographic key comprises a symmetric key. The method of claim 2 , wherein the cryptographic key comprises a private key in an asymmetric key pair.
5. The method of claim 1 , further comprising generating, by a pseudo-random number generator of the cryptographic circuitry, an asymmetric key pair using the second random number as a seed input; and The encrypted data set is decrypted by the cryptographic circuitry using a private key from the asymmetric key pair.
6. A system for achieving data security via biometric key generation, comprising: Biometric circuitry of a first device, the biometric circuitry being configured to: receiving a biometric template from a second device, the biometric template comprising a biometric data set having a plurality of minutiae elements, receiving an input biometric data set having a second plurality of minutiae elements, extracting, via comparison of the first plurality of minutiae elements with a second plurality of minutiae elements, modifications to the biometric template performed by the second device, the modifications comprising an encoding of a security sketch and a first random number; fuzzy extractor circuitry configured to generate a second random number from the security sketch, the first random number, and the input biometric data set; as well as The cryptographic circuitry of the device, the cryptographic circuitry being configured to: receiving the second random number and the encrypted data set, and The encrypted data set is decrypted using the second random number to generate a decrypted data set.
7. The system of claim 6, wherein the cryptographic circuitry comprises a pseudo-random number generator configured to generate an asymmetric key pair using the second random number as a seed input; and Wherein the cryptographic circuitry is further configured to decrypt the encrypted data set using a private key in the asymmetric key pair.
8. The system of claim 6, wherein the cryptographic circuitry is further configured to decrypt the encrypted data set using the second random number as a symmetric encryption key.
9. The system of claim 6, wherein a Hamming distance between the input biometric data set and the biometric template is less than a predetermined distance.
10. The system of claim 6, wherein the security sketch and the first random number are received via an insecure communication channel.
Citation Information
Patent Citations
System and method for biometric key management
US20170185761A1