IP Library Granted Patent US 12712720
Granted Patent B2
US 12712720 · App. 18/182,427 · Granted Aug 18, 2026

Memory system

Inventor: Yuki Kanbe (Fujisawa, JP)
Assignee: Kioxia Corporation
H04L9/0861G06F3/0623G06F3/0637G06F3/0679H04L9/0894H04L9/321
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12712720
App. No.
18/182,427
Granted
Aug 18, 2026
Kind
B2
Abstract

According to one embodiment, a memory system includes a nonvolatile memory and a controller. The controller is communicable with a host and is configured to control the nonvolatile memory. The controller is configured to when receiving a key generation command from the host, generate an encryption key by an encrypting and decrypting function unit, store the encryption key in the nonvolatile memory, and transmit an identifier of the encryption key to the host.

Claims (52)

1 . A memory system comprising:

a nonvolatile memory; and

a controller which is communicable with a host and configured to control the nonvolatile memory,

wherein the controller is configured to:

in response to receiving a key generation command from the host,

generate an encryption key by an encrypting and decrypting function unit,

store the encryption key in a system data area of the nonvolatile memory, wherein the system data area is managed exclusively by the controller and not mapped to any logical address space accessible to the host,

associate the encryption key with a key identifier, and

transmit only the key identifier to the host without transmitting the encryption key,

in response to receiving, from the host, an encryption command including the key identifier and data to be encrypted,

read, from the system data area of the nonvolatile memory, the encryption key indicated by the key identifier,

encrypt the data using the encryption key read from the system data area, and

transmit the encrypted data to the host.

2 . The memory system of claim 1 , wherein:

the controller comprises an encrypting and decrypting function unit of a self-encrypting storage;

the encrypting and decrypting function unit is configured to

generate an encryption key,

manage the encryption key using the nonvolatile memory, and

encrypt data written to the nonvolatile memory using the encryption key or decrypt data read from the nonvolatile memory in a state of being encrypted.

3 . The memory system of claim 1 , wherein the controller is configured to:

when receiving a decryption command including the identifier and encrypted data to be decrypted from the host,

decrypt the encrypted data using an encryption key indicated by the identifier, by the encrypting and decrypting function unit; and

transmit the decrypted data to the host.

4 . The memory system of claim 1 , wherein the controller is configured to:

when the key generation command is a command to request generation of an asymmetric key,

generate a public key and a private key, by the encrypting and decrypting function unit;

manage the public key and the private key using the nonvolatile memory; and

transmit the identifier of the public key and the private key, and the public key to the host.

5 . The memory system of claim 4 , wherein the controller is configured to:

when receiving a signature command from the host,

receive identifiers of the public key and the private key and data to be granted a signature,

read the private key indicated by the identifiers from the nonvolatile memory,

generate an electronic signature corresponding to the data based on the private key and the data, by the encrypting and decrypting function unit, and

transmit the electronic signature to the host.

6 . The memory system of claim 5 , wherein the controller is configured to:

when receiving a decryption command including the identifiers indicating the public key and the private key and including encrypted data to be decrypted from the host,

decrypt the encrypted data using the private key of the public key and the private key; and

transmit the decrypted data to the host.

7 . The memory system of claim 4 , wherein the controller is configured to:

when receiving a public key acquisition command including the identifiers indicating the public key and the private key from the host,

transmit the public key of the public key and the private key which are stored in the nonvolatile memory by the encrypting and decrypting function unit to the host.

8 . The memory system of claim 1 , wherein:

the encrypting and decrypting function unit is capable of corresponding to a plurality of encryption algorithms;

the key generation command specifies the encryption algorithm; and

the controller is configured to determine whether the key generation commands requests generation of an asymmetric key or a symmetric key, based on a specified encryption algorithm.

9 . The memory system of claim 1 , wherein:

the controller further comprises an authentication processing unit configured to authenticate an operator of the host, based on identification information of the operator of the host; and

the controller is configured to determine whether or not the command, from the host, to request processing related to the encrypting and decrypting function unit is acceptable, in accordance with a result of the authentication executed by the authentication processing unit.

10 . The memory system of claim 9 , wherein

the authentication processing unit is configured to execute authentication conforming to trusted computing group (TCG) specification.

11 . The memory system of claim 1 , wherein:

the controller is configured to transmit a key data length indicated a size of key to be transferred to the host.