IP Library Granted Patent US 11,727,391
Granted Patent B2
US 11,727,391 · App. 16/092,744 · Granted Aug 15, 2023

Computer-implemented methods and systems for validating tokens for blockchain-based cryptocurrencies

Inventors: Craig Steven Wright (London, GB); Stephane Savanah (London, GB)
Assignee: nChain Licensing AG
G06Q20/3672G06F21/30G06F21/645G06Q20/065G06Q20/0658G06Q20/3678G06Q20/389G06Q20/3829G06Q40/00G06Q2220/00
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,727,391
App. No.
16/092,744
Granted
Aug 15, 2023
Kind
B2
Abstract

A computer-implemented method of determining the validity of a token (T) associated with a quantity of cryptocurrency is provided. In some embodiments, the method comprises: a second user (B) receiving, over a communications network, a first transaction comprising a transfer of the token (T) from a first user (A) to the second user (B), querying a peer-to-peer distributed ledger to determine whether an authenticated transaction associated with the token (T) can be identified, wherein the authenticated transaction comprises a previous transaction associated with the token (T) and wherein the token (T) has been authorised and responsive to identifying an authenticated transaction, determining that the token (T) is valid. In some embodiments, the method comprises: a second user: receiving, over a communications network, a first transaction comprising a transfer of the token from a first user to the second user; querying a title registry database to determine if a second transaction comprising a transfer of the token is recorded in the title registry database; and responsive to determining that the second transaction is recorded in the title registry database, determining that the token is valid.

Claims (76)

1. A computer-implemented method of determining validity of a token transfer in a first transaction over a communications network,

wherein the first transaction comprises:

a first redeem script comprising a metadata field including information about a token to be transferred;

a quantity of cryptocurrency associated with the token; and

an indication of the token transfer from a first user device to a second user device, and

wherein the computer-implemented method comprises:

determining, by a processor of the second user device, that the token in an input to the first transaction has not been authorised;

querying, by the processor, in response to the determining that the token has not been authorised, a peer-to-peer distributed ledger to identify an authenticated transaction associated with the token, wherein querying the peer-to-peer distributed ledger comprises:

a) determining a first previous transaction ID indicated in the first transaction;

b) identifying a prior transaction recorded in the peer-to-peer distributed ledger, wherein a transaction ID of the prior transaction corresponds with the first determined previous transaction ID;

c) determining whether a redeem script of the prior transaction has been signed by an authorised signatory;

d) responsive to determining that the redeem script of the prior transaction has been signed by the authorised signatory, identifying the prior transaction as the authorised transaction;

e) responsive to determining that the redeem script of the prior transaction has not been signed by the authorised signatory;

determining a second previous transaction ID indicated in the prior transaction as the determined previous transaction ID; and

identifying a further prior transaction recorded in the peer-to-peer distributed ledger as the prior transaction, wherein a third previous transaction ID of the further prior transaction corresponds with the second previous transaction ID; and

f) iteratively performing steps c) to e) until no further prior transactions are identified;

determining, by the processor, responsive to identifying the authenticated transaction associated with the token, that the token is valid; and

recording, by the processor, responsive to determining that the token transfer is valid, the token transfer.

2. The computer-implemented method of claim 1 , wherein querying the peer-to-peer distributed ledger is in response to determining that the token of the first transaction has not been authorised.

3. The computer-implemented method of claim 2 , wherein determining that the token has not been authorised comprises determining that a redeem script associated with the token and referenced as an input to the first transaction has not been signed by the authorised signatory.

4. The computer-implemented method of claim 1 , wherein the token of the authenticated transaction is signed by the authorised signatory.

5. The computer-implemented method of claim 3 , wherein the authorised signatory comprises at least one of an issuer of the token and a trusted service provider.

6. The computer-implemented method of claim 1 , further comprising, responsive to failing to identify an authenticated transaction in the peer-to-peer distributed ledger, determining that the token is invalid.

7. A computer-implemented method of determining validity of a token, the token represented in a metadata field of a first transaction, the first transaction comprising a quantity of cryptocurrency associated with the token, by a processor of a device associated with a second user, the computer-implemented method comprising:

receiving, over a communications network, the first transaction comprising a transfer of the token from a first user to the second user;

querying a title registry database to determine whether a second transaction comprising another transfer of the token is recorded in the title registry database;

determining that the token is valid, wherein determining that the token is valid comprises:

determining whether the second transaction is recorded in the title registry database;

responsive to determining that the second transaction is not recorded in the title registry database, querying a peer-to-peer distributed ledger to identify an authenticated transaction associated with the token in the peer-to-peer distributed ledger, wherein querying the peer-to-peer distributed ledger comprises:

a) determining a first previous transaction ID indicated in the first transaction;

b) identifying a prior transaction recorded in the peer-to-peer distributed ledger, wherein a transaction ID of the prior transaction corresponds with the first determined previous transaction ID;

c) determining whether a redeem script of the prior transaction has been signed by an authorised signatory;

d) responsive to determining that the redeem script of the prior transaction has been signed by the authorised signatory, identifying the prior transaction as the authorised transaction;

e) responsive to determining that the redeem script of the prior transaction has not been signed by the authorised signatory:

determining a second previous transaction ID indicated in the prior transaction as the determined previous transaction ID; and

