¿Qué sucede con los UTXO cuando se cumple un script de salida de transacción?

Según tengo entendido del libro "Mastering bitcoin", la salida de una transacción contiene tres cosas

  1. Cantidad - Valor de Bitcoin en Satoshis
  2. Locking-Script-Size - Longitud de Locking-Script en bytes, a seguir
  3. Locking-Script: un script que define las condiciones necesarias para gastar la salida

Ahora, digamos que la entrada de una transacción apunta a los UTXO mencionados en uno de los resultados de la transacción a través del hash de la transacción y un software de validación puede satisfacer el scriptPubKey (script de bloqueo) utilizando el script‐Sig (script de desbloqueo).

Preguntas sobre este caso

  1. ¿Qué pasaría con los UTXO mencionados en el resultado de la transacción principal? ¿Se desvanecería en la transacción o ocurriría algún cambio?
  2. Solo una transacción válida que satisfaga correctamente las condiciones de la UTXO da como resultado que la UTXO se marque como "gastada" y se elimine del conjunto de UTXO disponibles (no gastadas).

Esta fue una declaración del libro, ahora, ¿hay algún grupo separado de UTXO o simplemente significa que la transacción se encuentra en los nodos de hoja del árbol de Merkel? y que hace

eliminado del conjunto de UTXO disponibles (no gastados).

¿significar?

  1. ¿Contendría la salida de la transacción secundaria los mismos identificadores de transacción que la salida de su padre?

Supongamos que cuando el gastador trató de ver todo lo que puede gastar, es decir, las transacciones dirigidas a su dirección de bitcoin, entonces estos fueron los resultados de la transacción que obtuvo.

[<7dbc497969c7475e45d952c4a872e213fb15d45e5cd3473c386a71a1b0c136a1:0 with 25000000 Satoshis>, \ <7f42eda67921ee92eae5f79bd37c68c9cb859b899ce70dba68c48338857b7818:0 with 16100000 Satoshis>, \ <6596fd070679de96e405d52b51b8e1d644029108ec4cbfe451454486796a1ecf:0 with 16050000 Satoshis>]

Por favor, ilumíneme si me estoy perdiendo algo.

Respuestas (1)

Me gustaría aclarar primero una cosa, antes de intentar responder, y también es del libro:

salida de transacción no gastada (UTXO) UTXO es una salida de transacción no gastada que se puede gastar como entrada en una nueva transacción.

un UTXO no es un elemento per se, es una descripción de un conjunto de datos en una transacción. Los UTXO pueden gastarse o no gastarse. Para que las transacciones se vuelvan válidas, por supuesto, solo pueden usar no gastados. Entonces, cuando se usa un UTXO de una transacción anterior, gastando todos los fondos en una nueva dirección y una dirección de devolución, el UTXO anterior se convierte en parte de dos nuevos UTXO. Y sí, el UTXO anterior se gasta, se documenta en la cadena de bloques y ya no se puede usar.

Cuando se trata de agregar o eliminar UTXO: aquí se trata de mempool. El cliente bitcoin mantiene en la memoria la lista de tx no gastados. Para ver qué tan grande es la base de datos de UTXO, consulte aquí. Esto es lo que describiste como un grupo separado. Y en este sentido

eliminado del conjunto de UTXO disponibles (no gastados)

simplemente significa que cuando haya enviado una transacción, este UTXO en particular debe eliminarse del mempool. No estoy 100% seguro, pero se necesita el mempool para verificar si el tx es válido o no (es decir, solo gasta UTXO válido fuera del mempool). Véase también la página 119 del libro.

¿Contendría la salida de la transacción secundaria los mismos identificadores de transacción que la salida de su padre?

Cada tx hace referencia a un tx anterior, para especificar de qué transacción (el hash de tx) y VOUT tomar los fondos. Entonces, un tx secundario haría referencia a las entradas tx de los padres. Sin embargo, si el tx secundario hace referencia al tx siguiente, no verá las referencias del tx principal.

Suponiendo que tiene (ve) estos tres TX_ID y puntos de salida y valores,

7dbc497969c7475e45d952c4a872e213fb15d45e5cd3473c386a71a1b0c136a1:0 25000000 Satoshis
7f42eda67921ee92eae5f79bd37c68c9cb859b899ce70dba68c48338857b7818:0 16100000 Satoshis
6596fd070679de96e405d52b51b8e1d644029108ec4cbfe451454486796a1ecf:0 16050000 Satoshis

el software de la billetera lo sabría, estas son salidas no gastadas, y se le podría pedir que las use como entradas para una nueva transacción de ~ 0.57 BTC a una nueva dirección.

Además del muy buen libro de Andreas, también recomiendo la entrada de blog de Ken Shirrif, donde explica cómo firmar manualmente un tx . Eso deja las cosas muy claras también.

La U en UTXO significa No gastado. Un UTXO, por definición, no se gasta. De lo contrario, es solo una salida gastada.
Corríjame si me equivoco. Una transacción contiene tanto entradas como salidas. Una salida no gastada de una transacción se convierte en parte del grupo UTXO. Una vez que un nodo recibe, elimina el UTXO de su grupo una vez que se valida y transmite la transacción. Cuando otros nodos también reciben esta transacción, también eliminan el UTXO correspondiente de sus grupos. ¿Lo es?
Sí, tx contiene entradas y salidas. Una UTXO pasa a formar parte del mempool. Se elimina de mempool, cuando aparece en un bloque. Vea también la respuesta de Pieter aquí: bitcoin.stackexchange.com/questions/46152/…
Y encontré un buen enlace en UTXO aquí: eprint.iacr.org/2017/1095.pdf