Pregunta 1

wallet: store all witness variants of a transaction

Pol Espinasa 22/07/2026 20:11
Pregunta 1 -> ¿Qué significa que dos transacciones compartan el mismo txid pero tengan diferentes wtxids? ¿Cómo es esto posible y qué implica sobre los inputs de la transacción?
30/07/2026 19:05
Quien se anima con la primera pregunta?
Santochibtc 30/07/2026 19:06
el txid es el hash de los datos de la tx, excluyendo el witness. el wtxid es el hash de todo los datos de la tx, incluyendo el witness. Dos tx que tengan mismas entradas y salidas tienen el mismo txid, pero tienen diferente wtxid si varian el witness. Por ejemplo una en traproot puedes gastar un mismo utxo mediante los distintos caminos
👍 3
> 30/07/2026 19:06

Son la misma transacción con diferente witness data, el txid es el hash de la transacción sin incluir el witness, mientras que el wtxid es el resultado de hashear la transacción completa con witness. El witness contiene los datos que satisfacen el scriptPubkey del output gastado por cada input, es el reemplazo de scriptSig en transacciones tipo segwit.

Esto implica que los inputs de ambas transacciones son idénticos.

👍 3
arejula27 30/07/2026 19:06
Segwit evito la maleabilidad haciendo que la firma no sea parte de la tx, así que la firma no cuenta para el hash (txid)
👍 4
nacho_porte 30/07/2026 19:06
El txid no toma el cuenta el witness, por eso las txid post segwit ya no son maleables, pero wtxids si toman en cuenta los witness y estos pueden tener los mismos inputs y outputs, pero con cambios en los witness, por ej orden distintos de firmas en multisig o una firma con un valor válido alternativo o cambiar un key-path por un scriptpath.
👍 3
Pol Espinasa 30/07/2026 19:08
correcto, creo que nadie tiene muchas dudas aqui 🙂
30/07/2026 19:08
pasamos directo a la siguiente