IP Library Granted Patent US 11,240,032
Granted Patent B2
US 11,240,032 · App. 16/626,298 · Granted Feb 1, 2022

System and method for hierarchical token distribution on blockchain network

Inventor: Daniel Joseph (London, GB)
Assignee: NCHAIN HOLDINGS LTD
H04L9/3213H04L9/085H04L9/088H04L9/3215H04L2209/38
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,240,032
App. No.
16/626,298
Granted
Feb 1, 2022
Kind
B2
Abstract

A method to participate in a blockchain-implemented token distribution process is disclosed. The token distribution process divides an initial quantity of tokens at an input address associated with an input node into a plurality of sub-quantities and distributes the sub-quantities to multiple output addresses associated with respective output nodes using a blockchain. The token distribution process is implemented collectively by the input node, the output nodes, and a plurality of mixer nodes. The method, which may be implemented at a mixer node (Uij), includes: identifying an upstream node (Ui) and a plurality of downstream nodes (Uijk) associated with the mixer node; collaborating with the upstream node to generate a first commitment channel (Ui→Uij) for a first transaction between the upstream node and the mixer node; and for each of the plurality of downstream nodes: collaborating with the downstream node to generate a second commitment channel (Uij→Uijk) for a second transaction between the mixer node and the downstream node, wherein an unlocking script for the first transaction is derived from an unlocking script for any one of the second transactions.

Claims (28)

1. A computer-implemented method to participate in a token distribution process for dividing a quantity of tokens at an input address associated with an input node into a plurality of sub-quantities and distributing the sub-quantities to multiple output addresses associated with respective output nodes using a blockchain, the method comprising:

identifying an upstream node (U i ) and a plurality of downstream nodes (U ijk ) associated with a mixer node (U ij );

collaborating with the upstream node to generate a first commitment channel (U i →U ij ) for a first transaction between the upstream node and the mixer node; and

for each of the plurality of downstream nodes:

collaborating with the downstream node to generate a second commitment channel (U ij →U ijk ) for a second transaction between the mixer node and the downstream node,

wherein an unlocking script for the first transaction is derived from an unlocking script for any one of the second transactions.

2. The method of claim 1 , wherein generating the second commitment channel comprises:

collaborating with the downstream node to:

generate a first blockchain transaction (T c ) for committing a quantity of tokens (x i ) to transfer to the downstream node;

generate a second blockchain transaction (T r,0 ) that returns a committed quantity of tokens (x i ) to the mixer node; and

generate a third blockchain transaction (T t ) for executing transfer of the committed quantity of tokens (x i ) to the downstream node.

3. The method of claim 2 , wherein the committed quantity of tokens (x i ) is determined based on a value allocation scheme for the mixer node which identifies a respective quantity to transfer to each of the plurality of downstream nodes.

4. The method of claim 2 , wherein the third blockchain transaction (T t ) includes an unlocking script containing a second secret value (sv ijk ) associated with the second commitment channel.

5. The method of claim 4 , further comprising obtaining the second secret value (sv ijk ) associated with the second commitment channel.

6. The method of claim 5 , further comprising deriving a first secret value (sv ij ) associated with the first commitment channel using the second secret value (sv ijk ).

7. The method of claim 6 , wherein the first secret value (sv ij ) is based on a secret key value ( ) associated with the input node, the secret key value (k s ) being unknown to all mixer nodes.

8. The method of claim 1 , further comprising transmitting a mixer key value (k ij ) to the upstream node and to the input node.

9. The method of claim 1 , wherein the mixer node includes a first address at which the mixer node detects transfer of a first quantity of tokens from the upstream node and a plurality of second addresses from which the mixer node transfers sub-quantities of the first quantity to the downstream nodes.

10. The method of claim 9 , wherein a total quantity of tokens at the plurality of second addresses is at least equal to the first quantity.

11. The method of claim 2 , wherein the second blockchain transaction (T r,0 ) includes a transaction parameter (nLockTime) specifying a point in time after which the second blockchain transaction becomes eligible for submission to the blockchain.

12. The method of claim 2 , wherein the first blockchain transaction (T c ) is submitted to the blockchain after the second blockchain transaction (T r,0 ) is signed by the downstream node.

13. The method of claim 1 , wherein the first commitment channel is generated before any second commitment channel is generated.

14. A computing device to participate in a token distribution process including an input node, multiple output nodes, and a plurality of mixer nodes, the computing device comprising:

a processor;

memory;

a network interface to provide network connectivity; and

a blockchain application containing computer-executable instructions that, when executed by the processor, cause the processor to carry out the method claimed in claim 1 .

15. A non-transitory processor-readable medium storing processor-executable instructions to participate in a token distribution process including an input node, multiple output nodes, and a plurality of mixer nodes, wherein the processor-executable instructions, when executed by a processor in one of the nodes, cause the processor to carry out the method claimed in claim 1 .

Assignments (2)
CHANGE OF NAME Recorded Apr 9, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063280/0114 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2019
From: JOSEPH, DANIEL
To: NCHAIN HOLDINGS LTD
Reel/Frame 051360/0669 →
Priority Claims (1)
GB 1710283 · Jun 28, 2017 · national
Continuity (1)
Related Publication 20210152358A1 · May 20, 2021