US 11,893,584 B2
Constraining injection of unlocking transaction bytecode
Ying Chan, Cambridge (GB); and Dean Kramer, London (GB)
Assigned to nChain Licensing AG, Zug (CH)
Filed by nChain Licensing AG, Zug (CH)
Filed on Dec. 12, 2022, as Appl. No. 18/064,814.
Application 18/064,814 is a continuation of application No. 16/615,802, granted, now 11,528,145, previously published as PCT/IB2018/053335, filed on May 14, 2018.
Claims priority of application No. 1708185 (GB), filed on May 22, 2017; application No. 1708190 (GB), filed on May 22, 2017; application No. 1708192 (GB), filed on May 22, 2017; application No. 1708196 (GB), filed on May 22, 2017; application No. 1708198 (GB), filed on May 22, 2017; and application No. 1708200 (GB), filed on May 22, 2017.
Prior Publication US 2023/0188354 A1, Jun. 15, 2023
Int. Cl. G06F 21/64 (2013.01); G06Q 20/38 (2012.01); G06Q 20/06 (2012.01); G06Q 20/36 (2012.01); H04L 9/32 (2006.01); H04L 9/06 (2006.01); G06F 16/23 (2019.01); H04L 9/30 (2006.01); G06F 21/62 (2013.01); G06Q 10/10 (2023.01); H04L 9/00 (2022.01)
CPC G06Q 20/389 (2013.01) [G06F 16/2379 (2019.01); G06F 21/6209 (2013.01); G06F 21/645 (2013.01); G06Q 20/065 (2013.01); G06Q 20/0658 (2013.01); G06Q 20/36 (2013.01); G06Q 20/3674 (2013.01); G06Q 20/3825 (2013.01); G06Q 20/3829 (2013.01); H04L 9/0637 (2013.01); H04L 9/0643 (2013.01); H04L 9/30 (2013.01); H04L 9/3236 (2013.01); H04L 9/3239 (2013.01); H04L 9/3247 (2013.01); G06Q 10/10 (2013.01); G06Q 2220/00 (2013.01); H04L 9/3066 (2013.01); H04L 9/3252 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A method comprising:
receiving, at a node in a blockchain network, a first transaction to validate, the first transaction including a first script and a second script;
executing the first script followed by the second script to obtain a serialized second transaction, a signature hash type, and a serialized set of unlocking transaction fields;
generating a signature based at least in part on a serialized set of field values of the first transaction and the signature hash type;
validating the generated signature;
generating a first transaction ID based at least in part on the obtained serialized second transaction;
extracting a second transaction ID from the serialized set of field values of the first transaction; and
determining whether the first transaction ID matches the second transaction ID.