Cómo funciona una transacción de Bitcoin

cómo funciona una transacción de bitcoinEste artículo explica qué es una transacción de Bitcoin , su propósito y resultado. La explicación a continuación es adecuada tanto para principiantes como para usuarios intermedios de Bitcoin.

Como usuario de criptomonedas, debe familiarizarse con los rudimentos de las transacciones, en aras de su propia confianza con esta innovación en evolución, y como base para comprender las transacciones y contratosemergentes de múltiples firmas , que serán explorados más adelante en la serie. Este no es un artículo técnico y la explicación se enfocará en lo que necesita saber sobre las transacciones de bitcoin estándar , las transacciones de gastos que comúnmente realizamos, y pasaremos por alto lo que puede ignorar de manera segura.

Una infografía en la parte inferior del artículo proporciona una ilustración completa de todo el proceso de transacción de Bitcoin de billetera a cadena de bloques.

Nota: Incluso los desarrolladores de Core reconocen que parte del lenguaje que se usa para describir las transacciones y sus componentes puede conducir a un concepto erróneo de lo que realmente está sucediendo. Estas ideas erróneas se evitan en la explicación a continuación. Por lo tanto, al tratar de mantener las cosas lo más simple posible, y con la ayuda de algunos diagramas, vamos a sumergirnos.

Definición de términos y abreviaturas

Bitcoin con una “B” mayúscula se refiere al protocolo: el código, los nodos, la red y su interacción entre iguales.
bitcoin con una ‘b’ minúscula se refiere a la moneda, la criptomoneda que enviamos y recibimos a través de la red de Bitcoin.
tx , donde sea que se use en el texto, es la abreviatura de ” transacción de Bitcoin ”
txid es una abreviación de “identificación de transacción”; es un hash que utilizan los humanos y el protocolo para las transacciones de referencia.
Guiónes el nombre del sistema de scripting del protocolo Bitcoin que procesa y valida las transacciones. Script es un ingenioso motor de instrucciones basado en la pila que posibilita todas las transacciones, desde pagos simples hasta contratos complejos supervisados ​​por Oracle.
UTXO es la abreviatura de Salida de transacción no utilizada , también conocida como “salida”.
satoshi – 1 BTC = 100,000,000 satoshi

¿Qué es una transacción de Bitcoin y por qué?

Definición

Una transacción de Bitcoin es una pieza de datos firmada que se transmite a la red y, si es válida, termina en un bloque en la cadena de bloques.

Propósito

El objetivo de una transacción de Bitcoin es transferir la propiedad de una cantidad de Bitcoin a una dirección de Bitcoin.

Salir

Cuando envía Bitcoin, el cliente de monedero crea una estructura de datos única, concretamente una transacción de Bitcoin, y luego la transmite a la red. Los nodos de Bitcoin en la red retransmitirán y retransmitirán la transacción, y si la transacción es válida, los nodos la incluirán en el bloque que están extrayendo. Por lo general, dentro de 10-20 minutos, la transacción se incluirá, junto con otras transacciones, en un bloque en la cadena de bloques. En este punto, el receptor puede ver el monto de la transacción en su billetera.

Ejemplo

Aquí hay una transacción de ejemplo que se incluyó en el blockchain a principios de este año:
Transacción de ejemplo de Bitcoin

Los principales componentes de esta transacción estándar están codificados por colores:

  • ID de transacción (resaltado en amarillo)
  • Descriptores y metadatos (llavero azul elaborado a la derecha)
  • Entradas (área rosada)
  • Salidas (área verde)

Entradas y salidas de transacciones de Bitcoin

En primer lugar, cuatro verdades axiomáticas sobre las transacciones:

  • Cualquier cantidad de Bitcoin que enviamos siempre se envía a una dirección.
  • Cualquier cantidad de Bitcoin que recibamos está bloqueada a la dirección de recepción, que (normalmente) está asociada a nuestra billetera.
  • Cada vez que gastamos Bitcoin, el monto que gastemos siempre vendrá de fondos recibidos previamente y actualmente presentes en nuestra billetera.
  • Las direcciones reciben Bitcoin, pero no envían Bitcoin – Bitcoin se envía desde una billetera.

Las cantidades que entran en nuestra billetera no se mezclan como las monedas en una billetera física. Las cantidades recibidas no se mezclan sino que permanecen separadas y distintas a las cantidades exactas recibidas por la billetera. Aquí hay una ilustración:

Ejemplo

