IP Library Granted Patent US 12,493,874
Granted Patent B2
US 12,493,874 · App. 17/417,064 · Granted Dec 9, 2025

Computer-implemented systems and methods for controlling or enforcing performance of transfers conducted over a blockchain

Inventor: Craig Steven Wright (London, GB)
Assignee: NCHAIN LICENSING AG
G06Q20/3827G06Q20/02G06Q20/065G06Q20/3823G06Q20/405
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 12,493,874
App. No.
17/417,064
Granted
Dec 9, 2025
Kind
B2
Abstract

The invention provides methods and systems by which an agreed set of conditions governing transfers on a blockchain (e.g. the Bitcoin blockchain) can be generated and enforced. Advantageously, the conditions can be used to specify and influence the behaviour of another party who will be receiving the asset, by enforcing their fulfilment of an agreed set of rules. In one embodiment, a computer-implemented method comprises the step of providing, to a recipient, a representation of at least one rule (r) relating to a transfer to be conducted over a blockchain network. It also comprises the step of receiving, from a sender: a redeem script (R) which comprises the representation (r); and a script address comprising a hash (HR) of the redeem script (R). It also comprises the step of generating a hash (H) of the redeem script (R) and comparing it with the script address. If the hash (H) matches the script address, the sender can use the script address in a locking script associated with an output of a blockchain transaction (TX 0 ) safe in the knowledge that the rules (r) will be enforced in order to unlock the asset.

Claims (44)

1 . A computer-implemented method comprising the steps:

agreeing, between a first party and a second party, at least one rule (r) relating to a condition of at least two subsequent transfers to be performed after an initial transfer to be conducted over a blockchain network;

generating, by the first party, a representation of the at least one rule (r);

generating, by the second party, a redeem script (R) which comprises the representation of the at least one rule (r);

generating, by the second party, a script address comprising a hash (HR) of the redeem script (R);

comparing, by the first party, a hash (H) of the redeem script (R) with the script address;

using, by the first party, the script address in a locking script associated with an output of a blockchain transaction (TX) when the hash (H) matches the script address, wherein the initial transfer is the blockchain transaction (TX 0 );

generating, by the second party, a first one of the at least two subsequent transfers comprising a further blockchain transaction (TX 1 ), the further blockchain transaction (TX 1 ) comprising an unlocking script arranged to use the script address to unlock the locking script of the blockchain transaction (TX 0 ); and

wherein the further blockchain transaction (TX 1 ) comprises a further output locked using the at least one rule (r), such that the at least one rule (r) is applied to a second one of the at least two subsequent transfers.

2 . The method according to claim 1 , wherein the blockchain transaction (TX 0 ), and/or the further blockchain transaction (TX 1 ), is a Pay-to-Script-Hash (P2SH) transaction type in Bitcoin protocol.

3 . The method according to claim 1 , wherein the representation of the at least one rule (r) is a blockchain script or a portion of code written in a blockchain scripting language, a text file, a smart contract, an image, a reference to or identifier of a location where the at least one rule can be accessed.

4 . The method according to claim 1 , wherein:

the at least one rule relates to how or to whom a subsequent transfer may be made over the blockchain network.

5 . The method according to claim 1 , wherein the representation of the at least one rule (r) of the at least one rule is provided to a recipient as a part of an incomplete blockchain transaction or provided as a snippet of blockchain scripting code.

6 . The method according to claim 1 , wherein the script address is provided as part of a blockchain transaction.

7 . The method according to claim 1 , and further comprising the step of submitting, by the second party, the further blockchain transaction (TX 1 ) to the blockchain network.

8 . The method according to claim 1 , wherein the at least one rule specifies a cryptographic signature that must be provided in order to unlock an asset on the blockchain.

9 . A computer-implemented system comprising:

a processor; and

memory including executable instructions that, as a result of execution by the processor, cause the system to perform any embodiment of the computer-implemented method comprising the steps:

agreeing, between a first party and a second party, at least one rule (r) relating to a condition of at least two subsequent transfers to be performed after an initial transfer to be conducted over a blockchain network;

generating, by the first party, a representation of the at least one rule (r);

generating, by the second party, a redeem script (R) which comprises the representation of the at least one rule (r);

generating, by the second party, a script address comprising a hash (HR) of the redeem script (R);

