Contrato inteligente

Un contrato inteligente es un programa autoejecutable almacenado en una blockchain que se ejecuta cuando se cumplen condiciones predefinidas.

3 min de lectura
minería

Definición

Un contrato inteligente es un conjunto de reglas de gasto aplicadas por el software de la blockchain en lugar de una empresa, un banco o un tribunal. En Bitcoin, esto suele significar condiciones escritas con Bitcoin Script, como exigir una firma digital válida, varias firmas, una preimagen de hash o un timelock antes de que las monedas puedan moverse. Los contratos inteligentes de Bitcoin son deliberadamente limitados en comparación con las plataformas de propósito general, pero no son complementos opcionales. Cada transacción de Bitcoin depende de reglas de script que definen quién puede gastar cada output.

Cómo funciona

Cuando un usuario de Bitcoin gasta monedas, la nueva transacción debe satisfacer las condiciones de bloqueo asociadas al output de la transacción anterior. Un pago simple dice, en la práctica, que solo el propietario de una clave pública específica puede gastar las monedas. Los scripts más avanzados pueden exigir dos de tres firmas, retrasar el gasto hasta una determinada altura de bloque o admitir canales de pago como la Lightning Network.

Los mineros no ejecutan código de aplicación arbitrario mientras minan. Su tarea principal es reunir transacciones válidas, construir un bloque candidato y realizar hashing de prueba-de-trabajo hasta que el encabezado del bloque esté por debajo del objetivo actual. Antes de que un pool mine sobre una plantilla de bloque, su nodo comprueba que cada input no haya sido gastado, que los scripts se evalúen correctamente y que no se infrinjan las reglas de consenso. Si se incluye un gasto inválido de un contrato inteligente, otros nodos rechazan el bloque, lo que vuelve inútiles el trabajo del minero y la recompensa esperada.

Por qué importa

Los contratos inteligentes importan para la minería de Bitcoin porque los mineros solo reciben pago cuando la red acepta sus bloques. La tasa de hash ayuda a un minero a encontrar un encabezado de bloque válido, pero la validación determina si ese bloque tiene algún valor. Un bloque puede tener un Proof of Work válido y aun así ser rechazado si contiene una transacción que falla sus comprobaciones de script o gasta monedas antes de que expire un timelock.

Para los usuarios y los mineros, el modelo de contratos restringido de Bitcoin es un compromiso. Evita muchos riesgos de los programas on-chain complejos y, al mismo tiempo, permite controles de custodia, acuerdos similares a escrow, diseños de vaults, canales de pago y transacciones de pago de pools. Los pools de minería pueden usar reglas de contabilidad off-chain para registrar shares y calcular recompensas, pero Bitcoin en sí solo aplica las transacciones on-chain finales que aparecen en bloques aceptados.

Términos relacionados

Los contratos inteligentes conectan las reglas de transacción con los incentivos de la minería. Entre las ideas relacionadas se incluyen la validación de transacciones, las plantillas de bloque, los timelocks, las billeteras multifirma y las comisiones de transacción. Para ubicar el término dentro del flujo de trabajo más amplio de la minería, consulta ¿Qué es la minería de Bitcoin?, que cubre la construcción de bloques, las recompensas y la competencia entre mineros. También ayuda entender las billeteras, las claves privadas y las firmas digitales, porque la mayoría de los scripts de Bitcoin en última instancia demuestran que quien gasta tiene autoridad para mover monedas específicas.