Secure data provisioning

US11765149B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11765149-B2
Application numberUS-201916593377-A
CountryUS
Kind codeB2
Filing dateOct 4, 2019
Priority dateJul 11, 2014
Publication dateSep 19, 2023
Grant dateSep 19, 2023

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 first instruction to store an entity identification (ID) in a memory of a device may be received. The entity ID may be stored in the memory in response to receiving the first instruction. Furthermore, a second instruction to store a value based on a key in the memory of the device may be received. A determination may be made as to whether the value based on the key that is to be stored in the memory corresponds to the entity ID that is stored in the memory. The value based on the key may be stored in the memory of the device when the value based on the key corresponds to the entity ID.

First claim

Opening claim text (preview).

What is claimed is: 1. A device comprising: a first memory to store software; a second memory; and secure data provisioning component operatively coupled to the second memory, wherein the secure data provisioning component to: receive a first instruction to store an entity identification (ID) in the second memory, wherein the entity ID is unique to a particular manufacturer; store the entity ID in the second memory in response to receiving the first instruction; receive a second instruction to store a hash value of a public key in the second memory, wherein the second instruction comprises the hash value and an ID check value, wherein the ID check value is used by the secure data provisioning component to detect an error with the entity ID prior to storing the hash value in the second memory, wherein the public key corresponds to a private key used by the particular manufacturer to sign the software that is stored in the first memory; prior to storing the hash value in the second memory, determine whether the hash value corresponds to the entity ID using the ID check value, wherein the hash value corresponds to the entity ID when the ID check value corresponds to the entity ID; and store the hash value in the second memory when the hash value is determined to correspond to the entity ID. 2. The device of claim 1 , wherein the second memory is non-volatile memory. 3. The device of claim 2 , wherein the non-volatile memory is at least one of a One Time Programmable (OTP) memory, eFuse, or Multi-time Programmable (MTP) memory. 4. The device of claim 1 , wherein the second memory is volatile memory. 5. The device of claim 1 , wherein the secure data provisioning component is further to: receive a third instruction to store a symmetric key in the second memory, wherein the third instruction comprises the symmetric key and an expected value, wherein the expected value is used by the secure data provisioning component to detect an error with the hash value prior to storing the symmetric key in the second memory, wherein the symmetric key is specified by the particular manufacturer to authenticate the device during a later operation of the device; prior to storing the symmetric key in the second memory, determine whether the symmetric key to be stored in the second memory corresponds to the hash value that is stored in the second memory using the expected value, wherein the symmetric key corresponds to the hash value when the expected value matches the hash value stored in the second memory; and store the symmetric key in the second memory when the symmetric key is determined to correspond to the hash value. 6. The device of claim 5 , wherein the first instruction, the second instruction, and the third instruction are associated with a sequence of instructions received by an original device manufacturer (ODM) from an original equipment manufacturer (OEM) via a network. 7. The device of claim 6 , wherein the sequence of instructions is associated with a signature corresponding to the private key, the secure data provisioning component is further to: retrieve, from circuitry of the device, the public key corresponding to the private key; and authenticate the signature of the sequence of instructions based on the public key. 8. The device of claim 5 , wherein the symmetric key is encrypted based on a wrapping key. 9. The device of claim 8 , wherein the wrapping key is stored in the secure data provisioning component. 10. The device of claim 5 , wherein the entity ID is an original equipment manufacturer (OEM) ID, wherein the symmetric key is an OEM key associated with the OEM ID. 11. The device of claim 1 , further comprising secure boot logic coupled to the first memory and the second memory, wherein the software, stored in the first memory, is an operating system (OS), wherein the secure boot logic is to execute the OS from the first memory based on the hash value stored in the second memory. 12. The device of claim 11 , wherein the first memory is further to store an OS signature, wherein the secure boot logic is to determine whether to execute the OS based on the OS signature. 13. The device of claim 11 , wherein the first memory is further to store an OS signature signed by a private key, wherein the secure boot logic is to: retrieve the hash value from the second memory; determine a public key associated with the hash value; verify the OS signature using the public key; and determine whether to execute the OS responsive to the OS signature being verified. 14. The device of claim 11 , wherein the first memory is further to store an OS signature and a copy of the public key associated with the OS signature, wherein the secure boot logic is to: retrieve the public key stored in the first memory; calculate a second hash value of the copy of the public key; retrieve the hash value from the second memory; verify the OS signature by comparing the second hash value with the hash value; and determine whether to execute the OS responsive to the OS signature being verified. 15. An apparatus comprising: a first memory to store software; a second memory; means for receiving a first instruction to store an entity identification (ID) in the second memory and a second instruction to store a hash value of a public key in the second memory, wherein the entity ID is unique to a particular manufacturer, wherein the second instruction comprises the hash value and an ID check value, wherein the public key corresponds to a private key used by the particular manufacturer to sign the software that is stored in the first memory; means for storing the entity ID in the second memory in response to the first instruction; means for determining whether the hash value corresponds to the entity ID using the ID check value prior to storing the hash value in the second memory, wherein the hash value corresponds to the entity ID when the ID check value matches the entity ID; and means for storing the hash value in the second memory in response to the second instruction and the hash value being determined to correspond to the entity ID. 16. The apparatus of claim 15 , further comprising: means for receiving a third instruction to store a symmetric key in the second memory, wherein the third instruction comprises the symmetric key and an expected value, wherein the symmetric key is specified by the particular manufacturer to authenticate the apparatus during a later operation of the apparatus; means for determining whether the symmetric key to be stored in the second memory corresponds to the hash value that is stored in the second memory using the expected value prior to storing the symmetric key in the second memory, wherein the symmetric key corresponds to the hash value when the expected value matches the hash value stored in the second memory; and means for storing the symmetric key in the second memory when the symmetric key is determined to correspond to the hash value. 17. The apparatus of claim 15 , wherein the second memory is non-volatile memory. 18. The apparatus of claim 17 , wherein the non-volatile memory is at least one of a One Time Programmable (OTP) memory, eFuse, or Multi-time Programmable (MTP) memory. 19. An integrated circuit comprising: a first memory to store software; a second memory; and secure data provisioning component operatively coupled to the second memory, wherein the secure data provisioning component to: receive a first instruction to store an entity identification (ID) in the second memory, wherei

Assignees

Inventors

Classifications

  • H04L9/0894Primary

    Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage · CPC title

  • H04L63/061Primary

    for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838) · CPC title

  • using cryptographic hash functions · CPC title

  • Key management, e.g. using generic bootstrapping architecture [GBA] · CPC title

  • Secure boot · 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 US11765149B2 cover?
A first instruction to store an entity identification (ID) in a memory of a device may be received. The entity ID may be stored in the memory in response to receiving the first instruction. Furthermore, a second instruction to store a value based on a key in the memory of the device may be received. A determination may be made as to whether the value based on the key that is to be stored in the…
Who is the assignee on this patent?
Cryptography Res Inc
What technology area does this patent fall under?
Primary CPC classification H04L9/0894. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 19 2023 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).