IP Library Granted Patent US 12,278,900
Granted Patent B2
US 12,278,900 · App. 18/381,998 · Granted Apr 15, 2025

Computer-implemented methods and systems for controlling tasks implemented by a cyclically-ordered set of nodes participating in a blockchain network

Inventors: Daniel Joseph (London, GB); Silvia Bartolucci (London, GB); Pauline Bernat (London, GB)
Assignee: NCHAIN LICENSING AG
H04L9/30H04L9/0643H04L9/50
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,278,900
App. No.
18/381,998
Granted
Apr 15, 2025
Kind
B2
Abstract

A method of controlling and coordinating of processing steps in a distributed system is disclosed. The method may be implemented by a node in a cyclically ordered set of nodes in a blockchain network. The method includes receiving, from an immediately subsequent node, values corresponding to combinations of possible outcomes of processing steps associated with nodes from that node to a node preceding a supervisor node. The values are based on public keys associated with the nodes corresponding to possible outputs and the supervisor's public key. State values are generated based on the values and public keys corresponding to the possible outcomes further to a processing step of the node shared with the supervisor and a previous node. A blockchain transaction is prepared to transmit control of a resource from the node to the subsequent node upon supply of unlocking values corresponding to the received values.

Claims (26)

1. A computer-implemented method for distributed control comprising:

selecting a supervisor node from a plurality of nodes in a cyclically-ordered set of nodes participating in a blockchain network, the supervisor node being associated with a party providing resources to be allocated, wherein each of the nodes from the plurality of nodes in the cyclically ordered set of nodes performs an operation or participates in a protocol to be selected as the supervisor node;

receiving, by a particular node in the cyclically-ordered set of nodes participating in the blockchain network, from a node immediately subsequent to the particular node, values corresponding to combinations of possible outcomes of processing steps associated with nodes from the immediately subsequent node through to a node immediately preceding the supervisor node, wherein the values are based on public keys associated with the nodes, each corresponding to possible outcomes of a processing step associated with that node, and on a public key of the supervisor node;

generating, by the particular node, state values based on the received values and on public keys corresponding to possible outcomes of a processing step associated with the particular node;

creating, by the particular node, a payment channel between the particular node and the immediately subsequent node, the payment channel being locked with cryptographic values corresponding to the state values; and

preparing, by the particular node using the state values, a blockchain transaction arranged to transmit control of a resource through the payment channel from a source address associated with the particular node to a receiving address of the immediately subsequent node responsive to satisfaction of an execution condition including supply of any one of a plurality of unlocking values corresponding to the received values.

2. The computer-implemented method of claim 1 , wherein the supervisor node acts as an initiator and coordinator of the computer-implemented method.

3. The computer-implemented method of claim 1 , wherein the supervisor node is selected by a central authority.

4. The computer-implemented method of claim 1 , wherein the nodes correspond to modules associated with a system and wherein the possible outcomes of a processing step associated with a given node correspond to outputs of an associated module of a control system of the system.

5. The computer-implemented method of claim 1 , wherein each of the received values is determined by combining a public key associated with the supervisor node with ones of the public keys corresponding to a respective one of the combinations of possible outcomes of processing steps associated with nodes from the immediately subsequent node through to the node immediately preceding the supervisor node.

6. The computer-implemented method of claim 5 , wherein a given one of the received values is determined by summing the public key associated with the supervisor node and the ones of the public keys corresponding to the possible outcomes of the respective one of the combinations of possible outcomes.

7. The computer-implemented method of claim 1 , wherein the state values are formed by combining the received values and the public keys corresponding to possible outcomes of a processing step associated with the particular node.

8. The computer-implemented method of claim 7 , wherein each of the state values is formed by summing one of the received values and one of the public keys corresponding to possible outcomes of processing step associated with the particular nodes.

9. The computer-implemented method of claim 1 , further comprising:

waiting for the blockchain transaction to execute and obtaining, from the blockchain transaction, a first unlocking value used to unlock the blockchain transaction, the first unlocking value indicating outputs of processing steps associated with nodes from the immediately subsequent node through to the node immediately preceding the supervisor node and based on private keys corresponding to ones of the public keys associated with those nodes and corresponding to the outputs;

identifying one of possible outcomes of the processing step associated with the particular node;

determining, by the particular node, a second unlocking value based on a private key that corresponds to the public key corresponding to the identified outcome and the second unlocking value, the second unlocking value corresponding to one of the state values and indicating outputs of processing steps associated with nodes from the particular node through to the node immediately preceding the supervisor node; and

using the second unlocking value, executing another blockchain transaction.

10. The computer-implemented method of claim 9 , wherein the another blockchain transaction is prepared by the immediately previous node and arranged to transmit control of an additional resource from a source address associated with the immediately previous node to a receiving address of the particular node responsive to satisfaction of a second execution condition including supply of any one of a second plurality of unlocking values corresponding to one of the state values and wherein the blockchain transaction arranged to transmit control of the resource from the source address associated with the particular node to the receiving address of the immediately subsequent node is prepared after preparation of the another blockchain transaction.

11. The computer-implemented method of claim 10 , wherein each of the unlocking values of the second plurality of unlocking values corresponds to a respective one of the state values and is based on private keys corresponding to the public keys upon which that state value is based.

12. The computer-implemented method of claim 9 , wherein the second unlocking value is a sum of the private keys corresponding to the outputs of processing steps associated with nodes from the immediately subsequent node through to the node immediately preceding the supervisor node and a private key corresponding to the public key associated with the supervisor node.

