IP Library Granted Patent US 11,429,624
Granted Patent B2
US 11,429,624 · App. 15/777,305 · Granted Aug 30, 2022

Assigning device

Inventors: Geert Jan Schrijen (Roermond, NL); Derk Jan Meuleman (Kessenich, BE)
Assignee: INTRINSIC ID B.V.
G06F16/2468G09C1/00H04L9/3278H04L9/0643H04L2209/12H04L2209/26
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,429,624
App. No.
15/777,305
Granted
Aug 30, 2022
Kind
B2
Abstract

An assigning device ( 100 ) for assigning fixed identifiers to fuzzy identifiers, the assigning device comprising a database storing multiple fuzzy identifiers, and a matching unit ( 130 ) arranged to determine if a matching fuzzy identifier exists in the database that matches a fuzzy input identifier according to a matching criterion and to determine if a matching fuzzy identifier does not exist in the database according to an absent criterion.

Claims (79)

1. An assigning device for assigning fixed identifiers to fuzzy physically unclonable functions, the assigning device comprising:

a database storing multiple respective database records for respective physically unclonable functions, each respective database record storing a respective fuzzy identifier, said respective fuzzy identifiers being noisy responses of the respective physically unclonable functions;

a network interface configured to receive a fuzzy input identifier, the fuzzy input identifier being a noisy response of a physically unclonable function, wherein the physically unclonable function is an SRAM PUF; and

a processor system configured to search for the physically unclonable function according to the received fuzzy input identifier among the multiple database records in the database, and assign a fixed identifier to the physically unclonable function based on said searching, wherein the processor system is configured to:

determine if the physically unclonable function exists in the database by determining if a matching fuzzy identifier exists among the multiple database records of the database that matches the fuzzy input identifier according to a matching criterion, and thereupon sending a matching signal,

determine if the physically unclonable function does not exist in the database by determining if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion, and thereupon sending an absent signal,

receive the absent signal, and upon said receiving, add a database record to the database for the physically unclonable function, said added database record storing the fuzzy input identifier, and further to send the matching signal, and

receive the matching signal, and upon said receiving to determine a fixed identifier from the database record storing the matching fuzzy identifier, wherein the fixed identifier is assigned to the fuzzy identifier, wherein

the network interface is configured to transmit the fixed identifier, wherein the fixed identifier uniquely identifies the physically unclonable function and is not subject to noise.

2. An assigning device as in claim 1 , wherein

the absent criterion is satisfied if no matching fuzzy identifier exists among the multiple database records of the database that matches the fuzzy input identifier according to the matching criterion, so that the processor system either sends the matching signal or the absent signal for any fuzzy input identifier.

3. An assigning device as in claim 1 , wherein

the processor system is further configured to:

if no matching fuzzy identifier exists among the multiple database records of the database that matches the fuzzy input identifier according to the matching criterion, determine if a nearly-matching fuzzy identifier exists among the multiple database records of the database that is nearly-matching to the fuzzy input identifier according to a nearly-matching criterion, and if said nearly-matching fuzzy identifier exists, sending a resample-error message through the network interface; and

upon receiving the fuzzy input identifier, send at most one of the matching signal, nearly-matching signal or absent signal.

4. An assigning device as in claim 3 , wherein

the matching criterion is satisfied if a distance between the matching fuzzy identifier and the fuzzy input identifier according to a distance function, is less-or-equal than a matching threshold, the distance function satisfying a triangle inequality,

the nearly-matching criterion is satisfied if a distance between the nearly-matching fuzzy identifier and the fuzzy input identifier according to the distance function, is less-or-equal than a nearly-matching threshold, wherein

the nearly-matching threshold is at least two times the matching threshold.

5. An assigning device as in claim 1 , wherein the processor system is further configured to

obtain a hash value by applying a hash function to at least the matching fuzzy identifier, the fixed identifier comprising at least part of the hash value.

6. An assigning device as in claim 1 , wherein the fixed identifier comprises at least part of the matching fuzzy identifier.

7. An assigning device as in claim 1 , wherein

each database record further stores a unique identification number,

the processor system is configured to store a unique identification number in said added database record, said unique identification number being unique in the database, and

the fixed identifier comprising the unique identification number from the database record storing the matching fuzzy identifier.

8. An assigning device as in claim 1 , wherein

the processor system is configured to:

upon determining that the matching fuzzy identifier exists in the database, store the fuzzy input identifier in the database record storing the matching fuzzy identifier, and

use said stored fuzzy input identifier for future determinations of matching and existence.

9. An assigning device as in claim 1 , wherein

the database is configured to store both an original fuzzy identifier stored in the database record by the processor system in response to the absent signal, and the stored fuzzy input identifier, and

the processor system is further configured to:

determine a distance between the original fuzzy identifier and the stored fuzzy input identifier, if said distance is above a drifting threshold sending a drifting-error message.

10. An assigning device as in claim 1 , wherein

the matching criterion is satisfied if a distance between the matching fuzzy identifier and the fuzzy input identifier according to a distance function, is less-or-equal than a matching threshold, and

the processor system is configured to:

determine a closest fuzzy identifier among the multiple database records the database which minimizes the distance to the fuzzy input identifier, and

if the distance between the closest fuzzy identifier and the fuzzy input identifier is less than the matching threshold sending the matching signal.

11. An assigning device as in claim 1 , wherein

the fuzzy identifiers in the database each comprise a first part, the first part being smaller than the full corresponding fuzzy identifier, and

the processor system is configured to:

pre-select fuzzy identifiers in the database for which a first part of the fuzzy input identifier matches a first part of the fuzzy input identifier according to a pre-matching criterion, and

determine if a matching fuzzy identifier exists in said pre-selected fuzzy identifiers according to the matching criterion.

12. An assigning device as in claim 11 , further comprising

a pre-matching database storing multiple database records, each database record storing a pre-matching fuzzy identifier, said pre-matching fuzzy identifier comprising a first part of at least two different fuzzy identifiers stored in the database, and

the processor system is configured to:

generate a pre-matching fuzzy input identifier comprising at least twice the first part of the fuzzy input identifier,

determine pre-matching fuzzy identifiers in the pre-matching database for which the pre-matching fuzzy input identifier matches the pre-matching fuzzy input identifier according to a further pre-matching criterion, and

determine if a matching fuzzy identifier exists in the fuzzy identifiers in the database which correspond to the determined pre-matching fuzzy identifiers.

13. An object identifying system comprising

an assigning device as in claim 1 ,

a reader configured to read fuzzy identifiers from physical unclonable functions, a fuzzy identifier identifying a physical unclonable function and being subject to noise, the physical unclonable functions being associated with objects,

the reader comprising

a network interface configured to

send a read fuzzy identifier as a fuzzy input identifier to the network interface of the assigning device and receive the fixed identifier therefrom.

14. An object identifying system as in claim 13 , wherein

the assigning device is configured to:

if no matching fuzzy identifier exists among the multiple database records of the database that matches the fuzzy input identifier according to the matching criterion, determine if a nearly-matching fuzzy identifier exists among the multiple database records of the database that is nearly-matching to the fuzzy input identifier according to a nearly-matching criterion, and if said nearly-matching fuzzy identifier exists, sending a resample-error message through the network interface;

the processor system is configured to, upon receiving the fuzzy input identifier, send at most one of the matching signal, nearly-matching signal or absent signal; and

the reader is configured to read the fuzzy identifier from the physical unclonable function again upon receiving the resample-error message.

15. A testing system comprising the system as in claim 13 comprising a testing device, and a retrieving device, wherein

the testing device is configured to test the objects, the reader being comprised in the testing device, the reader of the testing device being configured to read the fuzzy identifiers during testing of the objects, the testing device storing testing information of the objects together with the fixed identifier,

the retrieving device comprises

a further reader configured to read a further fuzzy identifiers from the physical unclonable functions, and

a network interface configured to send a read further fuzzy identifier as a fuzzy input identifier to the network interface of the assigning device and receive the fixed identifier therefrom.

16. A testing system as in claim 15 , wherein the testing device is a wafer prober.

17. An assigning method for assigning fixed identifiers to physically unclonable functions, the assigning method comprising

receiving a fuzzy input identifier, the fuzzy input identifier being a noisy response of a physically unclonable function, wherein the physically unclonable function is a SRAM PUF,

determining if the physically unclonable function exists om a database by determining if a matching fuzzy identifier exists among multiple database records of the database that matches the fuzzy input identifier according to a matching criterion, the database storing multiple respective database records for respective physically unclonable functions, each respective database record storing a respective fuzzy identifier, said respective fuzzy identifiers being noisy responses of the respective physically unclonable functions,

determine if the physically unclonable function does not exist in the database by determining if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion,

adding a database record to the database for the physically unclonable function if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion, said added database record storing the fuzzy input identifier, and

determining a fixed identifier for the physically unclonable function from the database record storing the matching fuzzy identifier, wherein the fixed identifier uniquely identifies the physically unclonable function and is not subject to noise, wherein the fixed identifier is assigned to the physically unclonable function, if the matching fuzzy identifier exists and also if the database record storing the fuzzy input identifier is added to the database.

18. A non-transitory computer readable medium comprising a computer program, the computer program comprising computer program instructions, wherein the computer program upon execution by a processor system causes the processor system to operate by:

receiving a fuzzy input identifier, the fuzzy input identifier being a noisy response of a physically unclonable function, wherein the physically unclonable function is a SRAM PUF;

determining if the physically unclonable function exists in a database by determining if a matching fuzzy identifier exists among multiple database records of the database that matches the fuzzy input identifier according to a matching criterion, the database storing multiple respective database records for respective physically unclonable functions, each respective database record storing a respective fuzzy identifier, said respective fuzzy identifiers being noisy responses of physically unclonable functions;

determine if the physically unclonable function does not exist in the database by determining if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion;

adding a database record to the database for the physically unclonable function if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion, said added database record storing the fuzzy input identifier; and

determining a fixed identifier for the physically unclonable function from the database record storing the matching fuzzy identifier, wherein the fixed identifier uniquely identifies the physically unclonable function and is not subject to noise; wherein the fixed identifier is assigned to the physically unclonable function, if the matching fuzzy identifier exists and also if the database record storing the fuzzy input identifier is added to the database.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2024
From: INTRINSIC ID B.V.
To: SYNOPSYS, INC.
Reel/Frame 067679/0821 →
CHANGE OF REGISTERED ADDRESS Recorded Oct 12, 2022
From: INTRINSIC ID B.V.
To: INTRINSIC ID B.V.
Reel/Frame 061997/0838 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2018
From: SCHRIJEN, GEERT-JAN; MEULEMAN, DERK JAN
To: INTRINSIC ID B.V.
Reel/Frame 046521/0910 →
Priority Claims (1)
EP 15195585 · Nov 20, 2015 · regional
Continuity (1)
Related Publication 20180329962A1 · Nov 15, 2018