IP Library › Granted Patent US 12,395,359
Granted Patent B2
US 12,395,359 · App. 18/026,925 · Granted Aug 19, 2025

Method of implementing a physical unclonable function

Inventors: Benjamin Duval (Saint Maximin, FR); Alexandre Berzati (Fuveau, FR); Olivier Fourquin (Fuveau, FR)
Assignee: THALES DIS FRANCE SAS
H04L9/3278
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,395,359
App. No.
18/026,925
Granted
Aug 19, 2025
Kind
B2
Abstract

Provided is an electronic device and a method thereof for repairing response bits of a physical unclonable function of an electronic device, said physical unclonable function outputting said response bits and additional output bits. The method includes generating a PUF response from said response bits (S 1 ), detecting an error in the PUF response (S 2 ), determining erroneous response bits of the PUF response (S 3 ), determining a match (S 4 ) between each determined erroneous response bit and a selected additional output bit such that replacing the erroneous response bits by the matching additional output bits corrects the error in the PUF response, storing said determined match in a repair list (S 5 ), and replacing (S 6 ) in the PUF response said erroneous response bits with the matching additional output bits in the repair list. Other embodiments disclosed.

Claims (43)

1. A method for repairing response bits of a physical unclonable function of an electronic device, said physical unclonable function outputting said response bits and additional output bits,

said method comprising the following steps:

generating a PUF response from said response bits (S 1 ),

detecting an error in the PUF response (S 2 ),

determining erroneous response bits of the PUF response (S 3 ) comprising replacing one by one, in a random order, each bit of the PUF response by an arbitrary value and determining if the error in the PUF response is s corrected,

determining a match (S 4 ) between each determined erroneous response bit and a selected additional output bit such that replacing the erroneous response bits by the matching additional output bits corrects the error in the PUF response,

storing said determined match in a repair list (S 5 ),

replacing (S 6 ) in the PUF response said erroneous response bits with the matching additional output bits in the repair list.

2. The method according to claim 1 , wherein said electronic device is configured for access to a memory storing said repair list comprising at least one match between a response bit and an additional output bit, the step of generation of a PUF response (S 1 ) comprises replacing in the PUF response said matched response bits with the matching additional output bits in the repair list.

3. The method of claim 1 , wherein said additional output bit are bits among most reliable output bits of said physical unclonable function.

4. The method of claim 1 , wherein said device is configured for access to a memory storing a reference hash value of said response bits, detecting an error in the PUF response (S 2 ) comprises:

generating a hash value by applying a hash function on said bits of the PUF response,

comparing said hash value with said stored reference hash value.

5. The method of claim 3 , wherein detecting an error in the PUF response (S 2 ) comprises using an error correcting code.

6. A method for repairing response bits of a physical unclonable function of an electronic device, said physical unclonable function outputting said response bits and additional output bits,

said method comprising the following steps:

generating a PUF response from said response bits (S 1 ),

detecting an error in the PUF response (S 2 ),

determining erroneous response bits of the PUF response (S 3 ) comprising replacing one by one, in a redetermined order, each bit of the PUF response by an arbitrary value and determining if the error in the PUF response is corrected,

determining a match (S 4 ) between each determined erroneous bit and a selected additional output bit such that replacing the erroneous response bits by the matching additional output bits corrects the error in the PUF response,

storing said determined match in a repair list (S 5 ),

replacing ( 86 ) in the PUF response said erroneous response bits with the matching additional output bits in the repair list.

7. The method according to claim 6 , wherein said device being configured for having access to a memory storing a Preventive toggling list of the least reliable response bits of said physical unclonable function, determining erroneous response bits of the PUF response to be repaired (S 3 ) comprises replacing first bits of the Preventive toggling list before replacing other bits of the PUF response.

8. The method according to claim 6 , wherein said electronic device is configured for access to a memory storing said repair list comprising at least one match between a response bit and an additional output bit, the step of generation of a PUF response (S 1 ) comprises replacing in the PUF response said matched response bits with the matching additional output bits in the repair list.

9. The method of claim 6 , wherein said additional output bit are bits among most reliable output bits of said physical unclonable function.

10. The method of claim 6 , wherein said device is configured for access to a memory storing a reference hash value of said response bits, detecting an error in the PUF response (S 2 ) comprises:

generating a hash value by applying a hash function on said bits of the PUF response, comparing said hash value with said stored reference hash value.

11. The method of claim 9 , wherein detecting an error in the PUF response (S 2 ) comprises using an error correcting code.

12. An electronic device comprising active electronic primitives, PUF circuits generating a PUF response by running a physical unclonable function outputting response bits and additional output bits, a processor and at least one memory configured to perform the steps of:

generating a PUF response from said response bits (S 1 ),

detecting an error in the PUF response (S 2 ),

determining erroneous response bits of the PUF response (S 3 ) comprising replacing one by one, in a random order, each bit of the PUF response by an arbitrary value and determining if the error in the PUF response is corrected,

determining a match (S 4 ) between each determined erroneous response bit and a selected additional output bit such that replacing the erroneous response bits by the matching additional output bits corrects the error in the PUF response,

storing said determined match in a repair list (S 5 ),

replacing (S 6 ) in the PUF response said erroneous response bits with the matching additional output bits in the repair list.

13. The electronic device of claim 12 wherein detecting an error in the PUF response (S 2 ) comprises using an error correcting code.

14. An electronic device comprising active electronic primitives, PUF circuits generating a PUF response by running a physical unclonable function outputting response bits and additional output bits, a processor and at least one memory configured to perform the steps of:

generating a PUF response from said response bits (S 1 ),

detecting an error in the PUF response (S 2 ),

determining erroneous response bits of the PUF response (S 3 ) comprising replacing one by one, in a predetermined order, each bit of the PUF response by an arbitrary value and determining if the error in the PUF response is corrected,

determining a match (S 4 ) between each determined erroneous response bit and a selected additional output bit such that replacing the erroneous response bits by the matching additional output bits corrects the error in the PUF response,

storing said determined match in a repair list (S 5 ),

replacing (S 6 ) in the PUF response said erroneous response bits with the matching additional output bits in the repair list.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2025
From: BERZATI, ALEXANDRE; FOURQUIN, OLIVIER; DUVAL, BENJAMIN
To: THALES DIS FRANCE SAS
Reel/Frame 071845/0858 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2023
From: THALES DIS DESIGN SERVICES SAS
To: THALES DIS FRANCE SA
Reel/Frame 065853/0852 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2023
From: DUVAL, BENJAMIN; BERZATI, ALEXANDRE; FOURQUIN, OLIVIER
To: THALES DIS DESIGN SERVICES SAS
Reel/Frame 064414/0237 →
Priority Claims (1)
EP 20315413 · Sep 18, 2020 · regional
Continuity (1)
Related Publication 20230327891A1 · Oct 12, 2023
References Cited (17)
US 8918647B1 · Wallrabenstein · 2014 [cited by examiner]
US 9703989B1 · Pedersen · 2017 [cited by applicant]
US 20080279373A1 · Erhart · 2008 [cited by examiner]
US 20100031065A1 · Futa et al. · 2010 [cited by applicant]
US 20110002461A1 · Erhart · 2011 [cited by examiner]
US 20110066670A1 · Yu · 2011 [cited by examiner]
US 20130010957A1 · Yu · 2013 [cited by examiner]
US 20130254636A1 · Kirkpatrick et al. · 2013 [cited by applicant]
US 20150092939A1 · Gotze · 2015 [cited by examiner]
US 20150312047A1 · Suzuki · 2015 [cited by examiner]
US 20160087805A1 · Li et al. · 2016 [cited by applicant]
US 20160156476A1 · Lee · 2016 [cited by examiner]
US 20170149572A1 · Wallrabenstein · 2017 [cited by examiner]
US 20170310489A1 · Van Der Sluis · 2017 [cited by examiner]
US 20190065734A1 · Yao · 2019 [cited by examiner]
US 20200044872A1 · Willsch · 2020 [cited by examiner]
International Search Report (PCT/ISA/220) and Written Opinion (PCT/ISA/237) mailed on Oct. 20, 2021, by the European Patent Office as the International Searching Authority for current International Application No. PCT/E… [cited by applicant]