# US 12,001,707 B2 · Host verification for a memory device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,707 B2
- Document ID: US12001707B2
- Status: Granted
- Kind: B2
- Application number: 17/396,529
- Filed: 2021-08-06
- Published: 2022-02-24
- Granted: 2024-06-04
- Earliest claimed: 2020-08-20
- Assignees: Micron Technology, Inc.
- Applicants: Micron Technology, Inc.
- Inventors: Aaron P. Boehm; Steffen Buch; Lance W. Dover
- Web page: https://patentgrep.com/patent/US12001707B2

## CPC

- G06F 3/0611: {in relation to response time}
- G06F 3/0655: {Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices}
- G06F 3/0623: {in relation to content}
- G06F 3/0658: {Controller construction arrangements}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 3/0688: {Non-volatile semiconductor memory arrays}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods, systems, and devices for host verification for a memory device are described. A memory device may receive a first value from a host device that is associated with an identification of the host device after an event. The memory device may transmit a second value to the host device that is based on the first value and comprises a random set of bits. The memory device may receive from the host device data or a command that comprises an encrypted third value that is based at least in part on the second value and a secret shared between the host device and the memory device. The memory device may also enable a functionality of the memory device based on the encrypted third value.

## Claims

### Claim 1

A method, comprising:
receiving, from a host device at a memory device, a first value that is associated with an identification of the host device after a transition from a first power mode of the memory device to a first functionality mode of a second power mode of the memory device, the second power mode comprising the first functionality mode and a second functionality mode, wherein the first functionality mode enables the host device to perform read-only operations on the memory device and the second functionality mode enables the host device to perform read operations and write operations on the memory device;
receiving, from the host device, an access command, the access command being associated with a write operation on the memory device;
suspending executing the access command based at least in part on the memory device operating in the first functionality mode;
transmitting, to the host device from the memory device, a second value that is based at least in part on the first value and comprises a random set of bits;
receiving, from the host device at the memory device, data or a command that comprises an encrypted third value that is based at least in part on the second value and a secret shared between the host device and the memory device;
enabling the second functionality mode of the second power mode of the memory device based at least in part on the encrypted third value; and
ceasing suspension of the access command based at least in part on enabling the second functionality mode.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving, from the host device at the memory device, an access command and a fourth value associated with the access command based at least in part on enabling the second functionality mode of the memory device;
validating the access command as being from an authorized host device based at least in part on comparing the fourth value with a fifth value generated at the memory device using a randomization process that is based at least in part on a random quantity and the secret shared between the host device and the memory device after receiving the fourth value; and
executing the access command based at least in part on validating the access command.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
seeding the randomization process used to generate the fifth value with the second value transmitted to the host device, wherein generating the fifth value is based at least in part on seeding the randomization process.

### Claim 4 (depends on 3)

The method of claim 3, wherein the randomization process comprises a process implemented by a linear-feedback shift register, an algorithm generated by a pseudorandom number generator, or any combination thereof.

### Claim 5 (depends on 3)

The method of claim 3, wherein the randomization process is seeded with the second value and a secret key shared between the host device and the memory device.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
generating, at the memory device, the second value using a randomization process on the first value before transmitting the second value.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
validating the host device as an authorized user of the memory device based at least in part on the encrypted third value.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
comparing the encrypted third value with a stored value generated by an algorithm based at least in part on receiving the encrypted third value; and
determining that the encrypted third value matches the stored value based at least in part on the comparison, wherein enabling the second functionality mode of the memory device is based at least in part on determining that the encrypted third value matches the stored value.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
receiving, from the host device, an encrypted fourth value after an event;
comparing the encrypted fourth value with a stored value generated by an algorithm based at least in part on receiving the encrypted fourth value;
determining that the encrypted fourth value is different than the stored value based at least in part on the comparison; and
refraining from validating the host device based at least in part on determining that the encrypted fourth value is different than the stored value.

### Claim 10 (depends on 9)

The method of claim 9, further comprising:
incrementing a counter associated with the encrypted third value to a first count value based at least in part on determining that the encrypted fourth value is different than the stored value; and
determining that the first count value satisfies a threshold value based at least in part on the comparison.

### Claim 11 (depends on 10)

The method of claim 10, further comprising:
disabling the second functionality mode of the memory device based at least in part on determining that the first count value satisfies the threshold value and determining that the encrypted fourth value is different than the stored value.

### Claim 12 (depends on 10)

The method of claim 10, further comprising:
transmitting an alert based at least in part on determining that the first count value satisfies the threshold value.

### Claim 13 (depends on 1)

The method of claim 1, wherein the encrypted third value comprises a message authentication code.

### Claim 14 (depends on 1)

