Abstract:
A storage device includes a device identification module configured to generate a device identifier, a bootloader configured to generate a device identification key pair based on the device identifier and perform booting of the storage device, attester firmware configured to generate a device certificate based on the device identification key pair and report security information on the device to a host, and a measurement manager configured to perform a measurement operation for the device identification module, the bootloader, and the attester firmware, store a first measurement value of the device identification module in response to determining that the first measurement value matches first information, determine whether a second measurement value of the bootloader matches second information in response to storing the first measurement, store the second measurement value in response to determining that the second measurement value matches the second information, determine whether a third measurement value of the attester firmware matches third information in response to the second measurement value being stored, store the third measurement value in response to determining that the second measurement value matches the second information, and transmit the stored first measurement value, the stores second measurement value, and the stored third measurement value to the attester firmware.
Abstract:
An apparatus may include a device including a first controller, and a second controller, wherein the device may be configured to receive, using the first controller, data, apply, to the data, a first protection scheme, and send, from the device, using the second controller, the data having a second protection scheme. The first protection scheme and the second protection scheme may be the same. The second controller may be configured to apply, to the data, the second protection scheme. The first protection scheme may include a first salt, and the second protection scheme may include a second salt. The first salt may be determined by the device, and the second salt may be determined by a user. The method may further include applying, at the device, to controller state information for the first controller, a third protection scheme to generate controller state information having the third protection scheme.
Abstract:
A storage system includes: a host configured to receive a software image and a first signature for the software image, the first signature being generated based on a first secret key, and generate, based on a second secret key, a second signature for the software image; and a storage device configured to receive, from the host, the software image, the first signature, the second signature, and a second public key related to the second secret key and execute the software image, based on a first verification and a second verification the first verification being performed on the first signature on the basis of a first public key related to the first secret key, and the second verification being performed on the second signature on the basis of the second public key.
Abstract:
Provided is a system including a memory device including an interface configured to receive a measurement value generation request signal from a host and transmit a first measurement value and a second measurement value to the host, attester firmware configured to receive measurement values for a plurality of pieces of firmware, a bootloader configured to perform booting, a first register configured to record a first measurement value of the bootloader, and a second register configured to record a second measurement value for the attester firmware in response to the first measurement value being recorded, and the host including processing circuitry configured to receive the first measurement value and the second measurement value, and determine whether to falsify the bootloader or the attester firmware based on at least one of (1) the first measurement value and first reference values or (2) the second measurement value and second refence values.
Abstract:
An operation method of a storage controller, which is configured to control a nonvolatile memory device, includes initiating a first instance of a respective reliability operation for a respective memory block included in the nonvolatile memory device, the respective reliability operation including detecting a degradation level of the respective memory block and setting a respective skip reference value based on the detected degradation level; determining whether a respective number of consecutively skipped instances of the respective reliability operation is less than the respective skip reference value; and selectively skipping or performing a next instance of the respective reliability operation based on the determination result.
Abstract:
Disclosed is a method of operating a storage device which communicates with a host device. The method includes allocating a secure region and a user region, storing first data encrypted by using a first encryption key in a first data block of the secure region, receiving a first request indicating a first secure delete operation of the first data from the host device, decrypting at least one valid data of the first data block by using the first encryption key based on the first request, wherein the at least one valid data do not include the first data, encrypting the decrypted at least one valid data by using a second encryption key different from the first encryption key, storing the encrypted at least one valid data in a second data block of the secure region, and deleting the first encryption key.
Abstract:
A method of writing data to a protected region in response to a request from a host includes receiving a first write request including a first host message authentication code and a first random number from the host, verifying the first write request based on a write count, the first random number, and the first host message authentication code, updating the write count based on a result of verifying the first write request, generating a first device message authentication code based on the updated write count and the first random number, and providing the host with a first response including the first device message authentication code and a result of the verifying of the first write request.
Abstract:
In one embodiment, the method includes receiving, at a storage device, a request. The request includes a request message authentication code and write protect information. The write protect information includes at least one of start address information and length information. The start address information indicates a logical block address at which a memory area in a non-volatile memory of the storage device starts, and the length information indicates a length of the memory area. The method also includes generating, at the storage device, a message authentication code based on (1) at least one of the start address information and the length information, and (2) a key stored at the storage device; authenticating, at the storage device, the request based on the generated message authentication code and the request message authentication code; and processing, at the storage device, the request based on a result of the authenticating.
Abstract:
A nonvolatile memory system includes a nonvolatile memory device having a physical storage area, and a memory controller managing the physical storage area on the basis of first and second logical areas. The memory controller is configured to receive a logical block address range corresponding to a part of the first logical area and a command from a host and is configured to receive data, a logical block address and a write command from the host to perform an update with respect to the second logical area. When, in the update operation, the received logical block address is included in the logical block address range, the memory controller, in response to the write command, redirects the received logical block address to a logical page number of the second logical area so that the data is written in the second logical area.
Abstract:
A storage device includes at least one nonvolatile memory device, and a controller controlling the at least one nonvolatile memory device. The controller includes a parameter storage storing a power parameter indicating a clock value of each of internal configurations for each power state. The power parameter is a value derived by performing machine learning considering performance, peak power, and average power.