IP Library Granted Patent US 12,261,961
Granted Patent B2
US 12,261,961 · App. 17/554,414 · Granted Mar 25, 2025

Consensus data filtering in proof of space blockchain systems

Inventors: Shashank Agrawal (Fremont, CA); Cyril Guyot (San Jose, CA)
Assignee: Western Digital Technologies, Inc.
H04L9/3236G06F16/2282H04L9/50H04L2209/56
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 12,261,961
App. No.
17/554,414
Granted
Mar 25, 2025
Kind
B2
Abstract

Blockchain systems operate over a network of computing devices. Proof of space blockchain consensus systems utilize data stored in storage devices across the computing devices within the network. These storage devices are utilized to generate and store proof of space consensus data. This data is then accessed at a later time to respond to challenges issued across the blockchain network. In order to limit successful submissions of these challenge responses, one or more filters are utilized. These filters result in only a fraction of the stored data on a storage device to be useable for solving the blockchain challenge. Attackers may attempt to circumvent this filter to increase their odds of submitting an approved solution to the blockchain challenge. In order to address this, additional data structures are stored within the storage device and are registered at the time of creation on the blockchain to make these filters more robust.

Claims (47)

1. A method for filtering challenge solutions in a proof of space consensus blockchain network, comprising:

generating one or more plots wherein a Merkle tree is incorporated into the plot;

generating a unique plot identification value for each generated plot;

generating commitment data based on the incorporated Merkle tree;

registering the plot identification value and commitment data to the blockchain;

generating a quality string value to determine an overall proof of quality of the plot;

upon receiving challenge data from the blockchain network, generating a plurality of potential solutions if the overall proof of quality of the plot is above a predetermined threshold;

filtering the generated potential solutions wherein the filter evaluates a hash value generated from a combination of:

the plot identification value;

the received challenge data;

signage point data received from the blockchain network; and

the generated commitment data.

2. The method of claim 1 , wherein a plot includes at least a plurality of ordered tables.

3. The method of claim 2 , wherein the second through last table of the plurality of tables comprise values that reference locations within previous tables such that selecting a first value in the last ordered table will backpropagate through a series of values until a final value is reached within the first table.

4. The method of claim 3 , wherein the incorporated Merkle tree has input leaf values comprised of a pair of numbers.

5. The method of claim 4 , wherein the first value of the pair of leaf values comprises a value stored in the last of the plurality of ordered tables.

6. The method of claim 5 , wherein the second value of the pair of leaf values comprises a value derived from the first value within the plurality of tables.

7. The method of claim 6 , wherein the second value is the smallest value within the series of values within the backpropagation of the first value within the plurality of tables.

8. The method of claim 7 , wherein the commitment data is the value of the root of the incorporated Merkle tree.

9. The method of claim 7 , wherein the potential solutions are formatted to be associated with the commitment data.

10. The method of claim 9 , wherein the potential solution includes a Merkle tree path generated from the incorporated Merkle tree.

11. The method of claim 10 , wherein the Merkle tree path is generated from the first and second values of the input leaves.

12. The method of claim 1 , wherein the filtering evaluation comprises determining the number of leading zeros within the resulting hash.

13. The method of claim 9 , wherein the filter will reject any potential challenge solutions that do not comprise a value with an equal or greater number of required leading zeros.

14. The method of claim 1 , wherein filtering potential solutions further includes evaluating the duration between plot registration and submitting the solution.

15. The method of claim 11 , wherein potential solutions will be rejected if the time elapsed between plot registration and submission of the potential solution does not exceed a second predetermined threshold.

16. The method of claim 15 , wherein the second predetermined threshold is associated with the height of the current block within the blockchain.

17. A device comprising:

a processor;

a memory array comprising:

a plurality of memory devices;

a proof of space blockchain logic configured to:

generate one or more plots wherein a Merkle tree is incorporated into the plot;

store the plots within the memory array;

generate a unique plot identification value for each generated plot;

generate commitment data based on the incorporated Merkle tree;

register the plot identification value and commitment data to the blockchain;

generate a quality string value to determine an overall proof of quality of the plot;

upon receiving challenge data from the blockchain network, generating a plurality of potential solutions if the overall proof of quality of the plot is above a predetermined threshold;

filter the generated potential solutions wherein the filter evaluates a hash value generated from a combination of:

the plot identification value;

the received challenge data;

signage point data received from the blockchain network; and

the generated commitment data.

18. The device of claim 17 , wherein the filtering evaluation comprises determining the number of leading zeros within the resulting hash.

19. The device of claim 17 , wherein the filter will reject any potential challenge solutions that do not comprise a value with an equal or greater number of required leading zeros.

20. The device of claim 17 , wherein the number of required leading zeroes can be dynamically changed upon the next received challenge data.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2025
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 070313/0840 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2021
From: AGRAWAL, SHASHANK; GUYOT, CYRIL
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058418/0074 →
Continuity (1)
Related Publication 20230198770A1 · Jun 22, 2023
References Cited (6)
US 10938567B2 · Martino · 2021 [cited by examiner]
US 11418402B1 · Jakobsson · 2022 [cited by examiner]
US 20190303579A1 · Reddy · 2019 [cited by examiner]
US 20200201910A1 · Gavaudan · 2020 [cited by examiner]
US 20220116225A1 · Cohen · 2022 [cited by examiner]
“Chia Network Consensus Explained”, URL: https://manuals.plus/chia/chia-network-consensus-explained, 67 pages, May 2, 2021. [cited by applicant]