IP Library Granted Patent US 10,461,935
Granted Patent B2
US 10,461,935 · App. 15/582,358 · Granted Oct 29, 2019

Verification process of authentication or biometric identification

Inventors: Julien Paul Keuffer (Issy les Moulineaux, FR); Herve Chabanne (Issy les Moulineaux, FR); Roch Lescuyer (Issy les Moulineaux, FR)
Assignee: IDEMIA IDENTITY & SECURITY FRANCE
H04L9/3231G06F21/32G06K9/00885H04L63/0861G06K2009/00959G06Q20/40145H04L63/10H04L2463/082
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 10,461,935
App. No.
15/582,358
Granted
Oct 29, 2019
Kind
B2
Abstract

The invention proposes a method for processing biometric data, comprising verification of the result of a calculation of distance between a biometric candidate datum and at least one biometric reference datum, each comprising a number n of indexed components (a i , b i ), said calculation of distance comprising that of a polynomial of the components of the biometric data, the method being executed by a proving entity and a verification entity, the method comprising steps during which: the proving entity communicates to the verification entity the result of calculation of the distance between the candidate and reference biometric data, and said data, the proving entity generates from each datum a function of a number d of variables f a (i 1 , . . . , i d ), f b (i 1 , . . . , i d ) where d=log 2 n, defined for each variable on the set {0,1}, by reformulation of the index i of each component (a i , b i ) in binary format, the proving entity generates from each function a polynomial of d variables ã(x 1 , . . . x d ), {circumflex over (b)} (x 1 , . . . x d ) defined on d where is a finite field, such that each polynomial ã, {circumflex over (b)} coincides with the corresponding function f a ,f b on the set {0,1} d , and generates from the polynomials ã, {circumflex over (b)} a polynomial p(x 1 , . . . , x d ) of d variables of the same expression as that of the distance between the data, and the proving entity and the verification entity engage in a Sumcheck protocol applied to the polynomial p to verify the result of calculation of the distance between the data.

Claims (295)

1. A method for processing biometric data, the method being executed by a proving entity (P) and a verification entity (V), each entity being a processing unit comprising processing and communication means with the other entity, the method comprising the following steps:

communicating, by the proving entity (P), to the verification entity (V) the result of a calculation of distance between a biometric candidate datum (a) and at least one biometric reference datum (b), each comprising a number n of indexed components (a i , b i ), and said data, said calculation of distance comprising that of a polynomial of the components of the biometric data,

generating, by the proving entity (P), from each datum a function of a number d of variables f a (i 1 , . . . , i d ), f b (i 1 , . . . , i d ) where d=log 2 n, defined for each variable on the set {0,1}, by reformulation of the index i of each component (a i , b i ) in binary format,

generating, by the proving entity (P), from each function a polynomial of d variables ã(x 1 , . . . x d ), {circumflex over (b)}(x i , . . . x d ) defined on λ d where ∥ is a finite field, such that each polynomial ã, {circumflex over (b)} coincides with the corresponding function f a ,f b on the set {0,1} d , and

generating, by the proving entity (P) from the polynomials ã, {circumflex over (b)} a polynomial p(x 1 , . . . , x d ) of d variables of the same expression as that of the distance between the data,

engaging, by the proving entity (P) and the verification entity (V), in a Sumcheck protocol applied to the polynomial p to verify the result of the calculation of the distance between the data, and

verifying of the result of calculation of distance between the biometric candidate datum and the at least one biometric reference datum.

2. The method as claimed in claim 1 , in which calculation of distance comprises that of a scalar product, and the polynomial p comprises at least one term g equal to a scalar product between the polynomials ã and {circumflex over (b)}:

g ( x 1 , . . . ,x d )=ã( x 1 , . . . ,x d )·{tilde over (b)}( x 1 , . . . ,x d ).

3. The method as claimed in claim 2 , in which the calculated distance is the square of the Euclidian distance, and the polynomial p is written as:

