# US 12,182,430 B2 · Trusted systems for decentralized data storage

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

- Number: US 12,182,430 B2
- Document ID: US12182430B2
- Status: Granted
- Kind: B2
- Application number: 17/537,302
- Filed: 2021-11-29
- Published: 2023-06-01
- Granted: 2024-12-31
- Earliest claimed: 2021-11-29
- Assignees: SanDisk Technologies LLC
- Applicants: Western Digital Technologies, Inc.
- Inventors: Shashank Agrawal; Cyril Guyot
- Web page: https://patentgrep.com/patent/US12182430B2

## CPC

- G06F 3/064: {Management of blocks}
- G06F 3/0622: {in relation to access}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 21/602: {Providing cryptographic facilities or services}
- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F 21/107: {License processing; Key processing}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Certain aspects of the present disclosure provide techniques for proving possession of data in a storage device participating in a distributed data storage network. An example storage device includes a storage circuitry and a trusted circuit. The storage circuitry is configured to store a plurality of data blocks. The trusted circuit generally has a private signing key securely stored thereon. The trusted circuit is generally configured to compute a hash over data stored in a plurality of data blocks and to generate an anonymous digital signature for the data stored in the plurality of data blocks based at least in part on the private signing key and the computed hash. The trusted circuit may be interposed on a write path to the storage circuitry such that data written to the storage circuitry is processed through the trusted circuit.

## Claims

### Claim 1

A storage device, comprising:
a storage circuitry configured to store a plurality of data blocks; and
a trusted circuit having a private signing key securely stored thereon, the trusted circuit being configured to:
compute a hash over data to be stored in one or more data blocks of the plurality of data blocks, and
generate an anonymous digital signature for the data to be stored in the one or more data blocks based on a number of the one or more data blocks in which the data is to be stored, and based at least in part on the private signing key and the computed hash;
wherein the generated anonymous digital signature evidences completion of a write operation of the data indicating that the data is stored in the one or more data blocks and prevents identification of the storage device,
wherein the trusted circuit is interposed on a write path to the storage circuitry such that data written to the storage circuitry is processed through the trusted circuit, and
wherein the generated anonymous digital signature is output to a blockchain.

### Claim 2 (depends on 1)

The storage device of claim 1, wherein the trusted circuit is configured to generate the anonymous digital signature further based on a time at which the digital signature is generated.

### Claim 3 (depends on 1)

The storage device of claim 1, wherein the trusted circuit is further configured to:
derive a challenge value related to a most recent state of a blockchain associated with the data stored in the plurality of data blocks; and
generate a second anonymous signature based on the private signing key and the challenge value.

### Claim 4 (depends on 3)

The storage device of claim 3, wherein the blockchain is associated with a cryptocurrency.

### Claim 5 (depends on 1)

The storage device of claim 1, wherein the trusted circuit is further configured to maintain a first mapping between a memory address range associated with the plurality of data blocks and the computed hash.

### Claim 6 (depends on 5)

The storage device of claim 5, wherein the trusted circuit is further configured to:
receive, from a requesting device, a request to validate existence of data at a memory address;
determine that the memory address is within the memory address range associated with the plurality of data blocks; and
return, to the requesting device, the computed hash.

### Claim 7 (depends on 5)

The storage device of claim 5, wherein the trusted circuit is further configured to:
receive, from a requesting device, a request to validate existence of data at a memory address;
determine that the memory address is outside the memory address range associated with the plurality of data blocks;
read, from the storage circuitry, data stored at the memory address;
generate a second anonymous digital signature for the data stored at the memory address based on a hash of the data stored at the memory address and a signing key; and
return, to the requesting device, the second anonymous digital signature.

### Claim 8 (depends on 6)

The storage device of claim 6, wherein the trusted circuit is further configured to: generate a second mapping, the second mapping associating the memory address and the hash of the data stored at the memory address.

### Claim 9 (depends on 6)

The storage device of claim 6, wherein the signing key comprises a challenge value included in the request to validate existence of data at the memory address.

### Claim 10 (depends on 5)

The storage device of claim 5, further comprising:
detecting, on the write path to the storage circuitry, a write request against an address in the memory address range associated with the plurality of data blocks; and
deleting the first mapping between the memory address range associated with the plurality of data blocks and the computed hash based on detecting the write request.

### Claim 11 (depends on 1)

