US 12,294,654 B1
Protocols for decentralized networks
Nicola Greco, Cambridge, MA (US); and Juan Batiz-Benet, Walnut, CA (US)
Assigned to Protocol Labs, Inc., Wilmington, DE (US)
Filed by Protocol Labs, Inc., San Francisco, CA (US)
Filed on Dec. 6, 2022, as Appl. No. 18/075,794.
Application 18/075,794 is a continuation of application No. 16/866,370, filed on May 4, 2020, granted, now 11,570,001.
Application 16/866,370 is a continuation in part of application No. 16/195,536, filed on Nov. 19, 2018, granted, now 10,708,071.
Application 18/075,794 is a continuation in part of application No. 16/726,520, filed on Dec. 24, 2019, granted, now 11,245,528.
Application 16/726,520 is a continuation in part of application No. 16/195,621, filed on Nov. 19, 2018, granted, now 10,554,407.
Claims priority of provisional application 62/697,123, filed on Jul. 12, 2018.
Claims priority of provisional application 62/697,091, filed on Jul. 12, 2018.
Claims priority of provisional application 62/697,097, filed on Jul. 12, 2018.
Claims priority of provisional application 62/901,207, filed on Sep. 16, 2019.
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 9/32 (2006.01); H04L 9/00 (2022.01); H04L 9/06 (2006.01)
CPC H04L 9/3218 (2013.01) [H04L 9/0637 (2013.01); H04L 9/3213 (2013.01); H04L 9/3271 (2013.01); H04L 9/50 (2022.05)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
receiving, at a verifier, the frequency of input challenges that a prover will receive;
receiving at a verifier, an output proof, the output proof having been generated by steps comprising:
receiving, at a prover, an initial input challenge;
producing, at the prover, an output proof proving that the prover has access to specified data for a specified time, wherein producing the output proof comprises:
producing, at the prover, an initial proof responsive to the initial input challenge, the initial proof proving that the prover is storing specified data;
generating, at the prover, a new input challenge based at least in part on the initial proof;
producing, at the prover, a new proof responsive to the new input challenge, the new proof proving that the prover is storing the specified data; and
repeating, at the prover, the generating step and the producing a new proof responsive to the new input challenge step a number of times, the repeating step generating sequential proofs of storage to determine time of storage, wherein each generating step is based at least in part on a most recent new proof,
receiving the output proof at the verifier; and
verifying, at the verifier, the output proof.