This modifies the valid and invalid JSON transaction test data to use natively-encoded transactions instead of the legacy Bitcoin format.
76 lines
7.5 KiB
JSON
76 lines
7.5 KiB
JSON
[
|
|
["The following are deserialized transactions which are valid."],
|
|
["They are in the form"],
|
|
["[[[prevout hash, prevout index, prevout scriptPubKey], [input 2], ...],"],
|
|
["serializedTransaction, verifyFlags]"],
|
|
["Objects that are only a single string (like this one) are ignored"],
|
|
|
|
["Coinbase of size 2"],
|
|
["Note the input is just required to make the tester happy"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000000", -1, "1"]],
|
|
"01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff00ffffffff0100000000000000000000015100000000000000000100000000000000000000000000000000025151", "P2SH"],
|
|
|
|
["Coinbase of size 100"],
|
|
["Note the input is just required to make the tester happy"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000000", -1, "1"]],
|
|
"01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff00ffffffff01000000000000000000000151000000000000000001000000000000000000000000000000006451515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151", "P2SH"],
|
|
|
|
["Empty pubkey"],
|
|
[[["229257c295e7f555421c1bfec8538dd30a4b5c37c1c8810bbe83cafa7811652c", 0, "0x00 CHECKSIG NOT"]],
|
|
"01000000012c651178faca83be0b81c8c1375c4b0ad38d53c8fe1b1c4255f5e795c25792220000000000ffffffff0101000000000000000000232102c2410f8891ae918cab4ffc4bb4a3b0881be67c7a1e7faa8b5acf9ab8932ec30cac0000000000000000010000000000000000000000000000000049483045022100d6044562284ac76c985018fc4a90127847708c9edb280996c507b28babdc4b2a02203d74eca3f1a4d1eea7ff77b528fde6d5dc324ec2dbfdb964ba885f643b9704cd01", "P2SH"],
|
|
|
|
["Empty signature"],
|
|
[[["9ca93cfd8e3806b9d9e2ba1cf64e3cc6946ee0119670b1796a09928d14ea25f7", 0, "0x21 0x028a1d66975dbdf97897e3a4aef450ebeb5b5293e4a0b4a6d3a2daaa0b2b110e02 CHECKSIG NOT"]],
|
|
"0100000001f725ea148d92096a79b1709611e06e94c63c4ef61cbae2d9b906388efd3ca99c0000000000ffffffff01010000000000000000002321028a1d66975dbdf97897e3a4aef450ebeb5b5293e4a0b4a6d3a2daaa0b2b110e02ac000000000000000001000000000000000000000000000000000100", "P2SH"],
|
|
|
|
[[["ebbcf4bfce13292bd791d6a65a2a858d59adbf737e387e40370d4e64cc70efb0", 0, "2 0x21 0x033bcaa0a602f0d44cc9d5637c6e515b0471db514c020883830b7cefd73af04194 0x21 0x03a88b326f8767f4f192ce252afe33c94d25ab1d24f27f159b3cb3aa691ffe1423 2 CHECKMULTISIG NOT"]],
|
|
"0100000001b0ef70cc644e0d37407e387e73bfad598d852a5aa6d691d72b2913cebff4bceb0000000000ffffffff01010000000000000000002321033bcaa0a602f0d44cc9d5637c6e515b0471db514c020883830b7cefd73af04194ac000000000000000001000000000000000000000000000000004a00473044022068cd4851fc7f9a892ab910df7a24e616f293bcb5c5fbdfbc304a194b26b60fba022078e6da13d8cb881a22939b952c24f88b97afd06b4c47a47d7f804c9a352a6d6d0100", "P2SH"],
|
|
|
|
[[["ba4cd7ae2ad4d4d13ebfc8ab1d93a63e4a6563f25089a18bf0fc68f282aa88c1", 0, "2 0x21 0x037c615d761e71d38903609bf4f46847266edc2fb37532047d747ba47eaae5ffe1 0x21 0x02edc823cd634f2c4033d94f5755207cb6b60c4b1f1f056ad7471c47de5f2e4d50 2 CHECKMULTISIG NOT"]],
|
|
"0100000001c188aa82f268fcf08ba18950f263654a3ea6931dabc8bf3ed1d4d42aaed74cba0000000000ffffffff01010000000000000000002321037c615d761e71d38903609bf4f46847266edc2fb37532047d747ba47eaae5ffe1ac000000000000000001000000000000000000000000000000004b0000483045022100940378576e069aca261a6b26fb38344e4497ca6751bb10905c76bb689f4222b002204833806b014c26fd801727b792b1260003c55710f87c5adbd7a9cb57446dbc9801", "P2SH"],
|
|
|
|
["CHECKLOCKTIMEVERIFY tests"],
|
|
|
|
["By-height locks, with argument == 0 and == tx nLockTime"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]],
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 NOP2 1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff64cd1d00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff64cd1d00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["By-time locks, with argument just beyond tx nLockTime (but within numerical boundaries)"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]],
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000065cd1d00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "4294967295 NOP2 1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffffffff00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffffffff00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["Any non-maxint nSequence is fine"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]],
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000feffffff0100000000000000000000000000000000000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["The argument can be calculated rather than created directly by a PUSHDATA"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 1ADD NOP2 1"]],
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000065cd1d00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["Perhaps even by an ADD producing a 5-byte result that is out of bounds for other opcodes"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1 2147483646 ADD NOP2 1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000feffffff00000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["5 byte non-minimally-encoded arguments are valid"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0x05 0x0000000000 NOP2 1"]],
|
|
"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000010000000000000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["Valid CHECKLOCKTIMEVERIFY in scriptSig"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1"]],
|
|
"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000010000000000000001000000000000000000000000000000000251b1", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["Valid CHECKLOCKTIMEVERIFY in redeemScript"],
|
|
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0x69780eeb90f65bf4cec3c17aeb3d466b88e7be66 EQUAL"]],
|
|
"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000001000000000000000100000000000000000000000000000000030251b1", "P2SH,CHECKLOCKTIMEVERIFY"],
|
|
|
|
["Make diffs cleaner by leaving a comment here without comma at the end"]
|
|
]
|