IP Library Granted Patent US 9,350,330
Granted Patent B2
US 9,350,330 · App. 13/988,919 · Granted May 24, 2016

Physical unclonable function

Inventors: Petrus Wijnandus Simons (Schaijk, NL); Erik Van Der Sluis (Eindhoven, NL)
Assignee: INTRINSIC ID B.V.
H03K3/037G06F7/588H04L9/0866
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,350,330
App. No.
13/988,919
Granted
May 24, 2016
Kind
B2
Abstract

A physical unclonable function is provided 100 , comprising a plurality of bus-keepers 110 , each bus-keeper of the plurality of bus-keepers 110 being configured to settle into one of at least two different stable states upon power-up, the particular stable state into which a particular bus-keeper of the plurality of bus-keepers settles being dependent at least in part upon the at least partially random physical characteristics of the particular bus-keeper, and a reading circuit 120 for reading the plurality of stable states into which the plurality of bus-keepers settled after a power-up, the plurality of bus-keepers being read-only.

Claims (31)

1. A physical unclonable function comprising

a plurality of cross-coupled loops of two invertors, each cross-coupled loop of the plurality of cross-coupled loops being configured to settle into one of at least two different stable states upon power-up, the particular stable state into which a particular cross-coupled loop of the plurality of cross-coupled loops settles being dependent at least in part upon at least partially random physical characteristics of the particular cross-coupled loop,

a reading circuit for reading the plurality of stable states into which the plurality of cross-coupled loops settled after a power-up, the physical unclonable function being configured for the plurality of cross-coupled loops to be read-only, and

a switchable power domain, the plurality of cross-coupled loops being comprised in the power domain and at least a part of the physical unclonable function being outside the power domain, the power domain being configured for selectively connecting and disconnecting the plurality of cross-coupled loops from a power supply while the at least a part of the physical unclonable function is connected to the power supply.

2. A physical unclonable function as in claim 1 , wherein the plurality of cross-coupled loops of two invertors are a plurality of bus-keepers.

3. A physical unclonable function as in claim 1 , wherein at least part of the reading circuit is outside the power domain.

4. A physical unclonable function as claim 1 , wherein the power domain is only powered during read out of the cross-coupled loops.

5. A physical unclonable function as in claim 1 , wherein the plurality of cross-coupled loops, the power domain, and the at least a part of the physical unclonable function are implemented on a single integrated circuit.

6. A physical unclonable function as in claim 1 , comprising an isolation circuit for isolating the plurality of cross-coupled loops from the at least a part of the physical unclonable function while the plurality of cross-coupled loops is disconnected from the power supply.

7. A physical uncloable function as in claim 6 , wherein the isolation circuit comprises a plurality of and-gates.

8. A physical unclonable function as in claim 1 , wherein at least one cross-coupled loop comprises exactly one data connection, and wherein the exactly one data connection is only configured for reading the stable-state into which the at least one cross-coupled loop settled upon power-up.

9. A physical unclonable function as in claim 1 wherein the reading circuit comprises a plurality of multiplexers for selecting cross-coupled loops from the plurality of cross-coupled loops.

10. A physical unclonable function as in claim 9 , wherein each cross-coupled loop of the plurality of cross-coupled loops is connected to a multiplexer of the plurality of multiplexers.

11. A physical unclonable function as in claim 9 , wherein at least two cross-coupled loops of the plurality of cross-coupled loops are connected to the same multiplexer of the plurality of multiplexers.

12. A physical unclonable function as in claim 9 , wherein the plurality of multiplexers is arranged as a multiplexer-tree, the reading circuit being arranged for reading the plurality of stable states through the multiplexer-tree.

13. A physical unclonable function as in claim 9 , wherein each different cross-coupled loop of the plurality of cross-coupled loops is connected to a different multiplexer of the plurality of multiplexers.

14. A physical unclonable function as in claim 1 , comprising PUF control logic for deriving an identifier from the plurality of stable states.

15. A physical unclonable function as in claim 14 , wherein the PUF control logic is configured for applying an error correcting algorithm to the plurality of stable states and to helper data for deriving the identifier.

16. A physical unclonable function as in claim 14 , wherein the PUF control logic is configured for deriving a random number from the plurality of stable states.

17. A physical unclonable function as in claim 14 , wherein the PUF control logic is configured for a read-cycle comprising:

powering down the plurality of cross-coupled loops,

powering up the plurality of cross-coupled loops, and

reading the plurality of cross-coupled loops.

18. A method for obtaining PUF data comprising

powering-up a plurality of cross-coupled loops comprised in a switchable power domain configured for selectively connecting and disconnecting the plurality of cross-coupled loops from a power supply,

allowing each one of the plurality of cross-coupled loops to settle into one of at least two different stable states, the particular stable state into which a particular cross-coupled loop of the plurality of cross-coupled loops settles being dependent at least in part upon at least partially random physical characteristics of the particular cross-coupled loop,

reading the plurality of stable states into which the plurality of cross-coupled loops settled after a power-up through a reading circuit, the plurality of cross-coupled loops being read-only.

19. A non-transitory tangible computer readable storage medium comprising computer program code adapted to perform, when the computer program is run on a computer;

powering-up a plurality of cross-coupled loops comprised in a switchable power domain configured for selectively connecting and disconnecting the plurality of cross-coupled loops from a power supply,

allowing each one of the plurality of cross-coupled loops to settle into one of at least two different stable states, the particular stable state into which a particular cross-coupled loop of the plurality of cross-coupled loops settles being dependent at least in part upon at least partially random physical characteristics of the particular cross-coupled loop,

reading the plurality of stable states into which the plurality of cross-coupled loops settled after a power-up through a reading circuit, the plurality of cross-coupled loops being read-only.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2024
From: INTRINSIC ID B.V.
To: SYNOPSYS, INC.
Reel/Frame 067679/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2013
From: SIMONS, PETRUS WIJNANDUS; VAN DER SLUIS, ERIK
To: INTRINSIC ID B.V.
Reel/Frame 030486/0322 →
Priority Claims (1)
EP 10192352 · Nov 24, 2010 · regional
Continuity (1)
Related Publication 20130234771A1 · Sep 12, 2013