Usted crea una billetera completamente nueva y, con el tiempo, recibe tres cantidades de 0.01, 0.2 y 3 BTC de la siguiente manera: envía 3 BTC a una dirección asociada con la billetera y Alice realiza dos pagos a otra dirección. La billetera reporta un saldo de 3.21 BTC, pero si pudieras echar un vistazo dentro de la billetera, verías – no 321,000,000 satoshi (321 mil satoshi) – sino tres cantidades distintas aún agrupadas por sus transacciones de origen: 0.01, 0.2 y 3 BTC. Las cantidades de bitcoin recibidas no se mezclan, sino que permanecen separadas como las cantidades exactas enviadas a la billetera. Las tres cantidades en el ejemplo anterior se llaman salidas de sus transacciones de origen.
Transacciones de Bitcoin Enviar a Wallet

Bitcoin_Transactions_wallet

Las billeteras de Bitcoin siempre mantienen las salidas separadas y distintas.

Definición

Un resultado es una cantidad que se envió (a través de una transacción estándar) a una dirección de Bitcoin, junto con un conjunto de reglas para desbloquear el importe de salida. En el lenguaje de Bitcoin, un resultado se denomina “salida de transacción no gastada” o UTXO .

Se puede desbloquear una salida de transacción estándar con la clave privada asociada a la dirección de recepción. Las direcciones y sus pares de claves públicas / privadas asociadas se tratarán más adelante en la serie. Por ahora, nos preocupa el monto del producto solamente.

Ejemplo

Consideremos un ejemplo siguiendo el dinero en un escenario en el que envía 0.15 BTC a Bob.

Como hemos visto, su billetera no selecciona 15 mil satoshi (0.15 BTC) de un grupo indiferenciado de 321 mil satoshi que componen el saldo de la billetera. En cambio, la billetera selecciona un candidato de gasto de entre las tres “salidas” existentes contenidas en la billetera. Entonces, elige (por varias razones que ahora no son importantes) la salida de 0.2 BTC. La billetera desbloqueará la salida de 0.2 BTC y usará la cantidad total de 0.2 BTC como entrada para su nueva transacción de 0.15 BTC. La salida de 0,2 BTC se “gasta” en el proceso. – Lee este párrafo por segunda vez.

Transacciones de Bitcoin a Bob

La transacción de gastos que crea su billetera enviará 0.15 BTC a la dirección de Bob, donde residirá en su billetera como salida, esperando finalmente que se gaste.

La diferencia de 0.05 BTC (entrada de 0,2 BTC menos salida de 0,15 BTC) se llama “cambio” y la transacción se enviará de vuelta a su billetera a través de una dirección recién creada. La cantidad de cambio de 0.05 BTC residirá en su billetera como una nueva salida, esperando eventualmente ser gastada. Entonces, ahora, un vistazo virtual dentro de su billetera revela lo siguiente:

Cambio de Balance de Transacciones de Bitcoin

Cada una de las tres salidas que están “esperando ser gastadas”, está bloqueada a sus direcciones de recepción hasta que una o más de ellas sean seleccionadas como entrada (s) a una nueva transacción de gasto.

Detrás de escena, diferentes clientes de billetera aplican diferentes reglas lógicas cuando seleccionan UTXO como entradas para nuevas transacciones. Una política de billetera sana es utilizar primero UTXOs más antiguas, siempre que sea posible, pero las implementaciones difieren. La manera en que se seleccionan los UTXOs no nos concierne en este momento, ya que el objetivo ha sido enfatizar el hecho de que los montos recibidos en nuestros monederos permanecen separados y distintos.

Resumen de cómo funciona una transacción de Bitcoin

Varias cantidades recibidas no se mezclan como lo hacen en una billetera física. En cambio, las cantidades recibidas (UTXO) se usan individualmente (o en combinación) en el momento en que gastamos Bitcoin. Al crear la transacción de gasto, nuestra billetera selecciona UTXO (de un valor suficiente para satisfacer la cantidad que queremos enviar) y normalmente crea dos nuevos productos: uno para el receptor y otro para el cambio que recibimos en nuestro monedero. El cambio se convierte en un nuevo UTXO en nuestra billetera, y el monto que enviamos se convierte en un UTXO bloqueado en la dirección del destinatario, que puede o no estar asociado a una billetera, por ejemplo, almacenamiento en frío. El UTXO original utilizado como entrada para la transacción de gasto se “gasta” y se destruye para siempre.

Esta ha sido una introducción a cómo las salidas (UTXO) son manejadas por el software de billetera. Una vez que se selecciona un gasto de UTXO, se requiere la clave privada asociada con la dirección que lo recibió. Esta clave privada redime el UTXO y le permite convertirse en una entrada en una nueva transacción de gasto. El mecanismo mediante el cual se reutilizan los resultados de las transacciones anteriores, ya que las entradas a las nuevas transacciones son fundamentales para la función del protocolo de Bitcoin, y exactamente según el diseño de Satoshi.

DEJA UNA RESPUESTA

Please enter your comment!
Please enter your name here