The storage device of claim 1, wherein the trusted circuit is further configured to:
receive a first digital signature for first data to be stored in the storage circuitry and a second digital signature for second data to be stored in the storage circuitry;
determine, based on information associated with the first digital signature and the second digital signature, that the first digital signature and the second digital signature are combinable; and
based on a determination that the first digital signature and the second digital signature are combinable, generate a combined signature for the first digital signature and the second digital signature.

### Claim 12 (depends on 11)

The storage device of claim 11, wherein in order to determine that the first digital signature and the second digital signature are combinable, the trusted circuit is configured to:
determine that a timestamp associated with the first digital signature differs from a timestamp associated with the second digital signature by an amount less than a first threshold amount, and
determine that the timestamp associated with the first digital signature and the timestamp associated with the second digital signature is within a second threshold amount of a current timestamp.

### Claim 13 (depends on 11)

The storage device of claim 11, wherein in order to determine that the first digital signature and the second digital signature are combinable, the trusted circuit is configured to determine that a challenge value associated with the first digital signature and a challenge value associated with the second digital signature are a same challenge value.

### Claim 14 (depends on 1)

The storage device of claim 1, wherein the data stored in the plurality of data blocks comprises encrypted data.

### Claim 15

A method, comprising:
detecting a request to write data to one or more data blocks of a plurality of data blocks in storage circuitry of a storage device;
computing a hash over the data to be written to the one or more data blocks;
generating an anonymous digital signature for the data to be written to the one or more data blocks based on a number of the one or more data blocks in which the data is to be stored, and based at least in part on a private signing key stored in a trusted circuit of the storage device and the computed hash; and
outputting the anonymous digital signature to a blockchain to evidence completion of the request to write the data to the one or more data blocks in storage circuitry of the storage device and prevents identification of the storage device, wherein the generated anonymous digital signature prevents identification of the storage device and wherein the trusted circuit is interposed on a write path to the storage circuitry such that data written to the storage circuitry is processed through the trusted circuit.

### Claim 16 (depends on 1)

The storage device of claim 1, wherein the private signing key is permanently stored on the trusted circuit.

### Claim 17 (depends on 15)

The method of claim 15, further comprising:
deriving a challenge value related to a most recent state of a blockchain associated with the data stored in the one or more data blocks; and
generating a second anonymous signature based on the private signing key and the challenge value.

### Claim 18 (depends on 17)

The method of claim 17, wherein the blockchain is associated with a cryptocurrency.

### Claim 19 (depends on 15)

The method of claim 15, further comprising:
generating a mapping between the computed hash and a range of memory addresses including memory addresses associated with the one or more data blocks; and
committing the mapping to a hash-map store.

### Claim 20 (depends on 19)

The method of claim 19, further comprising:
receiving, from a requesting device, a request to validate existence of data at a memory address;
determining that the memory address is within the range of memory addresses specified in the mapping; and
returning, to the requesting device, the computed hash associated with the range of memory addresses including the memory addresses associated with the one or more data blocks.

### Claim 21 (depends on 15)

The method of claim 15, further comprising:
receiving a first digital signature for first data to be stored in the storage circuitry and a second digital signature for second data to be stored in the storage circuitry;
determining, based on information associated with the first digital signature and the second digital signature, that the first digital signature and the second digital signature are combinable; and
based on a determination that the first digital signature and the second digital signature are combinable, generating a combined signature for the first digital signature and the second digital signature.

### Claim 22

A storage device, comprising:
a storage circuitry configured to store a plurality of data blocks; and
a trusted circuit having a private signing key securely stored thereon, the trusted circuit being configured to:
compute a hash over data to be stored in one or more data blocks of the plurality of data blocks; and
generate an anonymous digital signature for the data to be stored in the one or more data blocks based at least in part on the private signing key, the computed hash, and the one or more data blocks in which the data is to be stored;
receive a first digital signature for first data to be stored in the storage circuitry and a second digital signature for second data to be stored in the storage circuitry;
determine, based on information associated with the first digital signature and the second digital signature, that the first digital signature and the second digital signature are combinable, wherein in order to determine that the first digital signature and the second digital signature are combinable, the trusted circuit is configured to determine that a challenge value associated with the first digital signature and a challenge value associated with the second digital signature are a same challenge value; and
based on a determination that the first digital signature and the second digital signature are combinable, generate a combined signature for the first digital signature and the second digital signature,
wherein the generated anonymous digital signature evidences completion of a write operation of the data indicating that the data is stored in the one or more data blocks and prevents identification of the storage device, and
wherein the trusted circuit is interposed on a write path to the storage circuitry such that data written to the storage circuitry is processed through the trusted circuit.
