Parece que la transacción se decodifica bien. Pero cuando uso sendrawtransaction obtuve
Data push larger than necessary
¿Qué tiene de malo este tx?
bitcoin-cli -testnet decoderawtransaction 020000000149d4a5f520ded6fa94f79cd268f0334baeec9a7732c9d946d1cdee58d81e7aad00000000020101ffffffff01904c96000000000017a914f45d94733d430261962932e0c847075195916a048700000000
{
"txid": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
"hash": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
"version": 2,
"size": 85,
"vsize": 85,
"weight": 340,
"locktime": 0,
"vin": [
{
"txid": "ad7a1ed858eecdd146d9c932779aecae4b33f068d29cf794fad6de20f5a5d449",
"vout": 0,
"scriptSig": {
"asm": "1",
"hex": "0101"
},
"sequence": 4294967295
}
],
"vout": [
{
"value": 0.09850000,
"n": 0,
"scriptPubKey": {
"asm": "OP_HASH160 f45d94733d430261962932e0c847075195916a04 OP_EQUAL",
"hex": "a914f45d94733d430261962932e0c847075195916a0487",
"reqSigs": 1,
"type": "scripthash",
"addresses": [
"2NFXJy8mvz7ZiT4VVN29xPGC38hTygd3AyJ"
]
}
}
]
}
Tu scriptSig
utiliza una inserción de datos para insertar 0x01 en la pila. Podría usar en su OP_1
lugar.
Su transacción está fallando en la validación con SCRIPT_VERIFY_MINIMALDATA, que se describe en BIP 62 , regla 3, protecciones contra la maleabilidad. CheckMinimalPush () requiere que se realice un empuje de 0x01 usando OP_1.
Esta regla de estandarización evita el caso en el que alguien toma una transacción de la red y una inserción con una codificación más larga de la misma inserción y, como resultado, crea una forma maleada de la transacción.
Andrés