ID de transacción o TXID
Una ID de transacción o TXID es el hash SHA256 doble o SHA256d de una transacción de Bitcoin serializada. Los TXID no son parte de la transacción, ya que el hash no se puede generar hasta que se complete la transacción. Un índice TXID y VOUT (o prevout_n ) se utilizan para hacer referencia a UTXO cuando se agregan a una transacción como entrada.
Datos
transacción: { "entradas": [ { "prevout_hash": "b8ed28aa87b92328e26a20553ac49fcb21e1f68daeb6cf7bcf4536e40503ffa8", "prevout_n": 0, "scriptSig": "4830450221008824eee04a2fbe62d2c3ee330eb2523b2c0188240714bb1d893aced1c454fa9a02202d32dbccc2af1c4b 830795f2fa8cd569a06ee70cb9d836bbd510f0b45a47711b4121028580686976c0e6a7e44a78387913e2d7508ff2344d 5f48669ba111dcd04170a8 ", "secuencia": 4294967294, } ], "lockTime": 598793, "salidas": [ { "scriptPubKey": "76a9146b0a9ed05da7223a1fe57e1a4d307556f7d6200788ac", "valor": 1800 }, { "scriptPubKey": "76a914b993e512cb186f3f1c3f556a09716a1580eb99a188ac", "valor": 90000 } ], } transacción serializada: "0100000001a8ff0305e43645cf7bcfb6ae8df6e121cb9fc43a55206ae22823b987aa28edb8000000006b4830450221008824 eee04a2fbe62d2c3ee330eb2523b2c0188240714bb1d893aced1c454fa9a02202d32dbccc2af1c4b830795f2fa8cd569a06e e70cb9d836bbd510f0b45a47711b4121028580686976c0e6a7e44a78387913e2d7508ff2344d5f48669ba111dcd04170a8fe ffffff0208070000000000001976a9146b0a9ed05da7223a1fe57e1a4d307556f7d6200788ac905f0100000000001976a914 b993e512cb186f3f1c3f556a09716a1580eb99a188ac09230900 " Id. de transacción: "d8c5c42cbd1df7e48acab76fe05f2c9e612a20996fd37f4ffd4dc251385b6ba3"
Explicación
El doble hash SHA256 permite a los participantes de la red identificar y comunicar transacciones de manera eficiente. Se utilizan en todos los niveles del ecosistema, incluidas las billeteras y los exploradores de bloques .
Los identificadores de transacción se usan ampliamente en el protocolo de igual a igual . Por ejemplo, los pares en la red sincronizan su base de datos de transacciones usando una secuencia de 3 mensajes. Un nodo enviará un mensaje de invitación que contiene uno o más identificadores de transacción. En el caso de que el nodo / par receptor no tenga una copia de la transacción completa, puede responder con un mensaje gettransaction que contenga la identificación de la transacción. Esto se responde con un mensaje tx que contiene la transacción serializada completa. El uso de identificadores de transacción para transmitir información de la base de datos de transacciones reduce en gran medida el volumen de datos que deben enviarse a través de la red.
La propiedad de doble hash se puede usar de otra manera interesante. El usuario puede saber que una parte correspondiente tiene una copia de la TX completa al solicitar el hash intermedio, que solo puede generarse mediante el hash de la transacción completa. Esta ‘prueba de posesión’ está presente en Bitcoin y permite una funcionalidad compleja y la verificación de recursos cuando Bitcoin se usa en un entorno completamente de igual a igual.