IP Library › Granted Patent US 11,595,210
Granted Patent B2
US 11,595,210 · App. 16/867,281 · Granted Feb 28, 2023

Accurate, real-time and secure privacy-preserving verification of biometrics or other sensitive information

Inventor: Luong Hoang (Bellevue, WA)
Assignee: Inferati Inc.
H04L9/32G06N20/00H04L63/0861
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,595,210
App. No.
16/867,281
Granted
Feb 28, 2023
Kind
B2
Abstract

A facility for performing accurate and real-time privacy-preserving biometrics verification in a client-server environment is described. The facility receives the user's biometrics data such as face, voice, fingerprint, iris, gait, heart rate, etc. The facility then processes and applies various privacy-preserving techniques to this data to complete enrollment and authenticate users, including but not limited to: encrypting data with a key using homomorphic encryption techniques and sending the encryption to the server; the server computes directly on the encryption and returns the result, which is also encrypted under the same key, to the client; the client optionally performs post-processing and decryption (in any order) and obtains the enrollment or authentication result. The facility may repeat this process to increase security level, resulting in more than 1 round trip between the client and the server. Lastly, the facility employs methods that generalize to other privacy-preserving applications beyond biometrics verification.

Claims (84)

1. A system for identifying a user, the system comprising:

a server storing biometric data, the stored biometric data being usable to identify a user of a computing device, the stored biometric data having been homomorphically encrypted; and

a computing device configured to receive user biometric data, the computing device being further configured to:

homomorphically encrypt the user biometric data; and

transmit the homomorphically-encrypted biometric data to a server,

the server being further configured to generate an authentication result based on determining whether the user biometric data and the stored biometric data identify the same user, and

the server determining whether the specified biometric data and the stored biometric data identify the same user by using a machine learning model to compare the indicated encrypted biometric data and the stored encrypted biometric data, the server being further configured to:

split the machine learning model used to determine whether the user biometric data and the stored biometric data identify the same user into one of more sub-models; and

perform a first portion of the determination by a first sub-model in accordance with the splitting,

and wherein the computing device is configured to perform a second portion of the determination by a second sub-model in accordance with the splitting, the second sub-model being distinct from the first proper sub-model.

2. The system of claim 1 , wherein the server is further configured to:

encrypt the authentication result; and

transmit the encrypted authentication result to the computing device.

3. The system of claim 1 , wherein the computing device is further configured to, before homomorphically encrypting the user biometric data, obfuscate the user biometric data.

4. The system of claim 1 , wherein the server is further configured to prune the machine learning model before using the machine learning model to compare the user input biometric data and the stored biometric data.

5. The system of claim 1 , wherein the server is further configured to use knowledge distillation techniques to train the machine learning model.

6. The system of claim 1 , wherein the server is further configured to compress the machine learning model before using the machine learning model to compare the user input biometric data and the stored biometric data.

7. A system for identifying a user, the system comprising:

a server storing biometric data, the stored biometric data being usable to identify a user of a computing device, the stored biometric data having been asymmetrically encrypted; and

a computing device configured to receive user biometric data, the computing device being further configured to:

homomorphically encrypt the user biometric data; and

transmit the homomorphically-encrypted biometric data to a server,

the server being further configured to generate an authentication result based on determining whether the user biometric data and the stored biometric data identify the same user,

the server being further configured to:

split a machine learning model used to determine whether the user biometric data and the stored biometric data identify the same user into one or more sub-models; and

perform a first portion of the determination by a first sub-model in accordance with the splitting,

and wherein the computing device is configured to perform a second portion of the determination by a second sub-model in accordance with the splitting, the second sub-model being distinct from the first proper sub-model.

8. The system of claim 7 , wherein the server is further configured to:

encrypt the authentication result; and

transmit the encrypted authentication result to the computing device.

9. The system of claim 7 , wherein the computing device is further configured to, before homomorphically encrypting the user biometric data, obfuscate the user biometric data.

10. The system of claim 7 , wherein the server is further configured to prune the machine learning model before using the machine learning model to compare the user input biometric data and the stored biometric data.

11. The system of claim 7 , wherein the server is further configured to use knowledge distillation techniques to train the machine learning model.

12. The system of claim 7 , wherein the server is further configured to compress the machine learning model before using the machine learning model to compare the user input biometric data and the stored biometric data.

13. A system for identifying a user, the system comprising:

a server storing biometric data, the stored biometric data being usable to identify a user of a computing device, the stored biometric data having been homomorphically encrypted; and

