Physically unclonable function generating systems and related methods
AssigneeArizona Board of Regents acting for and on behalf of Northern Arizona University
InventorBertrand Cambou
Life of this patent
Estimating the term…
Abstract
A physically unclonable function generating system and related methods. Implementations may include comparing at least one physical parameter of a memory cell with a threshold value of the physical parameter and identifying a relationship of the at least one physical parameter of the memory cell to the threshold value. Implementations may also include associating one of a 0, 1, or X state to the memory cell based on the relationship of the at least one physical parameter to the threshold value and programming at least one state storage memory cell to store a programmed value corresponding with the associated 0, 1, or X state. Implementations may include including the programmed value of the at least one state storage memory cell in a PUF data stream.
Claims17
A method of identifying a memory cell state for use in a physically unclonable function (PUF), the method comprising:
- comparing at least one physical parameter of a memory cell with a threshold value of the physical parameter;
- identifying a relationship of the at least one physical parameter of the memory cell to the threshold value;
- associating one of a 0, 1, and X state to the memory cell based on the relationship of the at least one physical parameter to the threshold value;
- programming at least one state storage memory cell to store a programmed value corresponding with the associated 0, 1, or X state;
- including the programmed value of the at least one state storage memory cell in a PUF data stream;
- wherein programming at least one state storage memory cell comprises programming a first state storage memory cell and a second state storage memory cell and;
- if the associated state of the memory cell is a 0, programming a 0 in the first state storage memory cell and programming a 1 in the second state storage memory cell;
- if the associated state of the memory cell is a 1, programming a 1 in the first state storage memory cell and programming a 0 in the second state storage memory cell;
- if the associated state of the memory cell is an X, programming one of a 0 in the first state storage memory cell and a 0 in the second state storage memory cell and programming a 1 in the first state storage memory cell and a 1 in the second state storage memory cell.
A method of identifying a memory cell state for use in a physically unclonable function (PUF), the method comprising:
- comparing at least one physical parameter of a memory cell with a first threshold value of the physical parameter and with a second threshold value of the physical parameter;
- identifying a relationship of the at least one physical parameter of the memory cell to the first threshold value and to the second threshold value;
- associating one of a 0, 1, and X state to the memory cell based on the relationship of the at least one physical parameter of the memory cell to one of the first threshold value, the second threshold value and both the first threshold value and the second threshold value;
- programming at least one state storage memory cell to store a programmed value corresponding with the associated 0, 1, or X state;
- and
- including the programmed value of the at least one state storage memory cell in a PUF data stream;
- wherein programming at least one state storage memory cell comprises programming a first state storage memory cell and a second state storage memory cell and;
- if the associated state of the memory cell is a 0, programming a 0 in the first state storage memory cell and programming a 1 in the second state storage memory cell;
- if the associated state of the memory cell is a 1, programming a 1 in the first state storage memory cell and programming a 0 in the second state storage memory cell;
- if the associated state of the memory cell is an X, programming one of a 0 in the first state storage memory cell and a 0 in the second stage storage memory cell and programming a 1 in the first state storage memory cell and a 1 in the second state storage memory cell;
- and
- if the associated state of the memory cell is a BX, programming one of a 0 in the first state storage memory cell and a 0 in the second state storage memory cell and programming a 1 in the first state storage memory cell and a 1 in the second state storage memory cell.
A method of identifying a memory cell state for use in a physically unclonable function (PUF) reference pattern and PUF comparison pattern, the method comprising:
- comparing at least one physical parameter of a memory cell with a threshold value of the physical parameter;
- identifying a relationship of the at least one physical parameter of the memory cell to the threshold value;
- associating one of a 0, 1, and X state to the memory cell based on the relationship of the at least one physical parameter to the threshold value;
- programming at least one state storage memory cell to store a programmed value corresponding with the associated 0, 1, or X state;
- including the programmed value of the at least one state storage memory cell in a reference PUF data stream;
- in response to receiving an authentication request, only if the memory cell has a 0 or 1 state assigned, comparing the at least one physical parameter of the memory cell with the threshold value of the physical parameter;
- re-identifying a relationship of the at least one physical parameter of the memory cell to the threshold value;
- re-associating one of a 0 and 1 state to the memory cell based on the relationship of the at least one physical parameter to the threshold value;
- programming at least one state storage memory cell to store a programmed value corresponding with the re-associated 0 or 1 state;
- including the programmed value of the at least one state storage memory cell in a comparison PUF data stream;
- and
- authenticating a device using the reference PUF data stream and the comparison PUF data stream, the method comprising:
- retrieving the PUF reference pattern stored in one of a plurality of memory cells used to generate the PUF reference pattern, a secure storage memory coupled to the plurality of memory cells, and any combination thereof;
- receiving a PUF comparison pattern from a device seeking authentication;
- comparing the state values of the reference PUF pattern with the state values comprised in the comparison PUF pattern;
- if the state values of the PUF comparison pattern match the state values of the reference PUF pattern above a predetermined threshold value, then approving authentication of the device.
Dependencies are inferred from the claim text.