25b5806cf1
This will enforce BIP143 compressed pubkey rules on an address generation level.
251 lines
7.4 KiB
JSON
251 lines
7.4 KiB
JSON
{
|
|
"valid": [
|
|
{
|
|
"description": "output from address",
|
|
"arguments": {
|
|
"address": "bc1qafk4yhqvj4wep57m62dgrmutldusqde8adh20d"
|
|
},
|
|
"options": {},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"hash": "ea6d525c0c955d90d3dbd29a81ef8bfb79003727",
|
|
"output": "OP_0 ea6d525c0c955d90d3dbd29a81ef8bfb79003727",
|
|
"signature": null,
|
|
"input": null,
|
|
"witness": null
|
|
}
|
|
},
|
|
{
|
|
"description": "output from hash",
|
|
"arguments": {
|
|
"hash": "ea6d525c0c955d90d3dbd29a81ef8bfb79003727"
|
|
},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"address": "bc1qafk4yhqvj4wep57m62dgrmutldusqde8adh20d",
|
|
"output": "OP_0 ea6d525c0c955d90d3dbd29a81ef8bfb79003727",
|
|
"signature": null,
|
|
"input": null,
|
|
"witness": null
|
|
}
|
|
},
|
|
{
|
|
"description": "output from output",
|
|
"arguments": {
|
|
"output": "OP_0 ea6d525c0c955d90d3dbd29a81ef8bfb79003727"
|
|
},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"address": "bc1qafk4yhqvj4wep57m62dgrmutldusqde8adh20d",
|
|
"hash": "ea6d525c0c955d90d3dbd29a81ef8bfb79003727",
|
|
"signature": null,
|
|
"input": null,
|
|
"witness": null
|
|
}
|
|
},
|
|
{
|
|
"description": "output from pubkey",
|
|
"arguments": {
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001"
|
|
},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"address": "bc1qz69ej270c3q9qvgt822t6pm3zdksk2x35j2jlm",
|
|
"hash": "168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"output": "OP_0 168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"signature": null,
|
|
"input": null,
|
|
"witness": null
|
|
}
|
|
},
|
|
{
|
|
"description": "witness/output from pubkey/signature",
|
|
"arguments": {
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001",
|
|
"signature": "300602010002010001"
|
|
},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"address": "bc1qz69ej270c3q9qvgt822t6pm3zdksk2x35j2jlm",
|
|
"hash": "168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"output": "OP_0 168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"input": "",
|
|
"witness": [
|
|
"300602010002010001",
|
|
"030000000000000000000000000000000000000000000000000000000000000001"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"description": "witness/output from witness",
|
|
"arguments": {
|
|
"witness": [
|
|
"300602010002010001",
|
|
"030000000000000000000000000000000000000000000000000000000000000001"
|
|
]
|
|
},
|
|
"expected": {
|
|
"name": "p2wpkh",
|
|
"address": "bc1qz69ej270c3q9qvgt822t6pm3zdksk2x35j2jlm",
|
|
"hash": "168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"output": "OP_0 168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001",
|
|
"signature": "300602010002010001",
|
|
"input": ""
|
|
}
|
|
}
|
|
],
|
|
"invalid": [
|
|
{
|
|
"exception": "Not enough data",
|
|
"arguments": {}
|
|
},
|
|
{
|
|
"exception": "Not enough data",
|
|
"arguments": {
|
|
"signature": "300602010002010001"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Output is invalid",
|
|
"description": "Unexpected OP",
|
|
"arguments": {
|
|
"output": "OP_RESERVED ea6d525c0c955d90d3dbd29a81ef8bfb79003727"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Invalid pubkey for p2wpkh",
|
|
"description": "Uncompressed pubkey in pubkey",
|
|
"arguments": {
|
|
"pubkey": "049fa211b0fca342589ca381cc96520c3d0e3924832158d9f29891936cac091e80687acdca51868ee1f89a3bb36bb16f186262938e1f94c1e7692924935b9b1457"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Witness has invalid pubkey",
|
|
"description": "Uncompressed pubkey in witness",
|
|
"arguments": {
|
|
"witness": [
|
|
"300602010002010001",
|
|
"049fa211b0fca342589ca381cc96520c3d0e3924832158d9f29891936cac091e80687acdca51868ee1f89a3bb36bb16f186262938e1f94c1e7692924935b9b1457"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"exception": "Pubkey mismatch",
|
|
"options": {},
|
|
"arguments": {
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001",
|
|
"witness": [
|
|
"300602010002010001",
|
|
"030000000000000000000000000000000000000000000000000000000000000002"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"exception": "Invalid prefix or Network mismatch",
|
|
"arguments": {
|
|
"address": "foo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqs30dvv"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Invalid address version",
|
|
"arguments": {
|
|
"address": "bc1pqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq5us4ke"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Invalid address data",
|
|
"arguments": {
|
|
"address": "bc1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmql8k8"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Hash mismatch",
|
|
"arguments": {
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001",
|
|
"hash": "ffffffffffffffffffffffffffffffffffffffff"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Hash mismatch",
|
|
"arguments": {
|
|
"address": "bc1qafk4yhqvj4wep57m62dgrmutldusqde8adh20d",
|
|
"hash": "ffffffffffffffffffffffffffffffffffffffff"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Hash mismatch",
|
|
"arguments": {
|
|
"output": "OP_0 ea6d525c0c955d90d3dbd29a81ef8bfb79003727",
|
|
"hash": "ffffffffffffffffffffffffffffffffffffffff"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Hash mismatch",
|
|
"arguments": {
|
|
"hash": "ffffffffffffffffffffffffffffffffffffffff",
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001"
|
|
}
|
|
},
|
|
{
|
|
"exception": "Hash mismatch",
|
|
"arguments": {
|
|
"hash": "ffffffffffffffffffffffffffffffffffffffff",
|
|
"witness": [
|
|
"300602010002010001",
|
|
"030000000000000000000000000000000000000000000000000000000000000001"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"exception": "Witness is invalid",
|
|
"arguments": {
|
|
"witness": []
|
|
}
|
|
},
|
|
{
|
|
"exception": "Witness has invalid signature",
|
|
"arguments": {
|
|
"witness": [
|
|
"ffffffffffffffffff",
|
|
"030000000000000000000000000000000000000000000000000000000000000001"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"exception": "Witness has invalid pubkey",
|
|
"arguments": {
|
|
"witness": [
|
|
"300602010002010001",
|
|
"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"dynamic": {
|
|
"depends": {
|
|
"address": [ "address", "output", "hash", "pubkey", "witness" ],
|
|
"hash": [ "address", "output", "hash", "pubkey", "witness" ],
|
|
"output": [ "address", "output", "hash", "pubkey", "witness" ],
|
|
"pubkey": [ "witness" ],
|
|
"signature": [ "witness" ],
|
|
"input": [ "witness" ],
|
|
"witness": [ [ "pubkey", "signature" ] ]
|
|
},
|
|
"details": [
|
|
{
|
|
"description": "p2wpkh",
|
|
"address": "bc1qz69ej270c3q9qvgt822t6pm3zdksk2x35j2jlm",
|
|
"hash": "168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"output": "OP_0 168b992bcfc44050310b3a94bd0771136d0b28d1",
|
|
"pubkey": "030000000000000000000000000000000000000000000000000000000000000001",
|
|
"signature": "300602010002010001",
|
|
"input": "",
|
|
"witness": [
|
|
"300602010002010001",
|
|
"030000000000000000000000000000000000000000000000000000000000000001"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|