p ( x 1 , . . . ,x d )=ã( x 1 , . . . ,x d )·ã( x 1 ; . . . ,x d )+{tilde over (b)}( x 1 , . . . ,x d )·{tilde over (b)}( x 1 , . . . ,x d )−2 g ( x 1 , . . . ,x d ).

4. The method as claimed in claim 2 , in which the calculated distance is the Hamming distance, and the polynomial p is written as:

p ( x 1 , . . . ,x d )=ã( x 1 , . . . ,x d )+{tilde over (b)}( x 1 , . . . ,x d )−2 g ( x 1 , . . . ,x d ).

5. The method as claimed in claim 1 , in which the biometric candidate datum and the biometric reference datum or the biometric reference data are initially retained by the proving entity (P), and the method comprises a preliminary step of masking, by the proving entity (P), biometric data, said masking comprising the random generation of a circular permutation and a vector of n components, and performing a sum or the operation exclusive or between each datum permutated by the circular permutation and the randomly generated vector.

6. The method as claimed in claim 1 , in which each polynomial ã( x 1 , . . . , x d ) and {circumflex over (b)}( x 1 , . . . , x d ) is of degree a in each variable.

7. The method as claimed in claim 6 , in which the polynomial ã( x 1 , . . . , x d ) is defined by:

x

F

d

,

a

~

(

x

)

=

i

=

(

i

1

,

,

i

d

)

{

0

,

1

}

d

a

(

i

)

x

i

(

x

)

with

:

x

υ

(

x

1

,

,

x

d

)

=

k

=

1

d

χ

υ

k

(

x

k

)

and where the function Xv k (x k ) is defined, for x k ∈{0,1}, by:

