Multisig Tx creado manualmente: bandera de verificación de secuencia de comandos no obligatoria

Estoy tratando de transmitir una transacción creada y firmada manualmente. Por lo que puedo decir, los scripts son correctos y las firmas pasan la validación BIP 66 .

Sin embargo, sigo recibiendo:

{'message': '64: non-mandatory-script-verify-flag (No error)', u'code': -26}

Sospechando de la codificación DER, probé diferentes bibliotecas (más mi propio código ad-hoc) sin éxito. Esta es la transacción en bruto en cuestión:

010000000185a08567ea46e4643bcace616519227876b89a364afe9410390196ba0185a7d900000000fd44010047304402202e119d14a6fd920d4444c6d73800609b8a8dfe48bc4c1fe0d2840fef40a26027022041d8f3ec7517b9773879eb5255ef30a457740fa2669f2b33d1c93c6e7894163a014730440220686531e7c640e62a860f499f9582ee72c8581b4827c0f05d9196d6b73722d56402200fa3b7132414092de23b1c7cf31874c21b7b5dea775ae677b8bd3ce5d0dca3830147304402205628c813b01bb0355309400c363c37aaa6d36d5ee6592a0793c77cfd32fd0f3d022017c68684a5748423129a60449344982b7e101aaf7882bf74958ef145631c682e014c695221023abd0b238c5e93e4d1d9f06e9d743941e5d3f23d0b5371a0f87ac56106373829210231e33da7f49dd067b556c04b07fc339b571f144bb8c51b3410e66b143b3e75202102b49c7c0f9d3026fdc3311c61bdb7b92d81ee1d4adf806e0fbfdfac5f5c9b9e7853aeffffffff01204e0000000000001976a9144c477bec69fa6f89d6effdc3b17ab53101c6fa1a88ac00000000

¿Qué tiene de malo la transacción? Proporcionaré cualquier información adicional necesaria.

Respuestas (2)

Estaba enviando una firma adicional.

La transacción requería 2 de 3 y envié las 3 firmas. La firma extra no fue sacada de la pila por OP_CHECKMULTISIG, y la pila restante se veía así:

EXTRA_SIGNATURE
OP_0 # null-dummy for Bitcoin Core's old bug

La firma adicional ocupó el lugar de la ficticia y la bitcoinddetectó al verificar que la ficticia era un archivo OP_0.

RPC_VERIFY_REJECTED = -26, //! Transaction or block was rejected by network rules

No se pudo validar la regla "prev_out": Prev out d9a78501ba9601391094fe4a369ab8767822196561ceca3b64e446ea6785a085:0 no encontrado.

¿Eso significa que la salida no existe? Puedo verlo aquí en test-insight: test-insight.bitpay.com/tx/…