IP Library Granted Patent US 12,353,426
Granted Patent B2
US 12,353,426 · App. 17/867,890 · Granted Jul 8, 2025

Assigning device

Inventors: Geert Jan Schrijen (Roermond, NL); Derk Jan Meuleman (Kessenich, BE)
Assignee: Synopsys, Inc.
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 12,353,426
App. No.
17/867,890
Granted
Jul 8, 2025
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 (84)

1. An assigning device, comprising:

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

a network interface that receives a fuzzy input identifier, the fuzzy input identifier being a noisy response of a first physically unclonable function; and

a processor system that searches for the received fuzzy input identifier among the multiple database records in the database, and assign a fixed identifier to the first physically unclonable function based on the searching, wherein searches for different fuzzy identifiers that are noisy responses of the first physically unclonable function result in assigning the same fixed identifier to the first physically unclonable function;

wherein the network interface further transmits the assigned fixed identifier, wherein the assigned fixed identifier uniquely identifies the first physically unclonable function.

2. The assigning device as in claim 1 , wherein the processor system further:

determines 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

if a matching fuzzy identifier exists, determines the fixed identifier from the database record storing the matching fuzzy identifier, and assigns the determined fixed identifier to the first physically unclonable function.

3. The assigning device as in claim 2 , wherein the processor system further:

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, determines 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 the nearly-matching fuzzy identifier exists, sends a resample-error message through the network interface.

4. The 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; and

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.

5. The assigning device as in claim 2 , wherein the processor system further:

obtains 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. The assigning device as in claim 2 , wherein the fixed identifier comprises at least part of the matching fuzzy identifier.

7. The assigning device as in claim 2 , wherein the processor system further:

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

use the stored fuzzy input identifier for future determinations of matching or existence.

8. The assigning device as in claim 7 , wherein:

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

the processor system further:

determines a distance between the original fuzzy identifier and the stored fuzzy input identifier; and

if the said distance is above a drifting threshold, sends a drifting-error message.

9. The assigning device as in claim 2 , 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 further:

determines a closest fuzzy identifier among the multiple database records of 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, determines the matching.

10. The assigning device as in claim 2 , 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 further:

pre-selects 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 the pre-selected fuzzy identifiers according to the matching criterion.

11. The assigning device as in claim 1 , wherein the processor system further:

determines if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion; and

if the matching fuzzy identifier does not exist:

adds a database record to the database for the first physically unclonable function, wherein the added database record stores the fuzzy input identifier; and

determines the fixed identifier from the added database record, and assigns the determined fixed identifier to the first physically unclonable function.

12. The assigning device as in claim 11 , wherein:

each database record further stores a unique identification number;

the processor system further stores a unique identification number in the added database record, the unique identification number being unique in the database; and

the fixed identifier comprises the unique identification number from the database record.

13. The assigning device as in claim 1 , further comprising:

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

the processor system further:

generates a pre-matching fuzzy input identifier comprising at least twice the first part of the fuzzy input identifier;

determines 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

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

14. An object identifying system comprising:

the 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.

15. The object identifying system as in claim 14 , 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 a 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 the nearly-matching fuzzy identifier exists, send a resample-error message through the network interface; and

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

16. A testing system comprising the system as in claim 14 and further 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; and

the retrieving device comprises:

a further reader configured to read 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.

17. The testing system as in claim 16 , wherein the testing device is a wafer prober.

18. An assigning system for assigning fixed identifiers to a plurality of objects, the assigning system comprising the assigning device according to claim 1 , an object of the plurality of objects comprising a physically unclonable function configured to generate a noisy response for use as a fuzzy identifier, the assigning device being configured for assigning fixed identifiers to the plurality of objects and their physically unclonable functions.

19. A method comprising:

receiving, via a network interface, a fuzzy input identifier, the fuzzy input identifier being a noisy response of a first physically unclonable function;