{

χ

υ

k

(

x

k

)

=

1

-

x

k

if

υ

k

=

0

χ

υ

k

(

x

k

)

=

x

k

if

υ

k

=

1

8. The method as claimed in claim 6 wherein calculation of distance comprises that of a scalar product, and the polynomial p comprises at least one term g equal to a scalar product between the polynomials ãand {circumflex over (b)}:

g ( x 1 , . . . ,x d )=ã( x 1 , . . . ,x d )·{tilde over (b)}( x 1 , . . . ,x d )

in which the application of the Sumcheck protocol directly comprise generating by the proving entity (P) j polynomials p j of a single variable from the polynomial p, and transmitting to the verification entity (V) evaluations of each polynomial p j in three points for the verification entity (V) to interpolate the polynomial p j .

9. Method according to claim 8 , wherein for each polynomial p j , for j from 1 to d−1, the proving entity (P) transmits the evaluations of these polynomials in 0, 1, and a third value t.

10. The method as claimed in claim 7 , in which the application the Sumcheck protocol comprises a series of iterations for j from 2 to d−1 during which the verification entity (V) randomly generates and communicates to the proving entity a value r j−1 , and the proving entity (P) generates a polynomial:

p

j

(

X

j

)

n

=

x

j

+

1

{

0

,

1

}

x

d

[

0

,

1

]

n

p

(

r

1

,

,

r

j

-

1

,

X

j

,

x

j

+

1

,

,

x

d

)

and, at each iteration,

the proving entity (P) has for each polynomial ã, {tilde over (b)} a table A (j) , B (j) comprising respectively all the possible values of the functions ã(r 1 , . . . r j−2 , x j−i , . . . x d ) and {tilde over (b)} (r 1 , . . . r j−2 , x j−i , . . . x d ) for (x j−i , . . . x d )∈{0,1} d−j+1 , where each value r k (k=l, . . . j−2) has been generated randomly by the verification entity and sent to the proving entity during the preceding iterations,

evaluation of a polynomial p i in a value t is performed by the proving entity (P) from the values t, r j−1 and the values of the tables A (j) , B (j) , and

the proving entity (P) increments the tables A( j+1 ), B( j+1 ) for the iteration j+1 by replacing their values by all the possible values ã(r 1 , . . . r j−1 , x j , . . . x d ) and t {tilde over (b)}(r 1 , . . . r j−1 , x j , . . . x d ) for (x j , . . . x d )∈{0,1} d−j , the tables being initialised for the polynomial p2 by comprising all the possible values of the polynomials ã, {tilde over (b)} on the set {0,1} d .

11. The method as claimed in claim 2 , comprising verification of the result of calculation of a scalar product between a biometric candidate datum and each of a number m of biometric reference data, in which the biometric reference data are combined into a matrix M of size (n,m) such that the scalar products are obtained by the product of the candidate vector and of the matrix, and the Sumcheck protocol is executed on a polynomial p (r1, . . . , rd) (j 1 , . . . , j d ) such that:

p

(

r

1

,

,

r

d

)

(

j

1

,

,

j

d

)

=

j

1

,

,

j

d

{

0

,

1

}

d

a

~

(

j

1

,

,

j

d

)

·

M

(

j

1

,

,

j

d

,

r

1

,

,

r

d

)

where (r 1 , . . . , r d ) is a vector whereof the components are generated randomly by the verification entity (V).

12. The method of claim 1 , wherein:

the biometric candidate datum (a) is a biometric datum acquired on a biometric trait of an individual.

13. The method claimed in claim 12 , in which the proving entity (P) is an electronic device personal to the individual of telephone type, personal computer or digital tablet comprising a computer, a image sensor, and a module for acquisition of a biometric reference datum contained in an identity document.

Assignments (12)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER REPLACING 10158873 WITH 10185873 PREVIOUSLY RECORDED ON REEL 71930 FRAME 625. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Apr 1, 2026
From: IDEMIA IDENTITY & SECURITY FRANCE
To: IDEMIA PUBLIC SECURITY FRANCE
Reel/Frame 075530/0067 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2025
From: IDEMIA IDENTITY & SECURITY FRANCE
To: IDEMIA PUBLIC SECURITY FRANCE
Reel/Frame 071930/0625 →
CHANGE OF NAME Recorded Jul 3, 2024
From: SAFRAN IDENTITY & SECURITY
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 068119/0270 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY NAMED PROPERTIES 14/366,087 AND 15/001,534 PREVIOUSLY RECORDED ON REEL 048039 FRAME 0605. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jan 17, 2024
From: MORPHO
To: SAFRAN IDENTITY & SECURITY
Reel/Frame 066343/0143 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE REMOVE PROPERTY NUMBER 15001534 PREVIOUSLY RECORDED AT REEL: 055314 FRAME: 0930. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 17, 2024
From: SAFRAN IDENTITY & SECURITY
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 066629/0638 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE ERRONEOUSLY NAME PROPERTIES/APPLICATION NUMBERS PREVIOUSLY RECORDED AT REEL: 055108 FRAME: 0009. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 17, 2024
From: SAFRAN IDENTITY & SECURITY
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 066365/0151 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY NAMED PROPERTIES 14/366,087 AND 15/001,534 PREVIOUSLY RECORDED ON REEL 047529 FRAME 0948. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jan 17, 2024
From: SAFRAN IDENTITY & SECURITY
To: IDEMIA IDENTITY & SECURITY
Reel/Frame 066343/0232 →
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 055108 FRAME: 0009. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Feb 17, 2021
From: SAFRAN IDENTITY AND SECURITY
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 055314/0930 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE RECEIVING PARTY DATA PREVIOUSLY RECORDED ON REEL 047529 FRAME 0948. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Oct 29, 2020
From: SAFRAN IDENTITY AND SECURITY
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 055108/0009 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2019
From: KEUFFER, JULIEN PAUL; CHABANNE, HERVE; LESCUYER, ROCH
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 050171/0629 →
CHANGE OF NAME Recorded Jan 9, 2019
From: MORPHO
To: SAFRAN IDENTITY & SECURITY
Reel/Frame 048039/0605 →
CHANGE OF NAME Recorded Aug 30, 2018
From: SAFRAN IDENTITY & SECURITY
To: IDEMIA IDENTITY & SECURITY
Reel/Frame 047529/0948 →
Priority Claims (1)
FR 16 53890 · Apr 29, 2016 · national
Continuity (1)
Related Publication 20170317831A1 · Nov 2, 2017