# US 11,310,062 B2 · Securing physically unclonable functions with additional random ternary states

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,310,062 B2
- Document ID: US11310062B2
- Status: Granted
- Kind: B2
- Application number: 16/492,910
- Filed: 2018-03-30
- Published: 2020-03-05
- Granted: 2022-04-19
- Earliest claimed: 2017-03-31
- Assignees: Arizona Board of Regents On Behalf of Northern Arizona University
- Applicants: Arizona Board of Regents on Behalf of Northern Arizona University
- Inventors: Bertrand Francis Cambou; Raul Chipana; Bilal Habib
- Web page: https://patentgrep.com/patent/US11310062B2

## CPC

- H04L 9/3278: {using physically unclonable functions [PUF]}
- G06F 7/588: {Random number generators, i.e. based on natural stochastic processes}
- G06F 21/73: by creating or determining hardware identification, e.g. serial numbers
- H04L 9/0866: {involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics}
- H04L 2209/12: Details relating to cryptographic hardware or logic circuitry
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present disclosure relates to implementations of computing systems. Specifically, the disclosure describes implementations of physically unclonable functions (PUFs) that use ternary states for implementing security systems.

## Claims

### Claim 1

A method of authenticating a physically unclonable function (PUF), comprising:
generating a PUF challenge by a method comprising:
generating a first data stream encoding ternary states fora plurality of addressable cells of the PUF, the ternary states corresponding to 0, 1 or X states;
selecting a subset of the addressable cells reflected in the first data stream having 0 or 1 states, and for the selected cells, changing the encoded state to an X state, resulting in a second data stream encoding ternary states corresponding to 0, 1 and X states;
storing the second data stream,
receiving a data stream generated by measuring PUF responses;
comparing the second data stream to the received data stream, and;
authenticating a PUF on the basis of the comparison.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first data stream is generated by reading a content of a memory array of the PUF.

### Claim 3 (depends on 1)

The method of claim 1, wherein the PUF includes at least one of a ring oscillator, gate delay, sensor, and memory-based array.

### Claim 4 (depends on 1)

The method of claim 1, including reading the first data stream from a memory array.

### Claim 5 (depends on 4)

The method of claim 4, wherein the memory array includes at least one of an SRAM, DRAM, Flash, EEPROM, PROM, one-time programmable array, Resistive RAM, CBRAM, MRAM, PCRAM, or carbon nanotube-based memory.

### Claim 6 (depends on 1)

The method of claim 1, wherein the PUF is contained in an array of addressable PUF generators.

### Claim 7 (depends on 1)

The method of claim 1, wherein the PUF generates binary data streams, ternary data streams, quaternary data streams, multi-state data streams, or a combination thereof.

### Claim 8 (depends on 1)

The method of claim 1, wherein authenticating the PUF on the basis of the comparison comprises:
identifying the locations of PUF cells corresponding to cells in the second data stream having 0 or 1 states;
measuring a response of the identified PUF cells to determine their state, and
comparing the states of the identified PUF cells with the states of corresponding cells in the second data stream.

### Claim 9 (depends on 1)

The method of claim 1, wherein selecting a plurality of the addressable cells reflected in the first data stream having 0 or 1 states, and for the selected cells, changing the coded state to an X state, resulting in a second data stream is based on random numbers, pseudo-random numbers, true random numbers, or a combination thereof.

### Claim 10 (depends on 8)

The method of claim 8, wherein the random numbers are changed after each authentication in order to generate new challenges for subsequent authentications.

### Claim 11 (depends on 1)

The method of claim 1, wherein the first data stream comprises bits with the ternary states, the bits converted from a data stream of bits with binary states based on an association of a 0 state with (01), a 1 state with a (10), and an X state with either a (00) or (11).

### Claim 12 (depends on 11)

The method of claim 11, wherein the X states can alternate between (00) and (11).
