CPC G06Q 20/401 (2013.01) [G06F 16/2365 (2019.01); G06F 16/2379 (2019.01); G06Q 10/10 (2013.01); G06Q 20/02 (2013.01); G06Q 20/065 (2013.01); G06Q 20/36 (2013.01); H04L 9/0643 (2013.01); G06Q 2220/00 (2013.01); H04L 9/50 (2022.05)] | 20 Claims |
1. A computer-implemented method, comprising:
creating a blockchain transaction that encodes:
a state machine in a first state;
a state transition matrix comprising a set of rules defining a set of permissible state transitions based, at least in part, on a current state of the state machine and one or more inputs, wherein the state machine includes the state transition matrix, and wherein the first state corresponds to the current state; and
a set of script elements to be executed to cause an unlocking transaction to:
encode the state transition matrix; and
comply with a restriction on an input to the unlocking transaction or comply with a restriction on an output of the unlocking transaction, wherein the restriction on the input states a set of conditions for advancing the state machine, and wherein the restriction on the output requires:
a first output of the unlocking transaction to indicate a state corresponding to the first output in compliance with the set of permissible state transitions; and
a second output of the unlocking transaction to indicate a state corresponding to the second output in compliance with the set of permissible state transitions; and
causing the state machine to transition from the current state to a next state in the state transition matrix as a result of the blockchain transaction being validated by a node in a blockchain network and based on compliance with the restriction on the input or the output of the unlocking transaction.
|