Ir al contenido
Monedas Inteligentes
Criptomonedas

Qué son los contratos inteligentes y cómo funcionan

Un contrato inteligente es un programa que vive en una blockchain y se ejecuta solo cuando se cumplen sus condiciones. Te explicamos cómo funcionan, para qué sirven y qué riesgos tienen.

Por Equipo de Monedas InteligentesPublicado ⏱ 5 min de lectura

Flujo de código sobre un fondo azul oscuro
En este artículo
  1. La idea en una frase
  2. Una analogía: la máquina expendedora
  3. Cómo funciona paso a paso
  4. Para qué sirven: ejemplos
  5. Lo que sí aportan
  6. Lo que no son
  7. El problema de los oráculos
  8. Riesgos principales
  9. Auditorías: qué son y qué no son
  10. Cómo comprobar un contrato antes de usarlo
  11. Contratos inteligentes en otras redes
  12. Contratos inteligentes y el mundo real
  13. Resumen

Los contratos inteligentes (smart contracts) son una de las ideas que hacen distinta a Ethereum y a otras redes frente a Bitcoin. Gracias a ellos existen las finanzas descentralizadas, los NFT y miles de aplicaciones descentralizadas.

Pero el nombre confunde: no son «inteligentes» ni son, necesariamente, «contratos» en sentido jurídico. Veamos qué son realmente.

La idea en una frase

Un contrato inteligente es un programa que vive en una blockchain y ejecuta unas reglas automáticamente cuando se cumplen unas condiciones. Nadie tiene que vigilar ni aprobar cada paso: el código lo hace, y todos pueden comprobar lo que hará.

Una analogía: la máquina expendedora

La idea de un contrato automático se compara a menudo con una máquina expendedora:

  1. Tú metes una cantidad de dinero.
  2. Eliges un producto.
  3. Si la cantidad es suficiente, la máquina te entrega el producto y el cambio. Si no, te devuelve el dinero.

No hay un dependiente que decida. Las reglas están en la máquina. Un contrato inteligente hace lo mismo con activos digitales: si se cumple tal condición, ejecuta tal acción.

Cómo funciona paso a paso

  1. Alguien escribe el código. En Ethereum se suelen usar lenguajes especializados, como Solidity.
  2. Se publica en la blockchain. Esa operación cuesta una comisión y asigna una dirección al contrato.
  3. Cualquiera puede interactuar con él. Enviando una transacción a su dirección, se activa una función.
  4. La red lo ejecuta. Todos los nodos ejecutan el mismo código y obtienen el mismo resultado.
  5. El resultado queda registrado, y no se puede alterar.

Cada ejecución consume recursos, y por eso se paga una comisión de red, el gas. Lo vemos en qué es Ethereum.

Para qué sirven: ejemplos

UsoQué hace el contrato
Crear un tokenLleva la cuenta de quién tiene cuántas unidades y define cómo se transfieren. Mira qué es un token
Intercambio descentralizadoCambia un token por otro según una fórmula, sin intermediario
PréstamosGuarda las garantías y libera o liquida según el valor
Custodia condicionadaRetiene fondos hasta que se cumple una condición, como la entrega de algo
NFTRegistra quién es el propietario de un objeto digital único
Votaciones y organizacionesCuenta votos y ejecuta decisiones. Lee qué es una DAO
Pagos programadosLibera fondos en fechas o hitos

Lo que sí aportan

  • Automatización: se ejecutan sin intervención humana.
  • Transparencia: el código es público, y se puede revisar qué hará.
  • Menos intermediarios: no hace falta confiar en una entidad para que cumpla.
  • Disponibilidad: funcionan las 24 horas.
  • Composición: unos contratos pueden usar otros, como piezas de construcción.

Lo que no son

  • No son legalmente vinculantes por sí mismos. Que algo se ejecute en una blockchain no significa que un tribunal lo reconozca ni que cubra un acuerdo real.
  • No saben nada del mundo exterior. Un contrato no puede, por sí solo, saber el precio de una divisa o el resultado de un partido.
  • No son infalibles. Hacen lo que dice su código, no lo que su autor quería.

El problema de los oráculos

Para reaccionar a datos externos, como el precio de un activo o el tiempo, los contratos usan oráculos: servicios que llevan datos a la blockchain. Si el oráculo falla o es manipulado, el contrato actúa sobre datos incorrectos. Es uno de los puntos débiles más explotados.

Riesgos principales

1. Errores en el código

