US 12,445,287 B2
Computer implemented method and system for knowledge proof in blockchain transactions
Craig Steven Wright, London (GB); Alexander Tennyson Mackay, London (GB); and Wei Zhang, London (GB)
Assigned to NCHAIN LICENSING AG, Zug (CH)
Appl. No. 17/603,332
Filed by nChain Holdings Limited, St. John's (AG)
PCT Filed Apr. 3, 2020, PCT No. PCT/IB2020/053214
§ 371(c)(1), (2) Date Oct. 12, 2021,
PCT Pub. No. WO2020/208491, PCT Pub. Date Oct. 15, 2020.
Claims priority of application No. 1905198 (GB), filed on Apr. 12, 2019.
Prior Publication US 2022/0278843 A1, Sep. 1, 2022
Int. Cl. H04L 9/32 (2006.01); H04L 9/00 (2022.01); H04L 9/08 (2006.01)
CPC H04L 9/3218 (2013.01) [H04L 9/0825 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A method of enabling knowledge proof in a blockchain transaction, the method comprising:
generating, at a verifier computing system, a first blockchain transaction comprising a locking script, the locking script comprising:
(i) fourth data based on a public key of a public-private key pair of a cryptography system,
(ii) second data, and
(iii) a prime number shared between the verifier computing system and a prover computing system that are outside of a blockchain network, and wherein the prime number is used in computation of intermediate results to validate the first blockchain transaction;
wherein the first blockchain transaction is redeemable by means of a second blockchain transaction comprising an unlocking script, the unlocking script including:
(i) first data based on a combination of an ephemeral key, the second data and a private key of the public-private key pair of the cryptography system, wherein the public key of the public-private key pair of the cryptography system is based on an integer generator raised to a first power, wherein the first power is based on the private key, and
(ii) third data based on the integer generator raised to a second power that is different than the first power, wherein the second power is based on the ephemeral key;
transmitting, by the verifier computing system, the first blockchain transaction to the blockchain network for validation; and
responsive to receiving an indication of a success validation of the first blockchain transaction by the blockchain network, generating the second blockchain transaction to enable redemption of the first blockchain transaction on the blockchain network, the second blockchain transaction being generated by the prover computing system and the redemption of the first blockchain transaction is performed on the blockchain network based on modular arithmetic operations,
wherein execution of the locking and unlocking scripts on the blockchain network functions as a proof of knowledge that the prover computing system possesses the private key of the public-private key pair, and
wherein the public key, components of the first data, the fourth data, and the intermediate results are pre-computed off-chain.