IP Library Granted Patent US 9,197,637
Granted Patent B2
US 9,197,637 · App. 14/324,601 · Granted Nov 24, 2015

Method of comparing private data without revealing the data

Inventors: Bon K. Sy (Bayside, NY); Arun Prakash Kumara Krishnan (Flushing, NY)
Assignee: Research Foundation of the City University of New York
H04L63/0861G06F17/10G06F21/32G06F21/6254G06K9/6247H04L9/008H04L9/0866H04L9/3218H04L9/3231
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 9,197,637
App. No.
14/324,601
Granted
Nov 24, 2015
Kind
B2
Abstract

Disclosed in this specification is a method and program storage device for comparing two sets of private data without revealing those private data. If the comparison deems the two data sets sufficiently similar, helper data may be provided to permit reconstruction of one of the private data sets without transmission of that private data set.

Claims (28)

1. A method for identity verification, the method comprising steps of:

receiving, by a client computer from an interface gateway, a device identifier (DID) and a noise-added biometric sample (S 1 +N) where S 1 is a biometric sample of an individual, N is noise, and the device identifier (DID) identifies a device that transmitted the noise-added biometric sample (S 1 +N) to the interface gateway;

retrieving from a database, by the client computer, an encryption key laden with noise-added biometric sample (K 1 +S 2 +N), where S 2 is a stored biometric sample corresponding to S 1 , K 1 is a first key, the retrieving being based on the device identifier (DID), wherein the client computer does not know the first key (K 1 ) or the noise (N), and S 1 and S 2 are non-identical;

computing, by the client computer, a second key (K 2 ) by solving K 2 =(K 1 +S 2 +N)−(S 1 +N);

determining whether or not the second key (K 2 ) is similar within a threshold to a stored value of the first key (K 1 ) located on a server computer without revealing the stored value of the first key (K 1 ) by computing, using the client computer and the server computer, a non-zero bisector vector (x) in the equation (A 1 +A 2 )x=λ d1 V d1 +λ d2 V d2 , where A 1 and A 2 are private matrixes corresponding to K 1 and K 2 , respectively, λ d1 and λ d2 are respective eigenvalues and V d1 and V d2 are corresponding unity normalized eigenvectors, the computing occurring by exchanging encrypted matrix A 1 ; encrypted vector λ d1 V d1 ; encrypted matrix A 2 ; and encrypted vector λ d2 V d2 respectively, without the client computer or the server computer revealing d 1 , λ d1 , V d1 , d 2, λ d2 or V d2 ;

if the determining within the threshold is satisfied, the second key (K 2 ) and the stored value of the first key (K 1 ) are deemed sufficiently similar;

if the determining within the threshold is unsatisfied, the second key (K 2 ) and the stored value of the first key (K 1 ) are deemed dissimilar;

transmitting from the server computer to the client computer, if the threshold is satisfied, helper data that permits the client computer to reconstruct a secret key (K′) identical to the first key (K 1 ) by combining the helper data with the private matrix A 1 ;

transmitting, to the interface gateway, the secret key (K′).

2. The method as recited in claim 1 , wherein K 1 is not known by the client computer or the individual.

3. The method as recited in claim 2 , wherein the device is a mobile cellular telephone or tablet computer.

4. The method as recited in claim 2 , wherein the biometric sample of the individual is a voice biometric sample.

5. The method as recited in claim 2 , wherein the biometric sample of the individual is a picture of a face.

6. The method as recited in claim 2 , wherein the biometric sample of the individual is a fingerprint.

7. A non-transient program storage device readable by machine, tangibly embodying a program of instructions executable by machine to perform a method for identity verification, the method comprising steps of:

receiving, by a client computer from an interface gateway, a device identifier (DID) and a noise-added biometric sample (S 1 +N) where S 1 is a biometric sample of an individual, N is noise, and the device identifier (DID) identifies a device that transmitted the noise-added biometric sample (S 1 +N) to the interface gateway;

retrieving from a database, by the client computer, an encryption key laden with noise-added biometric sample (K 1 +S 2 +N), where S 2 is a stored biometric sample corresponding to S 1 , K 1 is a first key, the retrieving being based on the device identifier (DID), wherein the client computer does not know the first key (K 1 ) or the noise (N), and S 1 and S 2 are non-identical;

computing, by the client computer, a second key (K 2 ) by solving K 2 =(K 1 +S 2 +N)−(S 1 +N);

determining whether or not the second key (K 2 ) is similar within a threshold to a stored value of the first key (K 1 ) located on a server computer without revealing the stored value of the first key (K 1 ) by computing, using the client computer and the server computer, a non-zero bisector vector (x) in the equation (A 1 +A 2 )x=λ d1 V d1 +λ d2 V d2 , where A 1 and A 2 are private matrixes corresponding to K 1 and K 2 , respectively, λ d1 and λ d2 are respective eigenvalues and V d1 and V d2 are corresponding unity normalized eigenvectors, the computing occurring by exchanging encrypted matrix A 1 ; encrypted vector λ d1 V d1 ; encrypted matrix A 2 ; and encrypted vector λ d2 V d2 respectively, without the client computer or the server computer revealing d 1 , λ d1 , V d1 , d 2, λ d2 or V d2 ;

if the determining within the threshold is satisfied, the second key (K 2 ) and the stored value of the first key (K 1 ) are deemed sufficiently similar;

if the determining within the threshold is unsatisfied, the second key (K 2 ) and the stored value of the first key (K 1 ) are deemed dissimilar;

transmitting from the server computer to the client computer, if the threshold is satisfied, helper data that permits the client computer to reconstruct a secret key (K′) identical to the first key (K 1 ) by combining the helper data with the private matrix A 1 ;

transmitting, to the interface gateway, the secret key (K′).

8. The program storage device as recited in claim 7 , wherein K 1 is not known by the client computer or the individual.

9. The program storage device as recited in claim 8 , wherein the device is a mobile cellular telephone or tablet computer.

10. The program storage device as recited in claim 8 , wherein the biometric sample of the individual is a voice biometric sample.

11. The program storage device as recited in claim 8 , wherein the biometric sample of the individual is a picture of a face.

12. The program storage device as recited in claim 8 , wherein the biometric sample of the individual is a fingerprint.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2014
From: SY, BON K.; KRISHNAN, ARUN PRAKASH KUMARA
To: RESEARCH FOUNDATION OF THE CITY UNIVERSITY OF NEW YORK
Reel/Frame 033891/0104 →
Continuity (4)
Continuation In Part 13544351 · Jul 9, 2012
Provisional Application 62013095 · Jun 17, 2014
Provisional Application 61505562 · Jul 8, 2011
Related Publication 20140325230A1 · Oct 30, 2014