identifying a further prior transaction recorded in the peer-to-peer distributed ledger as the prior transaction, wherein a third previous transaction ID of the further prior transaction corresponds with the second previous transaction ID; and

f) iteratively performing steps c) to e) until no further prior transactions are identified,

wherein the authenticated transaction comprises the previous transaction associated with the token, wherein the token has been authorised; and

responsive to determining that the token is valid, recording the first transaction comprising the transfer of the token from the first user to the second user in the title registry database.

8. The computer-implemented method of claim 7 , wherein the second transaction predates the first transaction.

9. The computer-implemented method of claim 7 , wherein querying the title registry database is in response to determining that the token has not been authorised.

10. The computer-implemented method of claim 7 , wherein the title registry database comprises one or more entries relating to transactions comprising a transfer of a token, each entry being associated with one of one or more transaction indicators, and wherein querying the title registry database comprises determining a transaction indicator associated with the token as the indicator in the input of the first transaction; and comparing the transaction indicator with the one or more transaction indicators of the title registry database to identify the second transaction.

11. The computer-implemented method of claim 10 , wherein the transaction indicator is a transaction ID.

12. The computer-implemented method of claim 7 , wherein determining that the token has not been authorised comprises determining that a first redeem script associated with the token and referenced as an input to the first transaction has not been signed by an authorised signatory.

13. The computer-implemented method of claim 12 , wherein the authorised signatory comprises at least one of an issuer of the token and a trusted service provider.

14. The computer-implemented method of claim 7 , further comprising, responsive to determining that the second transaction is not recorded in the title registry database, determining that the token is invalid.

15. A token validation system for determining the validity of a token associated with a quantity of cryptocurrency, the token validation system comprising memory for storing a validation application and a processor, wherein the processor is configured to execute the validation application to:

determine whether a token in an input to a first transaction has been authorised, wherein the first transaction comprises:

a first redeem script comprising a metadata field including information about the token;

the quantity of cryptocurrency associated with the token; and

an indication of a token transfer from a first user device to a second user device;

query, in response to determining that the token has not been authorised, a peer-to-peer distributed ledger to identify an authenticated transaction associated with the token, wherein querying the peer-to-peer distributed ledger comprises:

a) determining a first previous transaction ID indicated in the first transaction;

b) identifying a prior transaction recorded in the peer-to-peer distributed ledger, wherein a transaction ID of the prior transaction corresponds with the first determined previous transaction ID;

c) determining whether a redeem script of the prior transaction has been signed by an authorised signatory;

d) responsive to determining that the redeem script of the prior transaction has been signed by the authorised signatory, identifying the prior transaction as the authorised transaction;

e) responsive to determining that the redeem script of the prior transaction has not been signed by the authorised signatory:

determining a second previous transaction ID indicated in the prior transaction as the determined previous transaction ID; and

identifying a further prior transaction recorded in the peer-to-peer distributed ledger as the prior transaction, wherein a third previous transaction ID of the further prior transaction corresponds with the second previous transaction ID; and

f) iteratively performing steps c) to e) until no further prior transactions are identified;

determine, responsive to identifying the authenticated transaction associated with the token, whether the token is valid; and

record, responsive to determining that the token transfer is valid, the token transfer.

16. A non-transitory machine readable storage medium comprising instructions embodied thereon that, when executed by a processor of a computer system, causes the computer system to at least:

determine whether a first transaction is an authenticated transaction, wherein the first transaction is the authenticated transaction if a token represented in a metadata field of the first transaction has been authorised by an authorised signatory;

receive, over a communications network, the first transaction comprising a transfer of the token from a first user to a second user;

query, response to the first transaction not determined to be an authenticated transaction, a peer-to-peer distributed ledger to determine whether an authenticated transaction associated with the token can be identified in a previous transaction, wherein querying the peer-to-peer distributed ledger comprises:

a) determining a first previous transaction ID indicated in the first transaction;

b) identifying a prior transaction recorded in the peer-to-peer distributed ledger, wherein a transaction ID of the prior transaction corresponds with the first determined previous transaction ID;

c) determining whether a redeem script of the prior transaction has been signed by an authorised signatory;

d) responsive to determining that the redeem script of the prior transaction has been signed by the authorised signatory, identifying the prior transaction as the authorised transaction;

e) responsive to determining that the redeem script of the prior transaction has not been signed by the authorised signatory:

determining a second previous transaction ID indicated in the prior transaction as the determined previous transaction ID; and

identifying a further prior transaction recorded in the peer-to-peer distributed ledger as the prior transaction, wherein a third previous transaction ID of the further prior transaction corresponds with the second previous transaction ID; and

f) iteratively performing steps c) to e) until no further prior transactions are identified;

determine, responsive to identifying the authenticated transaction in the peer-to-peer distributed ledger, that the token is valid; and

record, by the processor, responsive to determining that the token is valid, the first transaction comprising the transfer of the token from the first user to the second user.

Assignments (2)
CHANGE OF NAME Recorded Mar 21, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063141/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2022
From: WRIGHT, CRAIG STEVEN; SAVANAH, STEPHANE
To: NCHAIN HOLDINGS LTD
Reel/Frame 061930/0583 →
Priority Claims (1)
GB 1606065 · Apr 11, 2016 · national
Continuity (1)
Related Publication 20190130391A1 · May 2, 2019