El código no se puede corregir fácilmente una vez publicado. Un error puede dejar fondos bloqueados o permitir que alguien los saque.

El caso más famoso es el de The DAO, en 2016. Un fallo permitió a un atacante extraer una parte importante de los fondos, y la comunidad de Ethereum acabó dividiéndose para revertirlo. Desde entonces ha habido muchos incidentes más, algunos de cientos de millones.

2. Contratos maliciosos

Cualquiera puede publicar un contrato. Algunos están diseñados para estafar:

  • Tokens que no se pueden vender una vez comprados.
  • Contratos que permiten al creador crear más unidades o retirar fondos.
  • Contratos que piden permisos para mover todos tus tokens.

Estas trampas son la base de muchas estafas con criptomonedas.

3. Permisos que concedes

Para operar, muchas aplicaciones te piden que apruebes que un contrato pueda mover una cantidad de tus tokens. Si la aprobación es ilimitada y el contrato resulta malicioso o vulnerable, puede vaciar ese token de tu wallet. Limita las aprobaciones y revoca las que ya no uses.

4. Contratos que se pueden cambiar

Algunos se diseñan para poder actualizarse mediante una clave de administrador. Es útil para corregir fallos, pero significa que alguien con esa clave puede cambiar las reglas. Comprueba si el contrato es modificable y quién lo controla.

5. Dependencias

Un contrato puede depender de otros contratos y de oráculos. El fallo de cualquiera de ellos se propaga.

Auditorías: qué son y qué no son

Una auditoría es la revisión del código por especialistas independientes, que buscan errores conocidos. Es una buena señal, pero:

  • No garantiza que no haya fallos. Hay proyectos auditados que han sido hackeados.
  • Solo cubre la versión revisada y el momento en que se hizo.
  • Puede no incluir los contratos que dependen del proyecto.

Valora quién auditó, cuándo y qué se encontró.

Cómo comprobar un contrato antes de usarlo

  1. Parte de la web oficial del proyecto, a la que llegas desde una fuente fiable, y toma de ahí la dirección del contrato.
  2. Mira la dirección en un explorador de bloques. Compara que coincide con la oficial.
  3. Comprueba si el código está verificado y publicado.
  4. Mira la antigüedad y la actividad: cuántas personas lo usan y desde cuándo.
  5. Revisa si hay auditorías y qué dicen.
  6. Lee los permisos que te pide tu wallet antes de firmar.
  7. Empieza con un importe pequeño si es la primera vez.

Contratos inteligentes en otras redes

Ethereum no es la única red con contratos inteligentes. Existen otras con distintos lenguajes y modelos, y las redes de capa 2 ejecutan contratos con comisiones más bajas. Bitcoin permite lógica mucho más limitada, por diseño.

Contratos inteligentes y el mundo real

Se experimenta con contratos para seguros, para cadenas de suministro o para representar activos del mundo real. Los obstáculos son los mismos: conectar datos externos con fiabilidad, el encaje legal y la dificultad de corregir errores. Para entender la tecnología de base, lee qué es una blockchain.

Resumen

  • Un contrato inteligente es código que se ejecuta solo en una blockchain.
  • Permite crear tokens, intercambios, préstamos y organizaciones sin intermediario.
  • No es un contrato legal en sí, y hace lo que dice su código, errores incluidos.
  • Los riesgos principales son los fallos, los contratos maliciosos y los permisos que concedes.
  • Antes de interactuar, comprueba la dirección, el código y los permisos, y empieza con poco.

Nada de lo anterior es una recomendación de uso ni de inversión: son herramientas técnicas con riesgos reales.

Preguntas frecuentes

1¿Qué es un contrato inteligente?
Es un programa almacenado en una blockchain que ejecuta automáticamente unas reglas cuando se cumplen unas condiciones, sin que haga falta un intermediario.
2¿Un contrato inteligente es un contrato legal?
No necesariamente. Es código que se ejecuta solo. Que tenga o no validez jurídica depende de cada caso y de la normativa aplicable, y el nombre es engañoso.
3¿Se puede modificar un contrato inteligente?
Por defecto, una vez publicado no se puede cambiar. Algunos se diseñan para poder actualizarse, lo que añade flexibilidad pero también un punto de confianza.
4¿Son seguros los contratos inteligentes?
Hacen exactamente lo que dice su código, y eso incluye sus errores. Ha habido fallos que han costado cientos de millones. Las auditorías ayudan, pero no garantizan nada.

Artículos relacionados