Data processing using proof-of-transfer
AssigneeHiro Systems PBC
InventorsAaron Blankstein, Muneeb Ali, Michael J. Freedman, Diwaker Gupta, Jude Nelson, Jesse Soslow, Patrick Stanley
Life of this patent
Estimating the term…
Abstract
An improved blockchain implementation that uses proof-of-transfer to overcome the technical deficiencies of proof of work and proof-of-stake implementations is described herein. For example, the proof-of-transfer process may include elements of a single-leader election sortition, but modified to cause base chain cryptocurrency committed for the purposes of the sortition to be transferred to a burn address or at least one reward address.
Claims20
A computing device of a decentralized network for selecting a first miner device of one or more miner devices to create a new block, the computing device comprising:
- a network interface configured to couple the computing device to the decentralized network, wherein the decentralized network comprises a base chain and a virtual chain, and wherein blocks in the virtual chain are anchored to blocks in the base chain;
- a hardware processor;
- and
- a non-transitory computer readable storage medium storing program instructions for execution by the hardware processor in order to cause the computing device to:
- store data that indicates creation of a first block in the virtual chain;
- in a prepare phase corresponding to a first set of blocks on the base chain:
- identify the first block as an anchor block in a virtual chain;
- during a reward phase corresponding to a second set of blocks on the base chain, wherein the second set of blocks are created after the first set of blocks:
- (i) determine a set of reward addresses to receive at least some cryptocurrency in a plurality of cryptocurrency associated with the base chain, wherein the set of reward addresses are utilized in a consensus algorithm;
- (ii) determine that the first miner device submitted a block commit transaction that references a second block in the virtual chain that descends from the anchor block;
- (iii) store data indicating that first cryptocurrency in the plurality of cryptocurrency associated with the base chain is transferred from an address of the first miner device to at least one reward address in the set of reward addresses in response to the determination;
- and
- (iv) perform a single-leader sortition that results in a selection of the first miner device to create the new block in the virtual chain based at least in part on the block commit transaction.
A computer-implemented method for selecting a first miner device of one or more miner devices to create a new block, the computer-implemented method comprising:
- under control of a computing device in a decentralized network, wherein the decentralized network comprises a base chain and a virtual chain, and wherein blocks in the virtual chain are anchored to blocks in the base chain,
- storing data that indicates creation of a first block in the virtual chain;
- in a prepare phase corresponding to a first set of blocks on the base chain;
- identifying the first block as an anchor block in a virtual chain;
- during a reward phase corresponding to a second set of blocks on the base chain, wherein the second set of blocks are created after the first set of blocks:
- (i) determining a set of reward addresses to receive at least some cryptocurrency in a plurality of cryptocurrency associated with the base chain, wherein the set of reward addresses are utilized in a consensus algorithm;
- (ii) determining that the first miner device submitted a block commit transaction that references a second block in the virtual chain that descends from the anchor block;
- (iii) storing data indicating that first cryptocurrency in the plurality of cryptocurrency associated with the base chain is transferred from an address of the first miner device to at least one reward address in the set of reward addresses in response to the determination;
- and
- (iv) performing a single-leader sortition that results in a selection of the first miner device to create the new block in the virtual chain based at least in part on the block commit transaction.
Non-transitory, computer-readable storage media comprising computer-executable instructions for implementing proof-of-transfer in a decentralized network, wherein the decentralized network comprises a base chain and a virtual chain, wherein blocks in the virtual chain are anchored to blocks in the base chain, and wherein the computer-executable instructions, when executed by a computer system, cause the computer system to:
- store data that indicates creation of a first block in the virtual chain;
- in a prepare phase corresponding to a first set of blocks on the base chain:
- identify the first block as an anchor block in a virtual chain;
- during a reward phase corresponding to a second set of blocks on the base chain, wherein the second set of blocks are created after the first set of blocks:
- (i) determine a set of reward addresses to receive at least some cryptocurrency in a plurality of cryptocurrency associated with the base chain, wherein the set of reward addresses are utilized in a consensus algorithm;
- (ii) determine that a first miner device of one or more miner devices submitted a block commit transaction that references a second block in the virtual chain that descends from the anchor block;
- (iii) store data indicating that first cryptocurrency in the plurality of cryptocurrency associated with the base chain is transferred from an address of the first miner device to at least one reward address in the set of reward addresses in response to the determination;
- and
- (iv) perform a single-leader sortition that results in a selection of the first miner device to create a new block in the virtual chain.
Dependencies are inferred from the claim text.