Los contratos inteligentes funcionan de una manera muy parecida a una máquina expendedora. Después de que introduces las monedas, eliges la bebida que deseas y, si has pagado la cantidad correcta, la máquina entrega automáticamente la lata. Todo está programado de antemano. Cuando se cumple una condición, se ejecuta una acción. Esa idea inspiró al informático y jurista Nick Szabo, quien en 1994 propuso el concepto de los contratos inteligentes.
A diferencia de un contrato tradicional escrito en papel y sujeto a la interpretación de abogados o jueces, un contrato inteligente es un programa informático que se ejecuta sobre una cadena de bloques o blockchain, un registro digital distribuido que se mantiene sincronizado entre miles de computadoras. En ese programa se establecen reglas muy precisas. Por ejemplo: “si se recibe este pago, entonces se transfiere este activo digital”. Cuando las condiciones se cumplen, el contrato ejecuta automáticamente la acción prevista sin necesidad de que una persona intervenga. Además, una vez que el contrato ha sido desplegado en la red, sus reglas permanecen registradas de forma permanente, salvo que haya sido diseñado desde el principio para permitir actualizaciones o funciones de administración.
Todo el funcionamiento se basa en una lógica muy sencilla: “si ocurre esto, entonces sucede aquello”. Los desarrolladores escriben esas reglas utilizando lenguajes de programación especializados. El más conocido es Solidity, creado para desarrollar contratos inteligentes en Ethereum, la plataforma lanzada en 2015 que popularizó este tipo de aplicaciones y permitió crear contratos mucho más complejos que los posibles hasta entonces. Una vez compilado y publicado en la cadena de bloques, el contrato recibe una dirección propia, similar a una cuenta digital. A partir de ese momento, cualquier usuario puede interactuar con él para enviar o recibir criptomonedas, solicitar un préstamo, intercambiar activos digitales, participar en votaciones o realizar muchas otras operaciones. La red de computadoras verifica que cada paso siga exactamente las reglas establecidas y registra el resultado de forma permanente.
Un ejemplo es un préstamo entre dos personas. En un acuerdo tradicional, alguien presta dinero y ambas partes confían en que el deudor devolverá el préstamo en la fecha acordada. Si surge un problema, puede ser necesario acudir a abogados o tribunales. Con un contrato inteligente, ambas partes depositan los recursos necesarios en el programa: el prestamista aporta el dinero y el prestatario deja una garantía digital. El contrato revisa automáticamente las fechas, calcula los intereses y comprueba si el pago se realizó correctamente. Si todo se cumple, libera la garantía; si no, ejecuta las condiciones previstas sin discusiones ni intervención de terceros. Este mecanismo es el que utilizan muchas plataformas de finanzas descentralizadas, donde se administran miles de millones de dólares en activos mediante reglas escritas en código, sin necesidad de bancos o notarios.
Los contratos inteligentes también son fundamentales para los tokens no fungibles o NFT, que sirven para registrar la propiedad de obras de arte digitales, música, videojuegos y otros objetos virtuales. Cuando una persona compra un NFT, el contrato verifica el pago, transfiere automáticamente la propiedad y actualiza el registro público. Otro ejemplo es el de un seguro de viaje. Si un vuelo se retrasa más tiempo del establecido en la póliza, un servicio externo conocido como oráculo comunica esa información al contrato inteligente, que puede calcular y enviar la indemnización directamente a la billetera digital del asegurado. De esta forma, el proceso puede realizarse sin formularios, largas esperas ni reclamaciones manuales.
Una de las principales ventajas de estos programas es la transparencia. En muchas cadenas de bloques públicas, tanto el código del contrato como su historial de transacciones pueden ser revisados por cualquier persona, aunque en algunos casos solo está disponible el código compilado y no el código fuente original. Esta apertura permite que especialistas independientes analicen su funcionamiento y detecten posibles errores antes de que sean utilizados por un gran número de personas. Además, las operaciones registradas en la cadena de bloques normalmente no pueden modificarse, lo que reduce las disputas sobre si un acuerdo se cumplió o no. Sin embargo, esa misma característica también representa un desafío. Si un contrato contiene un error de programación o una vulnerabilidad, las consecuencias pueden ser importantes. Por esa razón, antes de poner en funcionamiento contratos que administran recursos valiosos, los desarrolladores realizan pruebas exhaustivas, auditorías de seguridad y revisiones independientes.
En la actualidad, los contratos inteligentes son la base de gran parte del ecosistema de las finanzas descentralizadas, de los mercados de NFT, de las organizaciones autónomas descentralizadas y de numerosas aplicaciones para gestionar cadenas de suministro, donde es posible rastrear un producto desde su origen hasta el consumidor final y liberar pagos automáticamente conforme se verifican determinadas etapas del proceso. Aunque a menudo se les relaciona con tecnologías avanzadas, no son sistemas de inteligencia artificial capaces de tomar decisiones por sí mismos. Son programas deterministas que ejecutan exactamente las instrucciones para las que fueron diseñados, una y otra vez, con la misma precisión que una máquina expendedora correctamente configurada.
Un incidente muy conocido ocurrió en 2017 con las billeteras multifirma desarrolladas por Parity Technologies. Un usuario activó accidentalmente una función de inicialización en una biblioteca compartida por numerosos contratos inteligentes y posteriormente destruyó esa biblioteca, de la cual dependían cientos de billeteras. Como consecuencia, aproximadamente 513000 ETH quedaron bloqueados de forma permanente, con un valor que entonces ascendía a cientos de millones de dólares y que hoy equivaldría a una cantidad mucho mayor. Un simple error de programación o de diseño puede tener consecuencias irreversibles.
La razón de estos incidentes es que los contratos inteligentes son completamente deterministas: ejecutan exactamente las instrucciones que contienen, sin interpretar las intenciones de las personas ni considerar circunstancias externas. Si el programa presenta un error lógico o una vulnerabilidad, la red continuará ejecutándolo tal como fue escrito. Para una computadora no existen conceptos como buena fe, sentido común o justicia; únicamente existen reglas que deben cumplirse de manera estricta.
En determinados momentos, especialmente durante el lanzamiento de colecciones muy populares de NFT o de nuevos proyectos de criptomonedas, miles de personas intentan interactuar simultáneamente con el mismo contrato inteligente. Los usuarios aumentan voluntariamente las comisiones que ofrecen para que sus transacciones sean procesadas antes que las de los demás. En situaciones de congestión extrema, algunos participantes han llegado a pagar miles de dólares únicamente para obtener prioridad en la red.
La creatividad de algunos atacantes también ha dado lugar a sofisticadas trampas conocidas como honeypots. En estos casos, un desarrollador despliega un contrato inteligente que aparenta contener una vulnerabilidad fácil de explotar. Cuando un atacante intenta aprovechar esa supuesta falla para quedarse con los fondos, descubre demasiado tarde que el propio contrato contiene instrucciones ocultas que redirigen el dinero hacia su creador. De este modo, quien pretendía realizar el ataque termina siendo la víctima.
El reconocimiento legal de esta tecnología también ha comenzado a evolucionar. Algunas jurisdicciones han aprobado normas que reconocen la validez jurídica de determinados contratos electrónicos y registros basados en blockchain. Sin embargo, esto no significa que cualquier contrato inteligente tenga automáticamente fuerza legal, ya que su validez sigue dependiendo del cumplimiento de los requisitos establecidos por la legislación aplicable.
Una de las aplicaciones más sorprendentes de los contratos inteligentes son los llamados préstamos relámpago o flash loans. Estos permiten solicitar préstamos equivalentes a millones o incluso decenas de millones de dólares sin aportar garantías. La condición es muy estricta: todo el proceso de pedir prestado, utilizar los fondos, realizar operaciones financieras y devolver íntegramente el préstamo debe completarse dentro de una única transacción de la cadena de bloques. Si al finalizar la operación el dinero no ha sido devuelto en su totalidad, la transacción completa se cancela automáticamente y todas las operaciones realizadas se revierten como si nunca hubieran ocurrido.
Además, aún existen desafíos relacionados con la escalabilidad de las redes, los costos de las transacciones y la evolución de los marcos legales, pero su capacidad para automatizar acuerdos, reducir costos, disminuir la necesidad de intermediarios y generar confianza entre personas que no se conocen los convierte en una de las innovaciones más importantes surgidas de la tecnología blockchain.
Referencias: