Bloque — Comisiones — Miedo y codicia —
Glosario Calculadora fiscal Autores
Ethereum Ethereum desk

Qué es un smart contract y cómo funciona en Ethereum

Un smart contract es un programa almacenado en Ethereum que se ejecuta automáticamente cuando se cumplen ciertas condiciones, sin que ninguna persona o empresa tenga que intervenir. Entender cómo funciona explica por qué Ethereum es algo más que una criptomoneda.

Smartphone displaying blockchain application resting on a laptop, symbolizing modern technology and finance.

Photo by Morthy Jameson on Pexels

Un smart contract (contrato inteligente) es un programa que vive en la blockchain de Ethereum y se ejecuta solo cuando se cumplen las condiciones que alguien codificó en él. No hay banco, notario ni empresa que lo active: lo activa el propio código, de forma automática y transparente.

La idea suena abstracta, pero la mecánica es concreta. Alguien escribe las reglas en un lenguaje de programación llamado Solidity, las publica en Ethereum y, a partir de ese momento, el contrato existe de forma permanente en la red. Nadie puede borrarlo ni modificarlo sin las condiciones que el propio contrato establezca.

La analogía que más se acerca a la realidad

Piensa en una máquina expendedora. Metes una moneda, seleccionas el producto y la máquina lo entrega: no necesita vendedor, no puede darte cambio de más si el código funciona bien y no acepta monedas falsas. Un smart contract funciona igual, pero en lugar de refrescos puede mover ETH, emitir tokens, registrar votos o liberar fondos de una hipoteca.

La diferencia clave respecto a una máquina expendedora real es que el código del contrato es público. Cualquiera puede leerlo antes de interactuar con él. Si la lógica dice "envía 1 ETH a X cuando Y deposite 2 ETH", esa regla es verificable por cualquier persona con acceso a un explorador de bloques como Etherscan.

Cómo se despliega y ejecuta un contrato inteligente

El proceso tiene tres fases que conviene distinguir:

  • Escritura: el desarrollador redacta el contrato en Solidity (u otros lenguajes como Vyper). Define las variables de estado, las funciones que acepta y las condiciones bajo las que opera.
  • Despliegue: el contrato se publica en Ethereum pagando una comisión de gas. Desde ese instante recibe una dirección propia, igual que una wallet. Esa dirección es su identidad permanente en la red.
  • Ejecución: cuando alguien envía una transacción a esa dirección, la Ethereum Virtual Machine ejecuta el código instrucción por instrucción. Cada instrucción consume una cantidad de gas, que paga quien llama al contrato.

El gas no es arbitrario. Cada operación tiene un coste fijo en unidades de gas, y ese sistema evita que un contrato mal diseñado (o malicioso) consuma recursos ilimitados de la red. Si el gas se agota antes de terminar la ejecución, la operación se revierte pero la comisión no se devuelve.

Para qué sirven los contratos inteligentes en la práctica

Los usos más extendidos hoy son tres. El primero son los tokens: la mayoría de criptomonedas que no son Ethereum en sí mismas son simplemente contratos inteligentes que siguen un estándar llamado ERC-20. Cuando compras un token en un exchange descentralizado, estás interactuando con ese contrato.

El segundo uso es DeFi (finanzas descentralizadas). Los protocolos de préstamos, intercambio y liquidez funcionan como conjuntos de contratos que gestionan los fondos de los usuarios sin que ninguna empresa tenga acceso discrecional a ellos. Los rollups de Ethereum han hecho que usar estos contratos en la capa 2 cueste mucho menos que hacerlo directamente en la red principal.

El tercer uso son los NFT (tokens no fungibles): contratos que asocian una dirección de wallet a la propiedad de un ítem digital, con reglas de transferencia y regalías codificadas de antemano.

El problema de la inmutabilidad

Que un contrato no pueda modificarse una vez desplegado es su mayor fortaleza y su mayor debilidad a la vez.

La fortaleza es obvia: nadie puede cambiar las reglas del juego a mitad de partida. La debilidad es que si el código tiene un error, ese error es también permanente. En 2016, un fallo en un contrato conocido como "The DAO" permitió que un atacante drenara 3,6 millones de ETH. La solución requirió una bifurcación de la red (hard fork) que dividió a la comunidad de Ethereum.

Para mitigar este riesgo, los equipos de desarrollo usan contratos con proxies actualizables: el contrato principal delega la lógica a una dirección que sí puede cambiarse, siempre bajo condiciones que el propio sistema establece. No elimina el riesgo, pero permite corregir errores sin migrar todos los fondos.

Auditorías: la única defensa antes de interactuar

Antes de depositar fondos en cualquier protocolo basado en contratos inteligentes, conviene buscar si el código ha sido auditado por una firma especializada. Firmas como Trail of Bits, OpenZeppelin o Certora publican informes que detallan las vulnerabilidades encontradas y cuáles se corrigieron.

Una auditoría no garantiza que el código sea seguro: garantiza que alguien con experiencia lo revisó. Son cosas distintas. Un contrato puede superar una auditoría y ser explotado semanas después si el contexto del mercado cambia y abre vectores que el auditor no anticipó.

Si quieres saber cuánto cuesta interactuar con un contrato en un momento dado, el artículo sobre qué son las gas fees de Ethereum explica cómo se forman esas comisiones y cuándo conviene esperar.

Límites que la tecnología todavía no resuelve

Los contratos inteligentes no pueden acceder a datos del mundo real por sí solos. Si un contrato necesita saber el precio del petróleo o el resultado de un partido de fútbol, depende de fuentes externas llamadas oráculos (oracles). Chainlink es el más usado. Esto introduce un punto de confianza que el contrato, por sí solo, no puede eliminar.

Tampoco son legalmente vinculantes en la mayoría de jurisdicciones por el simple hecho de existir en la blockchain. Un contrato inteligente puede ejecutar pagos, pero no reemplaza un contrato mercantil firmado si la ley exige ese formato. En España, la regulación MiCA reconoce ciertos smart contracts en el contexto de emisiones de criptoactivos, pero el marco legal general todavía no equipara la ejecución en blockchain a la firma ante notario.

La tecnología es potente. Sus límites son igual de reales que sus capacidades, y conocerlos es lo que permite usarla con criterio.

⚠ Riesgo: los smart contracts pueden contener errores de código que resulten en pérdida de fondos. Antes de interactuar con un protocolo, verifica que el contrato haya sido auditado y que entiendas qué permisos le estás concediendo a tu wallet.

La información de este artículo tiene fines educativos y no constituye asesoramiento financiero, fiscal ni legal. Las criptomonedas son activos volátiles y puedes perder todo el capital invertido. Consulta con un profesional antes de tomar decisiones.