a computing device configured to receive user input indicating biometric data, the computing device being further configured to:

asymmetrically encrypt the user biometric data; and

transmit the asymmetrically-encrypted biometric data to a server,

the server being further configured to generate an authentication result based on determining whether the user biometric data and the stored biometric data identify the same user,

the server being further configured to:

split a machine learning model used to determine whether the user biometric data and the stored biometric data identify the same user into one or more sub-models; and

perform a first portion of the determination by a first sub-model in accordance with the splitting,

and wherein the computing device is configured to perform a second portion of the determination by a second sub-model in accordance with the splitting, the second sub-model being distinct from the first proper sub-model.

14. The system of claim 13 , wherein the server is further configured to:

encrypt the authentication result; and

transmit the encrypted authentication result to the computing device.

15. The system of claim 13 , wherein the computing device is further configured to, before asymmetrically encrypting the user biometric data, obfuscate the user biometric data.

16. The system of claim 13 , wherein the server is further configured to prune the machine learning model before using the machine learning model to compare the user input biometric data and the stored biometric data.

17. The system of claim 13 , wherein the server is further configured to use knowledge distillation techniques to train the machine learning model.

18. The system of claim 13 , wherein the server is further configured to compress the machine learning model before using the machine teaming model to compare the user input biometric data and the stored biometric data.

19. One or more storage devices collectively storing a verification data structure, the data structure comprising:

information indicating a user;

information specifying homomorphically-encrypted biometric data;

a first sub-model, split from a machine learning model;

a second sub-model, split from the machine learning model; and

information specifying an authentication result,

such that contents of the data structure are directly usable to identify the user in a user authentication system based on the homomorphically-encrypted biometric data,

such that the first sub-model is used to perform a first proper subset of the computations required to identify a user, and

such that the second sub-model is used to perform a second proper subset of the computations required to identify a user that is different from the first proper subset.

20. The one or more storage devices of claim 19 , the data structure further comprising:

information specifying second encrypted biometric data,

the second encrypted biometric data being homomorphically-encrypted,

such that the authentication result indicates whether the second encrypted biometric data indicates the user,

and such that the determination of whether the second encrypted biometric data indicates the user is performed by comparing the encrypted biometric data to the second encrypted biometric data.

21. The one or more storage devices of claim 20 , wherein the encrypted biometric data is asymmetrically encrypted.

22. The one or more storage devices of claim 20 , wherein the second encrypted biometric data is asymmetrically encrypted.

23. The one or more storage devices of claim 20 , wherein the authentication result is encrypted.

24. The one or more storage devices of claim 20 , further comprising:

the homomorphically-encrypted biometric data is obfuscated before being encrypted; and

the second encrypted biometric data is obfuscated before being encrypted.

25. The one or more storage devices of claim 19 , wherein the machine learning model is pruned before being used to compare the first encrypted biometric data and the second encrypted biometric data.

26. The one or more storage devices of claim 19 , wherein the machine learning model has been trained by using knowledge distillation techniques.

27. The one or more storage devices of claim 19 , wherein the machine learning model has been compressed before using the machine learning model to compare the first encrypted biometric data and the second encrypted biometric data.

28. A system for identifying a user, the system comprising:

a server storing a representation of biometric data, the stored representation of biometric data being usable to identify a user of a computing device, the stored representation of biometric data being the result of homomorphically encrypting sensed biometric data; and

a computing device configured to receive user biometric data, the computing device being further configured to:

homomorphically encrypt the user biometric data; and

transmit the homomorphically-encrypted biometric data to a server,

the server being further configured to generate an authentication result based on determining whether the homomorphically-encrypted user biometric data and the stored representation of biometric data representation identify the same user without decrypting both the stored representation of biometric data representation and the indicated homomorphically-encrypted biometric data, and

the server being configured to:

split a machine learning model used to determine whether the user biometric data and the stored representation of biometric data identify the same user into one or more sub-models; and

perform a first portion of the determination by a first sub-model in accordance with the splitting,

and wherein the computing device is configured to perform a second portion of the determination by a second sub-model in accordance with the splitting, the second sub-model being distinct from the first proper sub-model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2020
From: HOANG, LUONG
To: INFERATI INC.
Reel/Frame 052666/0683 →
Continuity (2)
Provisional Application 62843908 · May 6, 2019
Related Publication 20200358611A1 · Nov 12, 2020
Cited By (1)
US 12,494,894