comparing, by the first party, a hash (H) of the redeem script (R) with the script address;

using, by the first party, the script address in a locking script associated with an output of a blockchain transaction (TX) when the hash (H) matches the script address, wherein the initial transfer is the blockchain transaction (TX 0 );

generating, by the second party, a first one of the at least two subsequent transfers comprising a further blockchain transaction (TX 1 ), the further blockchain transaction (TX 1 ) comprising an unlocking script arranged to use the script address to unlock the locking script of the blockchain transaction (TX 0 ); and

wherein the further blockchain transaction (TX 1 ) comprises a further output locked using the at least one rule (r), such that the at least one rule (r) is applied to a second one of the at least two subsequent transfers.

10 . The system according to claim 9 , wherein the blockchain transaction (TX 0 ), and/or the further blockchain transaction (TX 1 ), is a Pay-to-Script-Hash (P2SH) transaction type in Bitcoin protocol.

11 . The system according to claim 9 , wherein the representation of the at least one rule (r) is a blockchain script or a portion of code written in a blockchain scripting language, a text file, a smart contract, an image, a reference to or identifier of a location where the at least one rule can be accessed.

12 . The system according to claim 9 , wherein:

the at least one rule relates to how or to whom a subsequent transfer may be made over the blockchain network.

13 . The system according to claim 9 , wherein the representation of the at least one rule (r) is provided to a recipient as a part of an incomplete blockchain transaction or provided as a snippet of blockchain scripting code.

14 . The system according to claim 9 , wherein the script address is provided as part of a blockchain transaction.

15 . The system according to claim 9 , and further comprising the step of submitting, by the second party, the further blockchain transaction (Tx 1 ) to the blockchain network.

16 . The system according to claim 9 , wherein the at least one rule specifies a cryptographic signature that must be provided in order to unlock an asset on the blockchain.

17 . A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by a processor of a computer system, cause the computer system to at least perform a method comprising the steps:

agreeing, between a first party and a second party, at least one rule (r) relating to a condition of a subsequent transfer to be performed after an initial transfer to be conducted over a blockchain network;

generating, by the first party, a representation of the at least one rule (r);

generating, by the second party, a redeem script (R) which comprises the representation of the at least one rule (r);

generating, by the second party, a script address comprising a hash (HR) of the redeem script (R);comparing a hash (H) of the redeem script (R) with the script address;

using, by the first party, the script address in a locking script associated with an output of a blockchain transaction (TX 0 ) when the hash (H) matches the script address, wherein the initial transfer is the blockchain transaction (TX 0 ); and

generating, by the second party, a first one of the at least two subsequent transfers comprising a further blockchain transaction (TX 1 ), the further blockchain transaction (TX 1 ) comprising an unlocking script arranged to use the script address to unlock the locking script of the blockchain transaction (TX 0 ); and

wherein the further blockchain transaction (TX 1 ) comprises a further output locked using the at least one rule (r), such that the at least one rule (r) is applied to a second one of the at least two subsequent transfers.