13. The computer-implemented method of claim 9 , wherein the second unlocking value is a sum of the private keys corresponding to the outputs of processing steps associated with nodes from the particular node through to the node immediately preceding the supervisor node and a private key corresponding to the public key associated with the supervisor node.

14. The computer-implemented method of claim 9 , wherein the resource and the an additional resource are identical.

15. The computer-implemented method of claim 1 , wherein each public key and its corresponding private key form an elliptical curve cryptography public private key pair.

16. A computer implemented system for carrying out the computer-implemented method according to claim 1 .

17. A non-transitory computer-readable storage medium storing instructions for adapting a computer-implemented system to perform a method according to claim 1 .

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2023
From: JOSEPH, DANIEL; BARTOLUCCI, SILVIA; BERNAT, PAULINE
To: NCHAIN HOLDINGS LTD
Reel/Frame 065285/0798 →
CHANGE OF NAME Recorded Oct 19, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 065291/0476 →
Priority Claims (1)
GB 1806448 · Apr 20, 2018 · national
Continuity (2)
Continuation 17048983
Related Publication 20240163098A1 · May 16, 2024
References Cited (35)
US 20170324711A1 · Feeney et al. · 2017 [cited by applicant]
US 20180018723A1 · Nagla et al. · 2018 [cited by applicant]
US 20180109541A1 · Gleichauf · 2018 [cited by applicant]
US 20190013933A1 · Mercuri · 2019 [cited by examiner]
US 20190251295A1 · Vieyra · 2019 [cited by examiner]
EP 3257191A1 · 2017 [cited by applicant]
KR 20180030118A · 2018 [cited by applicant]
KR 20190124107A · 2019 [cited by examiner]
WO 2017145008A1 · 2017 [cited by applicant]
WO 2017145048A1 · 2017 [cited by applicant]
WO 2017187395A1 · 2017 [cited by applicant]
WO 2018007828A2 · 2018 [cited by applicant]
WO 2018193341A1 · 2018 [cited by applicant]
WO 2018234991A1 · 2018 [cited by applicant]
Antonopoulos, “Mastering Bitcoin—Unlocking Digital Cryptocurrencies,” O'Reilly Media, Inc., Dec. 20, 2014, 282 pages. [cited by applicant]
Bashir, “Mastering Bitcoin: Distributed Ledgers, Decentralization and Smart Contracts Explained,” Packt Publishing, ISBN 978-1-78712-544-5, Mar. 2017, 532 pages. [cited by applicant]
Bentov et al., “How to Use Bitcoin to Design Fair Protocols,” Annual Cryptology Conference, 2014, 38 pages. [cited by applicant]
Burchert et al., “Scalable Funding of Bitcoin Micropayment Channel Networks,” Royal Society Open Science, Aug. 29, 2018, 18 pages. [cited by applicant]
Franco, “Understanding Bitcoin: Cryptography, Engineering, and Economics,” Wiley ISBN: 9781119019169, 238 pages. [cited by applicant]
Green et al., “Bolt: Anonymous Payment Channels for Decentralized Currencies,” CCS'17, Oct. 30-Nov. 3, 2017, 17 pages. [cited by applicant]
International Search Report and Written Opinion mailed May 31, 2019, Patent Application No. PCT/IB2019/052946, 12 pages. [cited by applicant]
Kumaresan et al., “How to Use Bitcoin to Incentivize Correct Computations,” retrieved from https://people.csail.mit.edu/ranjit/papers/incentives.pdf, Nov. 2014, 12 pages. [cited by applicant]
Lombrozo, “Dynamic Hierarchical Deterministic Key Trees,” https://github.com/bitcoin/bips/blob/master/bip-0083.mediawiki, Nov. 16, 2015, 3 pages. [cited by applicant]
Malavolta et al., “Anonymous Multi-Hop Locks for Blockchain Scalability and Interoperability,” NDSS Symposium, 2018, 30 pages. [cited by applicant]
Malavolta et al., “Concurrency and Privacy with Payment-Channel Networks,” 2017 ACM SIGSAC Conference, Oct. 2017, 27 pages. [cited by applicant]
Malavolta et al., “Privacy-preserving Multi-hop Locks for Blockchain Scalability and Interoperability,” Oct. 23, 2018, 29 pages. [cited by applicant]
Mukhamedov et al., “Analysis of a Multi-Party Fair Exchange Protocol and Formal Proof of Correctness in the Strand Space Model,” International Conference on Financial Cryptography and Data Security, Feb. 28, 2005, 15 pa… [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]
Oconnor et al., “Enhancing Bitcoin Transactions with Covenants,” Lecture Notes in Computer Science, Nov. 19, 2017. [cited by applicant]
Raval, “Decentralized Applications,” O'Reilly, ISBN: 978-1-491-92454-9, Jul. 13, 2016, 118 pages. [cited by applicant]
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]
UK Commercial Search Report mailed Nov. 9, 2018, Patent Application No. GB1806448.5, 7 pages. [cited by applicant]
UK IPO Search Report mailed Oct. 17, 2018, Patent Application No. GB1806448.5, 7 pages. [cited by applicant]
Wilkinson, “Introduction to Micropayment Channels,” http://super3.org/author/shawn/, Apr. 13, 2016, 4 pages. [cited by applicant]
Sergey Zhdanov PJSC Rostelecom Russian Federation: “Updated version of ITU-TY. IoT-ITS-framework”, Framework of cooperative Intelligent Transport Systems based on the Internet of Things, output of the Feb. 2020 Geneva e… [cited by applicant]