How do I look up a transaction on BTC?

Salidas de Bitcoin: ¿Qué son y cómo funcionan?

03/04/2022

Valoración: 4.95 (4794 votos)

Cuando realizas una transacción en la red de Bitcoin, estás interactuando con un sistema fascinante y complejo. Uno de los componentes más cruciales, aunque a menudo menos comprendido, de este proceso es la 'salida' o 'output'. En esencia, una salida (Output) es un paquete de bitcoins que se crea en cada transacción. Estos paquetes son los ladrillos fundamentales que permiten enviar y gastar valor en la red de Bitcoin, y entender su funcionamiento es clave para comprender verdaderamente cómo se mueve el dinero en la blockchain.

Why does my Bitcoin transaction have two outputs?
1 Answer 1 This is because for how transactions are designed in bitcoin when you make an outgoing transaction from an address you cannot use just a part of it. All of it must be spent in transaction (towards 1 or more addresses) and the rest goes to the miner as a fee. Thank you for the explanation.

Cada transacción puede crear múltiples salidas, y cada una de ellas contiene dos elementos principales: una cantidad específica de bitcoin y un 'candado' digital que la protege. Una transacción futura puede entonces gastar estas salidas (utilizándolas como 'entradas' o 'inputs') solo si puede 'desbloquear' ese candado. Una vez que una salida se ha gastado, no puede volver a utilizarse jamás. Este modelo, conocido como UTXO (Unspent Transaction Output), es el corazón de la contabilidad de Bitcoin.

Índice de contenido

La Analogía Perfecta: Cajas de Seguridad Digitales

Para visualizar cómo funcionan las salidas, imagina la blockchain de Bitcoin como una gigantesca bóveda bancaria llena de cajas de seguridad transparentes. Cada una de estas cajas es una 'salida'.

Cuando quieres enviar bitcoins, no simplemente 'transfieres' monedas de tu cuenta a otra. En su lugar, seleccionas una o más de tus cajas de seguridad (salidas no gastadas), las abres con tu clave privada, y creas nuevas cajas de seguridad. En una de estas nuevas cajas colocas los fondos que quieres enviar al destinatario y le pones un candado que solo él puede abrir (su dirección de Bitcoin). Si te sobra algo, creas otra caja para ti mismo con el cambio y le pones tu propio candado. Este proceso garantiza que solo el propietario legítimo pueda acceder y gastar los fondos.

El Concepto Clave: El Vuelto (Change)

Uno de los aspectos más importantes y que más confunde a los principiantes es el concepto del 'vuelto' o 'change'. En Bitcoin, cuando decides gastar una salida, debes usar su contenido completo. No puedes abrir una 'caja de seguridad' que contiene 1 BTC, tomar 0.2 BTC y dejar los 0.8 BTC restantes dentro. Debes vaciarla por completo.

Entonces, ¿qué sucede si tu salida contiene más bitcoins de los que deseas enviar? Aquí es donde entra en juego la salida de vuelto. Supongamos que tienes una salida de 1 BTC y quieres pagar a un amigo 0.2 BTC.

  1. Tu transacción tomará la salida de 1 BTC como entrada.
  2. Creará dos nuevas salidas:
    • Una salida de 0.2 BTC con un candado que tu amigo puede abrir (su dirección).
    • Una salida de 'vuelto' de 0.799 BTC (aproximadamente) con un candado que solo tú puedes abrir (una de tus direcciones).

¿Y qué pasa con la diferencia? Cualquier cantidad de la entrada que no se asigne a una nueva salida se considera la tarifa de transacción, que es la recompensa que se lleva el minero por incluir tu transacción en un bloque. Por lo tanto, si olvidas crear una salida de vuelto, ¡perderás una cantidad significativa de tus fondos, ya que se interpretará como una tarifa de minero muy generosa!

Aunque no hay una regla estricta, la mayoría de las billeteras de software crean la salida de vuelto como la última salida en la lista de una transacción.

La Estructura Técnica de una Salida

A nivel técnico, una salida dentro de los datos brutos de una transacción es relativamente simple. Se compone de tres campos principales que se repiten para cada salida creada.

Campo Ejemplo (Hex) Tamaño Descripción
Amount (Monto) e99e060000000000 8 bytes El valor de la salida en satoshis (la unidad más pequeña de Bitcoin), en formato little-endian.
ScriptPubKey Size 19 Variable El tamaño en bytes del siguiente campo, el ScriptPubKey.
ScriptPubKey [script] Variable El código de bloqueo que establece las condiciones para gastar esta salida.

