IP Library Granted Patent US 11,764,947
Granted Patent B2
US 11,764,947 · App. 17/055,460 · Granted Sep 19, 2023

Systems and methods for storage, generation and verification of tokens used to control access to a resource

Inventor: Craig Steven Wright (London, GB)
Assignee: nChain Licensing AG
H04L9/0643H04L9/0618H04L9/0656H04L9/085H04L9/0819H04L9/14H04L9/30H04L9/3213H04L9/3239H04L9/3297H04L9/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 11,764,947
App. No.
17/055,460
Granted
Sep 19, 2023
Kind
B2
Abstract

A computer-implemented access method is provided. The method comprises the steps of: (i) submitting, to a blockchain (such as the Bitcoin blockchain), an access blockchain transaction addressed to a derived public key derived at least in part from a secret value and a public key; (ii) generating a verification public key based at least in part on the secret value and the public key; (iii) comparing the derived public key and the verification public key; and (iv) based on the comparison of step (iii): (a) allocating the at least one of the derived and verification public key as a further public key for verifying a further derived public key; and (b) granting access to a resource associated with at least one of the secret value and the derived public key.

Claims (68)

1. A computer-implemented access method, comprising:

(i) submitting, to a blockchain, an access blockchain transaction addressed to a derived public key derived at least in part from a secret value and a public key;

(ii) generating a verification public key based at least in part on the secret value and the public key;

(iii) comparing the derived public key and the verification public key; and

(iv) based on the comparison of step (iii):

(a) allocating at least one of the derived public key and/or the verification public key as a further public key for verifying a further derived public key; and

(b) granting access to a resource associated with at least one of the secret value and/or the derived public key;

wherein the secret value is a data item of a first one-way function chain of data items, and further comprising:

(v) providing a verification data item of the first one-way function chain;

(vi) applying the first one-way function to the data item;

(vii) comparing output of step (vi) to the verification data item;

(viii) performing step (iv) based also on outcome of step (vii);

(ix) providing a verification data item of a second one-way function chain of data items; and

(x) submitting, to a blockchain, an exchange blockchain transaction unlockable upon provision of at least one verification item of the first one-way function chain and the verification data item of the second one-way function chain, wherein such unlocking causes at least one data item of the second one-way function chain to be associated with a resource;

wherein steps (i), (v), (ix), and (x) are performed by a first party and steps (ii), (iii), (iv), and (vi) to (viii) are performed by a second party; and

wherein the method further comprises sending the secret value from a first user to a second user.

2. The method of claim 1 , wherein step (iii) comprises the application of at least one test or criterion.

3. The method of claim 2 , wherein the at least one test or criterion comprises an assessment as to whether the derived public key matches, or is identical to, the verification public key.

4. The method of claim 2 , wherein the at least one test or criterion comprises a threshold-based assessment.

5. The method of claim 1 , further comprising repeating steps (ii) to (iv) using a further secret value and the further public key.

6. The method of claim 1 , further comprising unlocking the exchange blockchain transaction and repeating steps (ii) to (iv) using a data item of the second one-way function chain and the verification data item of the second one-way function chain.

7. The method of claim 1 , further comprising submitting, to a blockchain, a return blockchain transaction arranged to return control of an input of the exchange blockchain transaction after elapse of a lock time.

8. The method of claim 1 , further comprising storing an initial data item of a one-way function chain, from which at least one data item of the one-way function chain is calculable.

9. The method of claim 1 , wherein step (viii) further comprises deleting the verification data item.

10. The method of claim 1 , wherein an access blockchain transaction comprises information identifying the resource.

11. A system, comprising:

a processor; and

memory including executable instructions that, as a result of execution by the processor, causes the system to:

(i) submit, to a blockchain, an access blockchain transaction addressed to a derived public key derived at least in part from a secret value and a public key;

(ii) generate a verification public key based at least in part on the secret value and the public key;

(iii) compare the derived public key and the verification public key; and

(iv) based on the comparison of step (iii):

(a) allocate at least one of the derived public key and/or the verification public key as a further public key for verifying a further derived public key; and

(b) grant access to a resource associated with at least one of the secret value and/or the derived public key;

wherein the secret value is a data item of a first one-way function chain of data items, and the executable instructions further cause the system to:

(v) provide a verification data item of the first one-way function chain;

(vi) apply the first one-way function to the data item;

(vii) compare output of step (vi) to the verification data item;

(viii) perform step (iv) based also on outcome of step (vii);

(ix) provide a verification data item of a second one-way function chain of data items; and

(x) submit, to a blockchain, an exchange blockchain transaction unlockable upon provision of at least one verification item of the first one-way function chain and the verification data item of the second one-way function chain, wherein such unlocking causes at least one data item of the second one-way function chain to be associated with a resource;

wherein steps (i), (v), (ix), and (x) are performed by a first party and steps (ii), (iii), (iv), and (vi) to (viii) are performed by a second party; and

wherein the executable instructions further cause the system to send the secret value from a first user to a second user.

12. 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:

(i) submit, to a blockchain, an access blockchain transaction addressed to a derived public key derived at least in part from a secret value and a public key;

(ii) generate a verification public key based at least in part on the secret value and the public key;

(iii) compare the derived public key and the verification public key; and

(iv) based on the comparison of step (iii):

(a) allocate at least one of the derived public key and/or the verification public key as a further public key for verifying a further derived public key; and

(b) grant access to a resource associated with at least one of the secret value and/or the derived public key;

wherein the secret value is a data item of a first one-way function chain of data items, and the executable instructions further cause the computer system to:

(v) provide a verification data item of the first one-way function chain;

(vi) apply the first one-way function to the data item;

(vii) compare output of step (vi) to the verification data item;

(viii) perform step (iv) based also on outcome of step (vii);

(ix) provide a verification data item of a second one-way function chain of data items; and

(x) submit, to a blockchain, an exchange blockchain transaction unlockable upon provision of at least one verification item of the first one-way function chain and the verification data item of the second one-way function chain, wherein such unlocking causes at least one data item of the second one-way function chain to be associated with a resource;

wherein steps (i), (v), (ix), and (x) are performed by a first party and steps (ii), (iii), (iv), and (vi) to (viii) are performed by a second party; and

wherein the executable instructions further cause the computer system to send the secret value from a first user to a second user.

13. The system of claim 11 ,

wherein step (iii) comprises the application of at least one test or criterion.

14. The system of claim 11 ,

wherein the executable instructions further cause the system to repeat steps (ii) to (iv) using a further secret value and the further public key.

15. The system of claim 11 ,

wherein the memory further causes the system to unlock the exchange blockchain transaction and repeat steps (ii) to (iv) using a data item of the second one-way function chain and the verification data item of the second one-way function chain.

16. The non-transitory computer-readable storage medium of claim 12 , wherein step (iii) comprises the application of at least one test or criterion.

17. The non-transitory computer-readable storage medium of claim 12 , wherein the executable instructions further cause the computer system to at least repeat steps (ii) to (iv) using a further secret value and the further public key.

18. The non-transitory computer-readable storage medium of claim 12 , wherein the executable instructions further cause the computer system to at least unlock the exchange blockchain transaction and repeat steps (ii) to (iv) using a data item of the second one-way function chain and the verification data item of the second one-way function chain.

Assignments (5)
CHANGE OF NAME Recorded Apr 17, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063363/0268 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2020
From: WRIGHT, CRAIG S
To: NCHAIN HOLDINGS LTD
Reel/Frame 054366/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2020
From: WRIGHT, CRAIG STEVEN
To: NCHAIN HOLDINGS LTD
Reel/Frame 054366/0762 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2020
From: WRIGHT, CRAIG STEVEN
To: NCHAIN HOLDINGS LTD
Reel/Frame 054366/0805 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2020
From: WRIGHT, CRAIG STEVEN
To: NCHAIN HOLDINGS LTD
Reel/Frame 054366/0832 →
Priority Claims (8)
GB 1807807 · May 14, 2018 · national
GB 1807811 · May 14, 2018 · national
GB 1807813 · May 14, 2018 · national
GB 1807816 · May 14, 2018 · national
WO PCT/IB2018/053346 · May 14, 2018 · international
WO PCT/IB2018/053347 · May 14, 2018 · international
WO PCT/IB2018/053349 · May 14, 2018 · international
WO PCT/IB2018/053350 · May 14, 2018 · international
Continuity (1)
Related Publication 20210203481A1 · Jul 1, 2021