CPC H05B 3/565 (2013.01) [H01B 1/02 (2013.01); H01B 7/0225 (2013.01); H01B 7/28 (2013.01); H01B 7/295 (2013.01); H04L 9/3239 (2013.01); H04L 9/3247 (2013.01); H04L 9/3265 (2013.01); H05B 1/0291 (2013.01); H05B 3/04 (2013.01); H05B 3/146 (2013.01); H01B 3/441 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01); H05B 2203/011 (2013.01); H05B 2203/02 (2013.01); Y02A 30/14 (2018.01)] | 20 Claims |
1. A method comprising: receiving, by a client device, a verification request comprising an interaction identifier; in response to receiving the verification request, querying, by the client device, a full node for a random sampling of block headers of a blockchain on the full node by transmitting a random number to the full node, wherein the full node partitions the blockchain into a plurality of blockchain partitions including a last partition, the last partition including a latest block header, and then randomly samples block headers equal to the random number from the block headers in the last partition to form the random sampling of block headers, and wherein the full node also determines a plurality of Merkle mountain range proofs associated with the random sampling of block headers and transmits the plurality of Merkle mountain range proofs and the random sampling of block headers to the client device; receiving, by the client device, the random sampling of block headers and the plurality Merkle mountain range proofs from the full node; verifying, by the client device, the random sampling of block headers and the plurality Merkle mountain range proofs; determining that the blockchain maintained by the full node is valid after verifying the random sampling of block headers and the plurality Merkle mountain range proofs; and verifying, by the client device, that the interaction identifier is in a valid block in the blockchain.
|