IP Library Granted Patent US 11,341,484
Granted Patent B2
US 11,341,484 · App. 16/097,218 · Granted May 24, 2022

Implementing logic gate functionality using a blockchain

Inventors: Craig Steven Wright (London, GB); Stephane Savanah (London, GB)
Assignee: nChain Holdings Ltd.
G06Q20/3678G06F9/22G06F9/30021G06F9/30029G06F21/602G06F21/6218G06Q20/3827G06Q20/3829H04L9/0637H04L9/0643H04L9/3066H04L9/321H04L9/3239H04L9/3242H04L9/3252G06F21/6236H04L2209/38H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,341,484
App. No.
16/097,218
Granted
May 24, 2022
Kind
B2
Abstract

The invention presents a solution in which blockchain Transactions are created to implement the functionality of a logic gate. The invention may be implemented on the Bitcoin platform or an alternative blockchain platform. The transaction includes a locking script which comprises instructions selected so as to implement the functionality of a logic gate such as OR, AND, XOR, NOT and so on. In some examples, the instructions may be provided in a hashed form. When the script is executed (because a second transaction is attempting to spend the output associated with the locking script) the inputs will be processed by the conditional instructions to provide an output of TRUE or FALSE. The second transaction is transmitted to the blockchain network for validation and, if determined to be valid, it will be written to the blockchain. Validation of the second transaction can be interpreted as a TRUE output. Thus, the locking script of the first transaction provides the functionality of the desired logic gate. The invention provides numerous advantages and can be used in a wide variety of applications, such as for the implementation of control systems and processes.

Claims (36)

1. A computer-implemented control method comprising the steps of:

providing a locking script in a first blockchain transaction, the locking script comprising at least one instruction arranged to process at least one Boolean input;

providing a further blockchain transaction having an unlocking script;

processing, using an off-block computing resource, at least one input signal to provide at least one Boolean input; and

using the at least one Boolean input to execute the locking and unlocking scripts of the first and further blockchain transactions, wherein the method further comprises monitoring or searching the blockchain or blockchain network to determine the presence or absence of the further transaction and providing a computing resource arranged to influence the behaviour of a device of an off-block device or process based upon detection of the further transaction within the blockchain or blockchain network.

2. A method according to claim 1 wherein the step of processing of the at least one input signal to provide the at least one Boolean input is performed:

i) by the unlocking script of the further blockchain transaction; or

ii) by at least one computing resource or agent.

3. A method according to claim 1 and comprising the step of:

transmitting the further transaction and/or first transaction to a blockchain network for validation.

4. A method according to claim 3 and comprising the steps of:

providing a computing resource arranged to influence the behaviour of a device or process based upon:

the validity of the further transaction.

5. A method according to claim 3 and comprising the steps of:

interpreting the detecting of the further transaction within the blockchain or blockchain network as the TRUE output of a logic gate.

6. A method according to claim 1 wherein validation of the further transaction within a blockchain network is dependent upon the execution of the unlocking script.

7. A method according to claim 1 and comprising the step of:

controlling a device or process based upon the validity of the further transaction, wherein the validity is determined or established by a computer-based control agent, or by monitoring the blockchain network to determine if it has been validated by a network node, and/or by monitoring the state of the blockchain to determine whether the transaction has been written to the blockchain.

8. A method according to claim 1 wherein the at least one instruction in the locking script is arranged to implement the truth table of a logic gate.

9. A method according to claim 8 wherein the gate is an OR gate, an XOR gate, a NAND gate, a NOR gate, a NOT gate, an XNOR gate, an IMPLY gate, or a Converse implication gate.

10. A method according to claim 8 wherein the logic gate is an AND gate.

11. A method according to claim 1 wherein the at least one input comprises a numeric value, a constant value, a result of a hash function, a cryptographic key, a blockchain puzzle, and/or a Bitcoin other blockchain-related address.

12. A method according to claim 1 wherein the first and/or further transaction is generated and/or transmitted to a blockchain network by an automated process executing on a computing-based resource.

13. A method according to claim 1 wherein the at least one instruction:

comprises a Boolean condition or operator; and/or

is written and/or executed using a stack-based programming language.

14. A computer implemented system arranged to implement the method of claim 1 .

15. A control system comprising hardware configured to control a device using a Boolean calculation or operation implemented on or using a blockchain, the Boolean calculation or operation comprising:

a blockchain transaction comprising:

at least one input; and

at least one instruction selected so as to implement the functionality of a Boolean truth table by processing the at least one input to provide at least one Boolean output, wherein the control system is configured to generate a control input to be provided to the device based on the at least one Boolean output, using the at least one control input to execute locking and unlocking scripts of a blockchain transactions, wherein the system is further configured to monitor or search the blockchain or blockchain network to determine the presence or absence of a further transaction and providing a computing resource arranged to influence the behaviour of an off-block device or process based upon detection of the further transaction within the blockchain or blockchain network.

16. A control system according to claim 15 wherein the truth table is the truth table for an OR gate, XOR gate, NAND gate, NOR gate, a NOT gate, IMPLY, NOT IMPLY or XNOR gate.

17. A control system according to claim 16 wherein the truth table is the truth table for an AND gate.

18. A control system according to claim 15 wherein:

the output is a Boolean value; or

the at least one instruction is provided within a script associated with the transaction, preferably wherein the script is a locking script.

Assignments (4)
CHANGE OF NAME Recorded Apr 16, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063364/0340 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2023
From: WRIGHT, CRAIG STEVEN
To: NCHAIN HOLDINGS LTD.
Reel/Frame 062575/0828 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2023
From: WRIGHT, CRAIG STEVEN
To: NCHAIN LICENSING AG
Reel/Frame 062311/0139 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2022
From: SAVANAH, STEPHANE
To: NCHAIN HOLDINGS LTD
Reel/Frame 059605/0513 →
Priority Claims (20)
GB 1607472 · Apr 29, 2016 · national
GB 1607520 · Apr 29, 2016 · national
GB 1607525 · Apr 29, 2016 · national
GB 1607527 · Apr 29, 2016 · national
GB 1607529 · Apr 29, 2016 · national
GB 1607530 · Apr 29, 2016 · national
GB 1607537 · Apr 29, 2016 · national
GB 1607538 · Apr 29, 2016 · national
GB 1607539 · Apr 29, 2016 · national
GB 1607541 · Apr 29, 2016 · national
GB 1607552 · Apr 29, 2016 · national
GB 1607553 · Apr 29, 2016 · national
GB 1607554 · Apr 29, 2016 · national
GB 1607555 · Apr 29, 2016 · national
GB 1607558 · Apr 29, 2016 · national
GB 1607561 · Apr 29, 2016 · national
GB 1607564 · Apr 29, 2016 · national
GB 1607566 · Apr 29, 2016 · national
GB 1607569 · Apr 29, 2016 · national
GB 1607584 · Apr 29, 2016 · national
Continuity (1)
Related Publication 20190116024A1 · Apr 18, 2019
Cited By (4)
US 12,217,254 US 12,380,433 US 12,511,647 US 12,732,378