IP Library Granted Patent US 12706756
Granted Patent B2
US 12706756 · App. 18/905,703 · Granted Aug 11, 2026

Computer-implemented system and method including public key combination verification

Inventors: Craig Steven Wright (London, GB); Owen Vaughan (London, GB)
Assignee: NCHAIN LICENSING AG
H04L9/3255H04L9/14H04L9/30H04L9/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 12706756
App. No.
18/905,703
Granted
Aug 11, 2026
Kind
B2
Abstract

A computer-implemented method is disclosed. The method includes providing a blockchain transaction comprising a public key combination verification function. The blockchain transaction is configured to be redeemable to permit access to, or transfer control of, a resource by providing to the blockchain transaction an input comprising: a plurality of public keys; a gradient value (λ) related to two of the plurality of public keys; and a group public key derived from a combination of the public keys and the gradient value (λ). The blockchain transaction is configured to apply the public key verification function to the input to verify, upon successful redemption of the transaction, that the group public key is derived from the combination of the plurality of public keys.

Claims (92)

1 . A computer-implemented method, comprising operations, the operations comprising:

obtaining a first blockchain transaction configured to be redeemable to permit access to or transfer control of, a resource, wherein the first blockchain transaction has an output comprising a public key combination verification function, wherein said function comprises:

a plurality of public keys including a first public key and a second public key, each public key being a point on an elliptic curve, and

a group public key being the elliptic curve point addition of the first and second public keys;

determining a first gradient value being the gradient of the line between the first and second public keys;

providing a second blockchain transaction comprising an input comprising said public keys, said first gradient value, and said group public key; and

submitting the second blockchain transaction to a blockchain;

wherein the first blockchain transaction is configured to be redeemable to permit access to, or transfer control of, a resource on successful application of the public key combination verification function to the input to verify that the group public key is derived from a combination of the public keys.

2 . A method according to claim 1 , wherein:

the input of the second blockchain transaction further comprises:

a first number of further public keys of the plurality of public keys, the first, second and further public keys being in an ordered list, and

the first number of further gradient values, each corresponding to a further public key, and each being the gradient of the line between the elliptic curve point addition of the public keys previous to the corresponding public key, and the corresponding public key; and

the group public key is the elliptic curve point addition of the first, second and further public keys.

3 . A method according to claim 2 , wherein a successful application of the public key combination verification function comprises:

(i) applying the function to the first and second public keys and the first gradient value to obtain a first result;

(ii) applying the function to the first result and the next further public key and the corresponding gradient value; and

(iii) repeating step (ii) for all the further public keys.

4 . A method according to claim 1 , wherein the output of the first blockchain transaction further comprises:

a group signature corresponding to the group public key,

a Merkle root, and

a Merkle path verification function.

5 . A method according to claim 4 , wherein the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a group private key corresponding to the group signature.

6 . A method according to claim 1 , wherein the output of the first blockchain transaction further comprises:

a plurality of signatures corresponding to the plurality of public keys,

a Merkle root, and

a Merkle path verification function.

7 . A method according to claim 6 , wherein the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a plurality of private keys corresponding to the plurality of signatures.

8 . A system, comprising: a processor; and memory including executable instructions that, as a result of execution by the processor, causes the system to:

obtain a first blockchain transaction configured to be redeemable to permit access to, or transfer control of, a resource, wherein the first blockchain transaction has an output comprising a public key combination verification function, wherein said function comprises:

a plurality of public keys including a first public key and a second public key, each public key being a point on an elliptic curve, and

a group public key being the elliptic curve point addition of the first and second public keys;

determine a first gradient value being the gradient of the line between the first and second public keys;

provide a second blockchain transaction comprising an input comprising said public keys, said first gradient value, and said group public key; and

submit the second blockchain transaction to a blockchain;

wherein the first blockchain transaction is configured to be redeemable to permit access to, or transfer control of, a resource on successful application of the public key combination verification function to the input to verify that the group public key is derived from a combination of the public keys.

9 . A system according to claim 8 , wherein:

the input of the second blockchain transaction further comprises:

a first number of further public keys of the plurality of public keys, the first, second and further public keys being in an ordered list, and

the first number of further gradient values, each corresponding to a further public key, and each being the gradient of the line between the elliptic curve point addition of the public keys previous to the corresponding public key, and the corresponding public key; and

the group public key is the elliptic curve point addition of the first, second and further public keys.

10 . A system according to claim 9 , wherein a successful application of the public key combination verification function comprises:

(i) applying the function to the first and second public keys and the first gradient value to obtain a first result;

(ii) applying the function to the first result and the next further public key and the corresponding gradient value; and

(iii) repeating step (ii) for all the further public keys.

11 . A system according to claim 8 , wherein the output of the first blockchain transaction further comprises:

a group signature corresponding to the group public key,

a Merkle root, and

a Merkle path verification function.

12 . A system according to claim 11 , wherein the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a group private key corresponding to the group signature.

13 . A system according to claim 8 , wherein the output of the first blockchain transaction further comprises:

a plurality of signatures corresponding to the plurality of public keys,

a Merkle root, and

a Merkle path verification function.

14 . A system according to claim 12 , wherein the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a plurality of private keys corresponding to the plurality of signatures.

15 . 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 obtain a first blockchain transaction configured to be redeemable to permit access to, or transfer control of, a resource, wherein the first blockchain transaction has an output comprising a public key combination verification function, wherein said function comprises:

a plurality of public keys including a first public key and a second public key, each public key being a point on an elliptic curve, and

a group public key being the elliptic curve point addition of the first and second public keys;

determine a first gradient value being the gradient of the line between the first and second public keys;

provide a second blockchain transaction comprising an input comprising said public keys, said first gradient value, and said group public key; and

submit the second blockchain transaction to a blockchain;

wherein the first blockchain transaction is configured to be redeemable to permit access to, or transfer control of, a resource on successful application of the public key combination verification function to the input to verify that the group public key is derived from a combination of the public keys.

16 . A non-transitory computer-readable storage medium according to claim 15 , wherein:

the input of the second blockchain transaction further comprises:

a first number of further public keys of the plurality of public keys, the first, second and further public keys being in an ordered list, and

the first number of further gradient values, each corresponding to a further public key, and each being the gradient of the line between the elliptic curve point addition of the public keys previous to the corresponding public key, and the corresponding public key; and

the group public key is the elliptic curve point addition of the first, second and further public keys.

17 . A non-transitory computer-readable storage medium according to claim 16 , wherein a successful application of the public key combination verification function comprises:

(i) applying the function to the first and second public keys and the first gradient value to obtain a first result;

(ii) applying the function to the first result and the next further public key and the corresponding gradient value; and

(iii) repeating step (ii) for all the further public keys.

18 . A non-transitory computer-readable storage medium according to claim 15 , wherein the output of the first blockchain transaction further comprises:

a group signature corresponding to the group public key,

a Merkle root, and

a Merkle path verification function.

19 . A non-transitory computer-readable storage medium according to claim 18 , wherein the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a group private key corresponding to the group signature.

20 . A non-transitory computer-readable storage medium according to claim 15 , wherein the output of the first blockchain transaction further comprises:

a plurality of signatures corresponding to the plurality of public keys,

a Merkle root, and

a Merkle path verification function; and

the input of the second blockchain transaction comprises:

a Merkle path associated with the plurality of public keys, and

a plurality of private keys corresponding to the plurality of signatures.