Veamos cada componente en detalle:

  • Amount (Monto): Este campo de 8 bytes representa la cantidad de bitcoins, pero expresada en satoshis (1 BTC = 100,000,000 satoshis). El valor máximo que puede contener es mucho mayor que la cantidad total de bitcoins que existirán. Es importante notar que se almacena en formato little-endian, lo que significa que el orden de los bytes se invierte en los datos crudos.
  • ScriptPubKey Size (Tamaño del ScriptPubKey): Es un campo de tamaño compacto que simplemente le dice al sistema cuántos bytes leer para el siguiente campo.
  • ScriptPubKey (Script de Bloqueo): Este es el 'candado' de nuestra analogía. Es un pequeño programa escrito en el lenguaje de scripting de Bitcoin que define las condiciones necesarias para gastar los fondos. El tipo más común es el P2PKH (Pay-to-Public-Key-Hash), que básicamente dice: "Estos fondos solo pueden ser gastados por quien demuestre ser el dueño de la clave privada correspondiente a esta dirección pública". Otros tipos comunes incluyen P2WPKH, P2SH, etc.

Ejemplos de Transacciones en la Práctica

Analizar transacciones reales nos ayuda a cimentar estos conceptos.

Transacción con 1 Salida

Este es el caso más simple. Generalmente ocurre cuando un usuario quiere mover todos los fondos de una salida a una nueva dirección propia. Se gasta una entrada y se crea una única salida nueva, y el resto se convierte en la tarifa del minero.

Transacción con 2 Salidas

Este es el escenario más común. Refleja un pago y la recepción de un vuelto.

Análisis de una Transacción Típica con 2 Salidas
Output Monto (sats) Tipo de Script Propósito Probable
0 1,684,450 P2WPKH Pago a un tercero
1 215,880,776 P2PKH Vuelto devuelto al emisor

En este ejemplo, el emisor probablemente usó una entrada de un valor superior a 217,582,852 satoshis (la suma de las dos salidas). La primera salida fue el pago real, y la segunda, de mayor valor, fue el cambio que regresó a una de sus propias direcciones.

Transacción con Múltiples Salidas

La flexibilidad de Bitcoin permite crear tantas salidas como sea necesario (siempre que la transacción quepa en un bloque). Esto es útil para realizar pagos masivos, como los que hacen los exchanges o las pools de minería para pagar a muchos usuarios a la vez. Una transacción puede tener 2 entradas y 3, 10 o incluso miles de salidas.

Casos Especiales: Salidas de Monto Cero

Es técnicamente posible crear una salida con un valor de 0 satoshis. Aunque no tiene valor monetario, puede usarse para otros fines, como registrar datos en la blockchain a través de un script `OP_RETURN`. También puede ocurrir en transacciones complejas donde los cálculos resultan en una salida sin valor, aunque es poco común.

Preguntas Frecuentes (FAQ)

¿Qué pasa si olvido añadir una salida de vuelto?

La diferencia completa entre el valor de tus entradas y el valor de la salida del pago será interpretada como la tarifa de transacción. Esto significa que entregarás una propina muy grande al minero y perderás esos fondos para siempre. Afortunadamente, las billeteras modernas manejan esto automáticamente por ti.

¿Cuántas salidas puede tener una transacción?

No hay un límite fijo en el protocolo, más allá del límite de tamaño total de la transacción, que debe caber dentro de un bloque de la blockchain. Se han visto transacciones con más de 13,000 salidas.

¿Qué es el modelo UTXO?

UTXO son las siglas de 'Unspent Transaction Output' (Salida de Transacción No Gastada). Es el modelo de contabilidad de Bitcoin. En lugar de tener 'saldos' en cuentas, tu billetera gestiona una lista de UTXOs (las 'cajas de seguridad') que puedes gastar. Tu saldo total es la suma de todas tus UTXOs.

¿Es posible que una salida no tenga candado (ScriptPubKey vacío)?

Sí, es posible crear una salida con un ScriptPubKey vacío. Esto la haría gastable por cualquiera. Sin embargo, si el monto de dicha salida también es cero, no hay ningún incentivo para gastarla. Generalmente, este tipo de transacciones extrañas ocurren cuando un usuario decide 'quemar' sus fondos, donando todo el valor de las entradas a los mineros como tarifa.

Conclusión

Las salidas de transacción son mucho más que simples receptores de fondos; son el mecanismo dinámico y flexible que impulsa toda la red de Bitcoin. Entenderlas como cajas de seguridad digitales con montos y candados específicos, y comprender el papel fundamental del vuelto, te proporciona una visión mucho más profunda y precisa de cómo funciona realmente cada transferencia. La próxima vez que envíes o recibas bitcoin, sabrás que no estás moviendo monedas, sino desbloqueando viejas salidas y forjando nuevas en la inmutable cadena de bloques.

Si quieres conocer otros artículos parecidos a Salidas de Bitcoin: ¿Qué son y cómo funcionan? puedes visitar la categoría Bitcoin.

Subir