Enabling a secure boot from non-volatile memory
AssigneeMicron Technology, Inc.
InventorBrent Ahlquist
Life of this patent
Estimating the term…
Abstract
A system may include a host that may include a processor coupled to a non-volatile memory over a secure communication protocol. As a result, prior to release for manufacturing, a binding code may be established between the host and the non-volatile memory. In some embodiments, this binding code may be stored on the non-volatile memory and not on the host. Then during a boot up of the system, the boot up process may be initiated by the host using code associated with the host, followed by secure booting using the secure protocol using code stored on the non-volatile memory.
Claims20
A non-transitory computer readable medium having instructions stored therein that, when executed by a processor, operates to perform a method comprising:
- transmitting a bind command and one or more parameters to a non-volatile memory;
- accessing a response from the non-volatile memory to the bind command and extracting a secret key;
- encrypting binding code, wherein the binding code is configured to be executed by a host to enable encrypted communications between the host and a non-volatile memory;
- and
- storing the encrypted binding code in a binding code storage of the non-volatile memory, the binding code storage configured to store the binding code.
A non-transitory computer readable medium having instructions stored therein that, when executed by a processor, operates to perform a method comprising:
- storing a secret key in a volatile memory of a host, the secret key extracted from a response to a bind command;
- establishing encrypted communication between the host and a non-volatile memory via binding code executable by the host, wherein the encrypted communication is established using the secret key to encrypt the binding code stored at the host;
- and
- storing a boot code in a boot code storage, and providing the boot code and the binding code to the host, wherein the boot code is provided to the host via the encrypted communications.
A method comprising:
- generating, via a host, a bind command;
- receiving the bind command at a non-volatile memory coupled to the host, and generating a response to the bind command and providing the response to the host, the host configured to extract a secret key from the response to the bind command, wherein the host configures a binding code based, at least in part, on the response and provides the binding code to a binding code storage of the non-volatile memory;
- and
- establishing encrypted communication, via the binding code, between the non-volatile memory and the host when the binding code is executed by the host using the secret key.
Dependencies are inferred from the claim text.