Saltar al contenido

Modelo UTXO

Descubre cómo Bitcoin representa el valor gastable mediante salidas de transacción no gastadas, valida el gasto, crea el cambio y plantea decisiones sobre selección de monedas, comisiones y privacidad.

Actualizado

Contenido exclusivamente educativo; no constituye asesoramiento de inversión. Invertir puede ocasionar pérdidas.

Respuesta directa

El modelo de salidas de transacción no gastadas (UTXO) representa el valor disponible mediante salidas independientes, no como un único saldo asociado a una cuenta. En Bitcoin, la entrada de una transacción ordinaria identifica una salida anterior mediante el identificador de la transacción y el índice de salida. Esa salida registra un importe y un script de bloqueo. El saldo que muestra una cartera es la suma calculada de las salidas que puede gastar, no un campo de saldo guardado en una dirección.

Cada salida se gasta por completo. Si las entradas elegidas superan el pago y la comisión, la transacción debe crear expresamente una salida de cambio; el protocolo no devuelve el cambio de forma automática. Una transacción puede consumir varias UTXO existentes y crear varias nuevas, cada una con su propio importe y sus condiciones de gasto.

Funcionamiento

Para que una transacción ordinaria que no sea coinbase sea válida, toda salida referenciada debe existir y seguir sin gastar, cada entrada debe satisfacer las condiciones de bloqueo de la salida correspondiente y el valor total de las salidas no puede superar el de las entradas. La diferencia queda disponible como comisión de transacción:

fee = sum(inputs) - sum(outputs)

Cuando un nodo acepta bloques, elimina del conjunto UTXO actual las salidas consumidas y añade las recién creadas. El historial de bloques sigue siendo necesario para verificar y reconstruir ese estado. Una reorganización de la cadena puede sustituir bloques recientes, por lo que las salidas próximas a la punta pueden volver a estar sin confirmar o desaparecer del historial aceptado.

En un mismo historial de cadena aceptado, una salida concreta solo puede consumirse una vez. Varias transacciones sin confirmar pueden competir por gastar la misma salida, pero la admisión y la sustitución en el mempool son políticas del nodo, no reglas que validen un doble gasto en cadena. BIP 125 define la señalización y la política de sustitución voluntaria; por tanto, recibir una transacción sin confirmar no equivale a una liquidación definitiva.

El espacio de bloque de Bitcoin se valora principalmente según el peso de la transacción y la tarifa por unidad, no según el importe transferido. BIP 141 define virtual size = ceil(weight / 4). Las entradas suelen aportar más datos que las salidas, de modo que gastar muchas UTXO pequeñas puede costar más que gastar una grande con la misma tarifa. El tamaño exacto depende de los tipos de script y witness empleados.

Las transacciones que gastan UTXO diferentes tienen dependencias de entrada separadas, lo que puede facilitar la validación y construcción en paralelo. No son independientes de forma automática en toda implementación o aplicación: dos transacciones que seleccionen la misma salida entran en conflicto, y las descendientes dependen de sus transacciones madre sin confirmar. La selección de monedas de la cartera debe coordinar estas dependencias.

Las UTXO no proporcionan anonimato. Combinar entradas puede sugerir un control común, y los patrones de detección del cambio o la reutilización de direcciones pueden relacionar actividades. Son heurísticas, no pruebas criptográficas, pero una consolidación puede revelar vínculos que no aparecerían al gastar por separado.

Frente al modelo de cuentas, el modelo UTXO hace explícitos cada objeto gastable y su ruta de consumo. Los sistemas de cuentas suelen actualizar un estado compartido, como saldos y nonces. Ningún modelo es universalmente superior: ofrecen compromisos distintos en representación del estado, programabilidad, concurrencia y diseño de carteras.

Ejemplo práctico

Alice controla UTXO de 0.08 BTC, 0.12 BTC y 0.50 BTC. Para pagar 0.15 BTC a Bob, su cartera selecciona las dos primeras entradas, que suman 0.20 BTC, y estima una comisión de 0.0002 BTC. Crea estas salidas:

  • Bob: 0.15 BTC
  • Cambio de Alice: 0.0498 BTC

El cálculo es 0.20 - 0.15 - 0.0002 = 0.0498 BTC. Tras la confirmación, las salidas de 0.08 BTC y 0.12 BTC quedan gastadas; la salida de Bob y el cambio de Alice son UTXO nuevas; la salida de 0.50 BTC permanece intacta.

Si la transacción solo creara la salida de Bob de 0.15 BTC, los 0.05 BTC omitidos serían comisión, no un reembolso automático. La cartera también podría elegir otras entradas, agrupar varios pagos o consolidar salidas pequeñas cuando las tarifas sean menores. Estas decisiones contraponen comisiones presentes y futuras, fiabilidad de confirmación y privacidad.

Riesgos y controles

  • Riesgo de comisión: las UTXO fragmentadas añaden peso de entrada; conviene estimar la transacción firmada y su tarifa antes de difundirla.
  • Riesgo de privacidad: consolidar entradas y generar un cambio reconocible puede vincular direcciones; una dirección nueva no garantiza la desvinculación.
  • Riesgo de confirmación: las transacciones en conflicto, la política de sustitución y las reorganizaciones hacen reversibles los cobros sin confirmar.
  • Riesgo de recuperación: la cadena almacena las UTXO, mientras la cartera conserva o deriva las claves y los datos de descubrimiento necesarios para localizarlas y gastarlas; deben respaldarse todos los factores de recuperación.

Errores frecuentes

Una dirección es una cuenta permanente

Una dirección codifica o representa condiciones de gasto. Una cartera puede controlar salidas enviadas a muchas direcciones de recepción y de cambio, por lo que una sola dirección no refleja todo su estado.

Las comisiones son proporcionales al pago

Dependen principalmente del peso de la transacción y de la tarifa elegida. Un pago de gran valor con pocas entradas puede ser más pequeño y barato que uno de poco valor compuesto por muchas entradas.

El protocolo crea el cambio automáticamente

El cambio es una salida ordinaria que la cartera del pagador construye deliberadamente. El minero puede percibir como comisión cualquier valor de entrada que no se asigne a salidas.

Sin confirmar significa liquidado

Un mempool es la vista provisional de un nodo, no un libro mayor de consenso. Las políticas de admisión, sustitución y expulsión varían, y el riesgo de confirmación disminuye con el tiempo en vez de desaparecer al difundir la transacción.

Temas relacionados

Fuentes

Navegación

Buscar en la wiki...