|
|
@ -103,5 +103,75 @@ |
|
|
|
[[["ad503f72c18df5801ee64d76090afe4c607fb2b822e9b7b63c5826c50e22fc3b", 0, "0x21 0x027c3a97665bf283a102a587a62a30a0c102d4d3b141015e2cae6f64e2543113e5 CHECKSIG NOT"]], |
|
|
|
"01000000013bfc220ec526583cb6b7e922b8b27f604cfe0a09764de61e80f58dc1723f50ad0000000000ffffffff0101000000000000002321027c3a97665bf283a102a587a62a30a0c102d4d3b141015e2cae6f64e2543113e5ac00000000", "P2SH"], |
|
|
|
|
|
|
|
["CHECKLOCKTIMEVERIFY tests"], |
|
|
|
|
|
|
|
["By-height locks, with argument just beyond tx nLockTime"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1 NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 NOP2 1"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000fe64cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["By-time locks, with argument just beyond tx nLockTime (but within numerical boundries)"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000001 NOP2 1"]], |
|
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "4294967295 NOP2 1"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000feffffff", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Argument missing"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Argument negative with by-blockheight nLockTime=0"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "-1 NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Argument negative with by-blocktime nLockTime=500,000,000"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "-1 NOP2 1"]], |
|
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Input locked"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000ffffffff0100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Another input being unlocked isn't sufficient; the CHECKLOCKTIMEVERIFY-using input must be unlocked"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"] , |
|
|
|
["0000000000000000000000000000000000000000000000000000000000000200", 1, "1"]], |
|
|
|
"010000000200010000000000000000000000000000000000000000000000000000000000000000000000ffffffff00020000000000000000000000000000000000000000000000000000000000000100000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Argument/tx height/time mismatch, both versions"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]], |
|
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 NOP2 1"]], |
|
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ff64cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Argument 2^32 with nLockTime=2^32-1"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "4294967296 NOP2 1"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ffffffff", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Same, but with nLockTime=2^31-1"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "2147483648 NOP2 1"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ffffff7f", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["6 byte non-minimally-encoded arguments are invalid even in their contents are valid"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0x06 0x000000000000 NOP2 1"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Failure due to failing CHECKLOCKTIMEVERIFY in scriptSig"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1"]], |
|
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000251b1000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Failure due to failing CHECKLOCKTIMEVERIFY in redeemScript"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0xc5b93064159b3b2d6ab506a41b1f50463771b988 EQUAL"]], |
|
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000030251b1000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
["Failure due to empty stack before CHECKLOCKTIMEVERIFY in redeemScript"], |
|
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0xc5b93064159b3b2d6ab506a41b1f50463771b988 EQUAL"]], |
|
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000001b1010000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
|
|
|
|
|
|
|
|
|
|
|
["Make diffs cleaner by leaving a comment here without comma at the end"] |
|
|
|
] |
|
|
|