Patent attributes
This invention relates generally to blockchain implementations and is suited for, but not limited to, use with the Bitcoin blockchain. The invention relates to a technical solution for managing a voting, counting, selection and/or decision making process. It can be used for the implementation of automated processes such as device/system control, process control, distributed computing and storage and others. The invention provides an event detecting, monitoring and/or counting mechanism. The event may be, for example, a vote, decision or selection which is made by a given entity. The invention provides a counting solution in which a computing resource, running simultaneously and in parallel to the blockchain, manages a loop-based operation. The computing resource continuously monitors the state of the blockchain as well as any other off-blockchain input data or source. The execution of the loop is influenced by the state of the blockchain. Each iteration of the loop that is executed by the computing resource is recorded in a transaction that is written to the blockchain. It is stored as a hash within the transaction's metadata. If the computing resource finds a transaction which contains a hash relating to the loop it accesses the relevant portion of code. The loop contains a conditional statement which enables the computing resource to decide which action to take. The condition may be dependent upon the state of the blockchain or any other data source. The action can be any type of action, on or off the blockchain. Thus, the combination of the computing resource and blockchain provide a Turing-complete solution.