Non-volatile memory with physical unclonable function and random number generator

US10855477B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10855477-B2
Application numberUS-201715857341-A
CountryUS
Kind codeB2
Filing dateDec 28, 2017
Priority dateAug 4, 2016
Publication dateDec 1, 2020
Grant dateDec 1, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A device which can be implemented on a single packaged integrated circuit or a multichip includes a plurality of non-volatile memory cells, and logic to use a physical unclonable function to produce an initial key and to store the initial key in a set of non-volatile memory cells in the plurality of non-volatile memory cells. The device can include logic to use a random number generator to generate a random number, and logic to combine the initial key and the random number to produce an enhanced key. The physical unclonable function can use entropy derived from non-volatile memory cells in the plurality of non-volatile memory cells to produce the initial key. Logic is described to disable changes to data in the set of non-volatile memory cells, and thereby freeze the key after it is stored in the set.

First claim

Opening claim text (preview).

What is claimed is: 1. A circuit, comprising: a plurality of non-volatile memory cells; logic to use a physical unclonable function using non-volatile memory cells in the plurality of non-volatile memory cells to produce a first key; a random number generator to produce a second key; logic to combine the first key and the second key to produce an enhanced key; logic to store the enhanced key in a set of non-volatile memory cells in the plurality of non-volatile memory cells; and logic to disable changes to data in the set of non-volatile memory cells after the enhanced key is stored in the set. 2. The circuit of claim 1 , wherein the physical unclonable function utilizes entropy generated using non-volatile memory cells in the plurality of non-volatile memory cells to produce the first key. 3. The circuit of claim 1 , wherein the logic to combine the first key and the second key executes an XOR function. 4. The circuit of claim 1 , wherein the logic to combine includes a hash function. 5. The circuit of claim 1 , wherein the random number generator comprises a logic circuit producing a pseudo-random number as the second key. 6. The circuit of claim 1 , including authentication logic requiring a successful authentication protocol to enable the physical unclonable function to produce the first key. 7. The circuit of claim 1 , including: a port for external communication of data from the plurality of non-volatile memory cells; and security logic coupled to the plurality of non-volatile memory cells, which utilizes the enhanced key in a protocol to enable access to data stored in the plurality of non-volatile memory cells. 8. The circuit of claim 7 , wherein the protocol includes a challenge/response protocol including exchange of data via the port. 9. The circuit of claim 7 , wherein the plurality of non-volatile memory cells, the port, the security logic and the random number generator are disposed on a single integrated circuit. 10. A method for operating a circuit including a plurality of non-volatile memory cells, comprising: executing a physical unclonable function to generate an initial key; storing the initial key in a first set of non-volatile memory cells in the plurality of non-volatile memory cells; executing a random number generator to generate a random number; logically combining the initial key and the random number to produce an enhanced key; storing the enhanced key in a second set of non-volatile memory cells in the plurality of non-volatile memory cells; and after storing the initial key, disabling changes to data stored in the first set of non-volatile memory cells. 11. The method of claim 10 , wherein the physical unclonable function utilizes entropy generated using non-volatile memory cells in the first set of non-volatile memory cells to produce the initial key. 12. The method of claim 10 , wherein said logically combining includes executing an XOR function using the initial key and the random number as inputs and producing an output as the enhanced key. 13. The method of claim 10 , wherein said logically combining includes executing a hash function mapping the initial key and the random number to hash values as the enhanced key. 14. The method of claim 10 , wherein disabling changes to data stored in the first set of non-volatile memory cells disables use of the physical unclonable function. 15. The method of claim 13 , wherein the plurality of non-volatile memory cells includes an array of non-volatile memory cells with peripheral circuits for access to the array, and a block of non-volatile memory cells having separate peripheral circuits allowing read-only access to the block, the block including the first set of non-volatile memory cells, and wherein the physical unclonable function utilizes entropy generated using non-volatile memory cells in the block of non-volatile memory cells to produce the initial key, and wherein disabling changes to data stored in the set of non-volatile memory cells disables the physical unclonable function. 16. The method of claim 13 , wherein the plurality of non-volatile memory cells includes an array of non-volatile memory cells with peripheral circuits for access to the array, and wherein the peripheral circuits have a first state in which access to the first set of non-volatile memory cells to write the initial key is enabled, and a second state in which access to the first set of non-volatile memory cells to write is disabled while access to other non-volatile memory cells in the array to write is enabled, and wherein disabling changes to data stored in the first set of non-volatile memory cells includes storing an indicator to set the first state or the second state. 17. The method of claim 10 , including requiring a successful authentication protocol to enable the physical unclonable function to produce the initial key. 18. The method of claim 10 , wherein the physical unclonable function uses the first set of non-volatile memory cells to produce the initial key. 19. The method of claim 10 , including utilizing the enhanced key in a protocol to enable access to data other than the initial key and the enhanced key, stored in the plurality of non-volatile memory cells.

Assignees

Inventors

Classifications

  • H04L9/0866Primary

    involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics · CPC title

  • involving random numbers or seeds · CPC title

  • Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system (cryptographic typewriters G09C3/00) · CPC title

  • H04L9/3278Primary

    using physically unclonable functions [PUF] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10855477B2 cover?
A device which can be implemented on a single packaged integrated circuit or a multichip includes a plurality of non-volatile memory cells, and logic to use a physical unclonable function to produce an initial key and to store the initial key in a set of non-volatile memory cells in the plurality of non-volatile memory cells. The device can include logic to use a random number generator to gene…
Who is the assignee on this patent?
Macronix Int Co Ltd
What technology area does this patent fall under?
Primary CPC classification H04L9/0866. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 01 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).