Assignments (3)
CHANGE OF NAME Recorded Feb 3, 2025
From: NCHAIN HOLDINGS AG
To: NCHAIN LICENSING AG
Reel/Frame 070096/0502 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2023
From: WRIGHT, CRAIG STEVEN
To: NCHAIN HOLDINGS LTD
Reel/Frame 063781/0906 →
CHANGE OF NAME Recorded Apr 17, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063351/0130 →
Priority Claims (1)
GB 1820947 · Dec 21, 2018 · national
Continuity (1)
Related Publication 20220051236A1 · Feb 17, 2022
References Cited (33)
US 10050779B2 · Alness et al. · 2018 [cited by applicant]
US 20150269539A1 · MacGregor · 2015 [cited by examiner]
US 20170228727A1 · Forzley · 2017 [cited by examiner]
US 20180240107A1 · Andrade · 2018 [cited by examiner]
US 20180247191A1 · Katz · 2018 [cited by examiner]
US 20190220859A1 · Weight · 2019 [cited by examiner]
US 20190296903A1 · Ramesh · 2019 [cited by examiner]
US 20190356481A1 · Spector · 2019 [cited by examiner]
US 20200136815A1 · Trevethan · 2020 [cited by examiner]
US 20200193432A1 · Millar · 2020 [cited by examiner]
AU 2017222470A1 · 2018 [cited by applicant]
CN 108399533A · 2018 [cited by applicant]
TW 201732705A · 2017 [cited by applicant]
WO 2017178956A1 · 2017 [cited by applicant]
S. Bistarelli, I. Mercanti and F. Santini, “An Analysis of Non-standard Bitcoin Transactions,” 2018 Crypto Valley Conference on Blockchain Technology (CVCBT), Zug, Switzerland, 2018, pp. 93-96, doi: 10.1109/CVCBT.2018.0… [cited by examiner]
Andrychowicz et al., ““Modeling Bitcoin Contracts by Timed Automata,”” arXiv:1405.1861 [cs.CR], 2014 (Year: 2014). [cited by examiner]
D. A. Wijaya, “Extending asset management system functionality in bitcoin platform,” 2016 International Conference on Computer, Control, Informatics and its Applications (IC3INA), Tangerang, Indonesia, 2016, pp. 97-101,… [cited by examiner]
Andresen, “bip-0016.mediawiki,” retrieved from https://web.archive.org/web/20181114021954/https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki, 2018, retrieved on Nov. 18, 2018 (Year: 2018). [cited by examiner]
Blum et al., “The Complexity of Human Computation: A Concrete Model with an Application to Passwords,” Archiv.org, 2017, retrieved from https://arxiv.org/abs/1707.01204 (Year: 2017). [cited by examiner]
Franco, “Understanding Bitcoin: Cryptography, Engineering and Economics,” O'Reilly, Chapter 6 Transactions, 2014, ISBN: 978-1-119-01916-9 (Year: 2014). [cited by examiner]
I. Gerhardt, T. Hanke, “Homomorphic Payment Addresses and the Pay-to-Contract Protocol,” arXiv:1212.3257, 2012, retrieved from https://doi.org/10.48550/arXiv.1212.3257 (Year: 2012). [cited by examiner]
Pour, “Bitcoin multisig the hard way: Understanding raw P2SH multisig transactions”, 2014, retrieved on Oct. 27, 2015 from https://www.soroushjp.com/2014/12/20/bitcoin-multisig-the-hard-way-understanding-raw-multisignat… [cited by examiner]
“Heilman et al., ““TumbleBit: An Untrusted Bitcoin-Compatible Anonymous Payment Hub,”” NDSS Symposium, 2017, DOI:10.14722/ndss.2017.23086” (Year: 2017). [cited by examiner]
Antonopolous, “Mastering Bitcoin,” 2nd Edition, 2017, O'Reilly Media, Inc. (Year: 2017). [cited by examiner]
Satoshi et al., “Connection Limits,” Bitcoin Forum, Aug. 9, 2010, https://bitcointalk.org/index.php?topic=741.0; prev_next=prev, 2 pages. [cited by applicant]
Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System,” Bitcoin, Oct. 31, 2008, https://bitcoin.org/bitcoin.pdf, 9 pages. [cited by applicant]
Antonopoulos, “Mastering Bitcoin—Unlocking Digital Cryptocurrencies,” O'Reilly Media, Inc., Dec. 20, 2014, 282 pages. [cited by applicant]
Anonymous, “Contract—Bitcoin Wiki”, Oct. 22, 2015, https://en.bitcoin.it/w/index.php?title=Contract&olid=59172, 12 pages. [cited by applicant]
Anonymous: “Pay to Script Has—Bitcoin Wiki”, Jan. 29, 2016, https://en.bitcoin.it/wiki/Pay_to_script hash, 1 page. [cited by applicant]
International Search Report and Written Opinion mailed Mar. 24, 2020, Patent Application No. PCT/IB2019/060897, 12 pages. [cited by applicant]
UK IPO Search Report mailed Jun. 5, 2019, Patent Application No. GB1820947.8, 9 pages. [cited by applicant]
Wright, C. and Serguieva, A. “Sustainable Blockchain” Enabled Services: Smart Contracts, 2017 IEEE International Conference on Big Data, 2017, pp. 4255-4264. [cited by applicant]
Taiwan Patent Office, “Search Report” in Application No. 108146704, Mar. 20, 2024, 2 pages. [cited by applicant]