The method of claim 1, further comprising:
disabling the second functionality mode of the memory device before a process associated with the transition is completed.

### Claim 15 (depends on 1)

The method of claim 1, wherein the memory device comprises an array of memory cells that each comprise capacitive storage elements, resistive storage elements, polarization storage elements, other types of storage elements, or a combination thereof.

### Claim 16

A method, comprising:
transitioning a memory device from a first power mode to a first functionality mode of a second power mode, the second power mode comprising the first functionality mode and a second functionality mode, wherein the first functionality mode enables a host device to perform read-only operations on the memory device and the second functionality mode enables the host device to perform read operations and write operations on the memory device;
receiving, from the host device, an access command and a first value associated with an identification of the access command, the access command triggered by the transitioning;
suspending executing the access command based at least in part on the memory device operating in the first functionality mode and the access command being associated with a write operation on the memory device;
generating, at the memory device, a second value associated with the access command using a randomization process that is based at least in part on a random quantity and a secret shared between the host device and the memory device based at least in part on receiving the access command and the first value;
validating the access command as being from an authorized user of the memory device based at least in part on the first value matching with the second value based at least in part on generating the second value;
enabling the second functionality mode of the second power mode based at least in part on validating the access command as being from an authorized user;
ceasing suspension of the access command based at least in part on enabling the second functionality mode; and
executing the access command based at least in part on enabling the second functionality mode.

### Claim 17 (depends on 16)

The method of claim 16, further comprising:
validating the host device as the authorized user based at least in part on the secret shared between the host device and the memory device, wherein receiving the access command is based at least in part on validating the host device.

### Claim 18 (depends on 16)

The method of claim 16, wherein the randomization process at the memory device is synchronized with a second randomization process at the host device using a seed value.

### Claim 19 (depends on 16)

The method of claim 16, further comprising:
receiving, from the host device, a second access command a third value associated with the second access command;
generating a fourth value associated with the second access command using the randomization process based at least in part on receiving the second access command with the third value;
determining the fourth value is different than the third value based at least in part on generating the fourth value; and
refraining from executing the second access command based at least in part on determining that the fourth value is different than the third value.

### Claim 20 (depends on 19)

The method of claim 19, further comprising:
initializing a counter based at least in part on determining that the fourth value is different than the third value; and
incrementing the counter to a first count value based at least in part on initializing the counter and determining that the fourth value is different than the third value.

### Claim 21 (depends on 20)

The method of claim 20, further comprising:
comparing the first count value of the counter with a threshold value based at least in part on incrementing the counter to the first count value;
determining that the first count value satisfies the threshold value based at least in part on the comparison; and
disabling a functionality of the memory device based at least in part on determining the first count value satisfies the threshold value.

### Claim 22 (depends on 16)

The method of claim 16, wherein the access command and the first value are received concurrently.

### Claim 23

A method, comprising:
transitioning a memory device from a first power mode to a second power mode, the second power mode comprising a first functionality and a second functionality;
enabling the first functionality of the memory device based at least in part on transitioning to the second power mode, the first functionality enabling a host device to perform read-only operations on the memory device;
receiving, from the host device, an access command, the access command being associated with a write operation on the memory device;
suspending executing the access command based at least in part on the memory device operating in the first functionality;
validating the host device as an authorized user of the memory device based at least in part on enabling the first functionality after transitioning to the second power mode;
enabling the second functionality of the memory device based at least in part on validating the host device as an authorized user, the second functionality enabling the host device to perform read operations and write operations on the memory device; and
ceasing suspension of the access command based at least in part on enabling the second functionality.

### Claim 24 (depends on 23)

The method of claim 23, wherein:
validating the host device is based at least in part on a secret shared between the memory device and the host device.

### Claim 25 (depends on 23)

The method of claim 23, further comprising:
transitioning the memory device from the second power mode to the first power mode after an event;
transitioning the memory device from the first power mode to the second power mode after a second event;
enabling the first functionality of the memory device based at least in part on transitioning to the second power mode after the second event;
refraining from validating the host device based at least in part on enabling the first functionality and after transitioning to the second power mode after the second event; and
refraining from enabling the second functionality of the memory device based at least in part on refraining from validating the host device.

### Claim 26 (depends on 23)

The method of claim 23, wherein the first power mode is associated with a power off state of the memory device and the second power mode is associated with a power on state of the memory device.

### Claim 27 (depends on 23)

The method of claim 23, wherein the first power mode is associated with a low power state and the second power mode is associated with a high power state.

### Claim 28 (depends on 23)

The method of claim 23, wherein:
transitioning from the first power mode to the second power mode is associated with a reset operation of the memory device.