searching for the received fuzzy input identifier among multiple database records in a database, the multiple database records storing respective fuzzy identifiers, the respective fuzzy identifiers being noisy responses of respective physically unclonable functions;

assigning, by a processor system, a fixed identifier to the first physically unclonable function based on the searching, wherein searches for different fuzzy identifiers that are noisy responses of the first physically unclonable function result in assigning the same fixed identifier to the first physically unclonable function; and

returning, via the network interface, the assigned fixed identifier as a unique identifier for the first physically unclonable function.

20. The method as in claim 19 , wherein assigning the fixed identifier to the first physically unclonable function comprises:

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

if a matching fuzzy identifier exists, determining the fixed identifier from the database record storing the matching fuzzy identifier, and assigning the determined fixed identifier to the first physically unclonable function.

21. The method as in claim 19 , wherein assigning the fixed identifier to the first physically unclonable function comprises:

determining if a matching fuzzy identifier does not exist among the multiple database records of the database according to an absent criterion; and

if a matching fuzzy identifier does not exist:

adding a database record to the database for the first physically unclonable function, the added database record storing the fuzzy input identifier; and

determining the fixed identifier from the added database record, and assigning the determined fixed identifier to the first physically unclonable function.

22. 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:

receive, via a network interface, a fuzzy input identifier, the fuzzy input identifier being a noisy response of a first physically unclonable function;

search for the received fuzzy input identifier among multiple database records in a database, the multiple database records storing respective fuzzy identifiers, the respective fuzzy identifiers being noisy responses of respective physically unclonable functions;

assigning a fixed identifier to the first physically unclonable function based on the searching, wherein searches for different fuzzy identifiers that are noisy responses of the first physically unclonable function result in assigning the same fixed identifier to the first physically unclonable function; and

returning, via the network interface, the assigned fixed identifier as a unique identifier for the first physically unclonable function.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2024
From: SCHRIJEN, GEERT-JAN; MEULEMAN, DERK JAN
To: INTRINSIC ID B.V.
Reel/Frame 067753/0248 →
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 →
Priority Claims (1)
EP 15195585 · Nov 20, 2015 · regional
Continuity (2)
Continuation 15777305
Related Publication 20220365927A1 · Nov 17, 2022
References Cited (26)
US 8386990B1 · Trimberger · 2013 [cited by examiner]
US 8516269B1 · Hamlet · 2013 [cited by examiner]
US 8667265B1 · Hamlet · 2014 [cited by applicant]
US 20030204743A1 · Devadas et al. · 2003 [cited by applicant]
US 20090083833A1 · Ziola · 2009 [cited by applicant]
US 20100250936A1 · Kusakawa et al. · 2010 [cited by applicant]
US 20110055649A1 · Koushanfar et al. · 2011 [cited by applicant]
US 20120290845A1 · Bares · 2012 [cited by examiner]
US 20140108786A1 · Kreft · 2014 [cited by examiner]
US 20150101037A1 · Yang · 2015 [cited by examiner]
US 20150215115A1 · Pikus · 2015 [cited by applicant]
US 20160105437A1 · Yokoyama et al. · 2016 [cited by applicant]
US 20160227348A1 · Guo · 2016 [cited by examiner]
CN 101542496A · 2009 [cited by applicant]
EP 2191410 · 2010 [cited by applicant]
EP 2293492 · 2011 [cited by applicant]
EP 3018607 · 2016 [cited by applicant]
WO 2007116325 · 2007 [cited by applicant]
WO 2009024913 · 2009 [cited by applicant]
WO WO2009079050A2 · 2009 [cited by applicant]
WO 2009156904 · 2009 [cited by applicant]
WO 2011018414 · 2011 [cited by applicant]
WO 2012045657 · 2012 [cited by applicant]
WO 2012069545 · 2012 [cited by applicant]
WO 2015002271 · 2015 [cited by applicant]
International Search Report and Written Opinion of the ISA for PCT/EP2016/076716, mailed Feb. 7, 2017, 14 pages. [cited by applicant]