|
103 | 103 | [[["ad503f72c18df5801ee64d76090afe4c607fb2b822e9b7b63c5826c50e22fc3b", 0, "0x21 0x027c3a97665bf283a102a587a62a30a0c102d4d3b141015e2cae6f64e2543113e5 CHECKSIG NOT"]],
|
104 | 104 | "01000000013bfc220ec526583cb6b7e922b8b27f604cfe0a09764de61e80f58dc1723f50ad0000000000ffffffff0101000000000000002321027c3a97665bf283a102a587a62a30a0c102d4d3b141015e2cae6f64e2543113e5ac00000000", "P2SH"],
|
105 | 105 |
|
| 106 | + |
| 107 | +["CHECKLOCKTIMEVERIFY tests"], |
| 108 | + |
| 109 | +["By-height locks, with argument just beyond tx nLockTime"], |
| 110 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1 NOP2 1"]], |
| 111 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 112 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 NOP2 1"]], |
| 113 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000fe64cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 114 | + |
| 115 | +["By-time locks, with argument just beyond tx nLockTime (but within numerical boundries)"], |
| 116 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000001 NOP2 1"]], |
| 117 | +"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 118 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "4294967295 NOP2 1"]], |
| 119 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000feffffff", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 120 | + |
| 121 | +["Argument missing"], |
| 122 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "NOP2 1"]], |
| 123 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 124 | + |
| 125 | +["Argument negative with by-blockheight nLockTime=0"], |
| 126 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "-1 NOP2 1"]], |
| 127 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 128 | + |
| 129 | +["Argument negative with by-blocktime nLockTime=500,000,000"], |
| 130 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "-1 NOP2 1"]], |
| 131 | +"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 132 | + |
| 133 | +["Input locked"], |
| 134 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]], |
| 135 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000ffffffff0100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 136 | + |
| 137 | +["Another input being unlocked isn't sufficient; the CHECKLOCKTIMEVERIFY-using input must be unlocked"], |
| 138 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"] , |
| 139 | + ["0000000000000000000000000000000000000000000000000000000000000200", 1, "1"]], |
| 140 | +"010000000200010000000000000000000000000000000000000000000000000000000000000000000000ffffffff00020000000000000000000000000000000000000000000000000000000000000100000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 141 | + |
| 142 | +["Argument/tx height/time mismatch, both versions"], |
| 143 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0 NOP2 1"]], |
| 144 | +"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 145 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "499999999 NOP2 1"]], |
| 146 | +"01000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000065cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 147 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]], |
| 148 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 149 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "500000000 NOP2 1"]], |
| 150 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ff64cd1d", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 151 | + |
| 152 | +["Argument 2^32 with nLockTime=2^32-1"], |
| 153 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "4294967296 NOP2 1"]], |
| 154 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ffffffff", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 155 | + |
| 156 | +["Same, but with nLockTime=2^31-1"], |
| 157 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "2147483648 NOP2 1"]], |
| 158 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000ffffff7f", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 159 | + |
| 160 | +["6 byte non-minimally-encoded arguments are invalid even in their contents are valid"], |
| 161 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0x06 0x000000000000 NOP2 1"]], |
| 162 | +"010000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 163 | + |
| 164 | +["Failure due to failing CHECKLOCKTIMEVERIFY in scriptSig"], |
| 165 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "1"]], |
| 166 | +"01000000010001000000000000000000000000000000000000000000000000000000000000000000000251b1000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 167 | + |
| 168 | +["Failure due to failing CHECKLOCKTIMEVERIFY in redeemScript"], |
| 169 | +[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0xc5b93064159b3b2d6ab506a41b1f50463771b988 EQUAL"]], |
| 170 | +"0100000001000100000000000000000000000000000000000000000000000000000000000000000000030251b1000000000100000000000000000000000000", "P2SH,CHECKLOCKTIMEVERIFY"], |
| 171 | + |
106 | 172 | ["Make diffs cleaner by leaving a comment here without comma at the end"]
|
107 | 173 | ]
|
0 commit comments