Contratos Inteligentes
Este elemento es una ampliación de los cursos y guías de Lawi. Ofrece hechos, comentarios y análisis sobre este tema. [aioseo_breadcrumbs] Véase Blockchain en el Arbitraje Internacional.
El interés por los “contratos inteligentes” ha estallado en los últimos meses. Se trata de acuerdos escritos con código de computadora que se ejecutan en redes de “contabilidad distribuida”.
Un “blockchain” o “cadenas de bloques”, es un mecanismo para autenticar transacciones en una red de equipos mediante los cuales todos los nodos participantes actualizan el libro completo de transacciones y comparan los resultados en tiempo real.
Una Conclusión
Por lo tanto, no hay necesidad de depender de una parte central de “confianza” para asegurar la verificación: la integridad del sistema proviene del hecho de que todos los participantes autentican por separado cada transacción y luego se refieren en forma de referencia cruzada. Cada transacción tiene un identificador único, o ‘hash’, y los detalles se codifican utilizando una clave que solo los participantes pueden desbloquear.
La tecnología de contabilidad distribuida primero salió al conocimiento público en forma de ‘Bitcoin’, la moneda virtual, que utiliza este mecanismo para asegurar la integridad de las transacciones.
Puntualización
Sin embargo, desde entonces han surgido otras redes que utilizan el mismo principio que permiten una amplia gama de condiciones en la construcción de las transacciones. Estos pueden ser autoejecutables cuando las condiciones son desencadenadas por algunos datos de entrada digital verificable. Por ejemplo, las instituciones financieras podrían organizar un intercambio, un swap, de tipos de interés, y los pagos se condicionarían en función del promedio de una serie de fuentes de información confiables sobre los tipos de interés.
A medida que crece y se desarrolla la “Internet de las cosas” [el concepto de conectar básicamente cualquier dispositivo con un interruptor de encendido y apagado a Internet (y/o el uno al otro). Esto incluye todo, desde teléfonos móviles, cafeteras, lavadoras, auriculares, lámparas, dispositivos portátiles y casi cualquier otra cosa física. Esto también se aplica a los componentes de máquinas. Si tiene un interruptor de encendido y apagado, entonces lo más probable es que puede ser una parte del Internet de las cosas], las posibilidades de entradas y salidas digitales de los contratos inteligentes se expanden rápidamente. Actualmente se está calentando una carrera entre una gama de participantes que buscan desarrollar una interfaz para escribir contratos inteligentes que sean suficientemente fáciles de usar para ser ampliamente adoptados.
Estos desarrollos desafiarán algunas reglas y prácticas legales establecidas. Los contratos inteligentes, por ejemplo, presentan un problema para el ejercicio forense de la interpretación contractual. Actualmente, cuando el significado de un contrato es impugnado por las partes, un tribunal examinará lo que ese acuerdo significaría para un observador humano razonable.
Puntualización
Sin embargo, cuando ese acuerdo está escrito en código informático y destinado a la comunicación con una inteligencia artificial, la importancia de la interpretación de un observador humano razonable es una cuestión que no está clara. Y no hay tal cosa como un ordenador razonable. Si bien el tribunal puede, por supuesto, contratar los servicios de un programador profesional para traducir el código al lenguaje humano, el proceso de interpretación de ese idioma sigue siendo responsabilidad del juez. Dado que la arquitectura lógica del código informático es diferente a la empleada por el lenguaje humano, la tarea de interpretar esa traducción simplemente no es la misma que la tarea de interpretar el lenguaje destinado a la comprensión humana.
En términos más generales, los contratos inteligentes también son “sin confianza” en el sentido de que pueden utilizarse con satisfacción incluso ante la falta de confianza entre las partes interesadas. Esto se debe a que facilitan una simetría completa de la información y un proceso completamente transparente. Al hacerlo, bien pueden augurar una nueva era de prácticas de contratación; un entorno comercial “post-cooperativo”.
Es probable que estos desarrollos tecnológicos tengan, por tanto, un efecto disruptivo sobre el derecho privado, tanto conceptual como prácticamente. Si la ley sigue siendo relevante para la solución de controversias comerciales a escala global, necesita actualizar sus herramientas y conceptos doctrinales. El desafío para los abogados es determinar la mejor manera de hacerlo.
Cómo funcionan los contratos inteligentes
Nick Szabo introdujo este concepto en 1994 y definió un contrato inteligente como “un protocolo de transacción computarizado que ejecuta los términos de un contrato”. Szabo sugirió traducir las cláusulas contractuales (garantías, fianzas, etc.) a un código e incorporarlas a bienes (hardware o software) que puedan hacerlas cumplir por sí mismas, a fin de reducir al mínimo la necesidad de intermediarios de confianza entre las partes en la transacción y la aparición de excepciones maliciosas o accidentales.
En el contexto de la cadena de bloqueo, los contratos inteligentes son scripts almacenados en la cadena de bloqueo. (Pueden considerarse aproximadamente análogos a los procedimientos almacenados en los sistemas de gestión de bases de datos relacionales [46]. Dado que residen en la cadena, tienen una dirección única. Activamos un contrato inteligente dirigiendo una transacción a él. A continuación se ejecuta de manera independiente y automática de forma prescrita en cada nodo de la red, de acuerdo con los datos que se incluyeron en la transacción desencadenante. (Esto implica que cada nodo de una cadena de bloqueo inteligente habilitada para contratos está ejecutando una máquina virtual (VM), y que la red de cadenas de bloqueo actúa como una VM distribuida).
Los contratos inteligentes nos permiten que los cálculos de propósito general ocurran en la cadena.
Puntualización
Sin embargo, donde sobresalen es cuando se les asigna la tarea de gestionar las interacciones basadas en datos entre las entidades de la red. Desempaquetemos esta afirmación con un ejemplo. Consideremos una red de cadenas de bloques en la que participan Alice, Bob y Carol, y en la que se comercializan activos digitales de tipo X e Y. Bob despliega un contrato inteligente en la red que define:
- una función de “depósito” que le permite depositar unidades de X en el contrato,
- una función de “comercio” que devuelve 1 unidad de X (de los propios depósitos del contrato) por cada 5 unidades de Y que recibe, y
- una función de “retiro” que permite a Bob retirar todos los activos que tiene el contrato.
Tenga en cuenta que las funciones de “depósito” y “retiro” están escritas de manera que solo Bob (a través de su llave) puede llamarlas, porque esto es lo que Bob decidió, y también lo que tiene sentido para nuestro ejemplo; podrían haber sido escritas de manera que puedan ser llamadas con éxito por cualquier usuario de la red.
Bob envía una transacción a la dirección de ese contrato inteligente, llamando a su función de “depósito” y moviendo 3 unidades de X al contrato. Esta transacción se registra en la cadena de bloques. Alice, que posee 12 unidades de Y, envía una transacción que mueve 10 unidades de Y a la función de “comercio” del contrato, y recupera 2 unidades de X. Esta transacción también se registra en la cadena de bloqueo. Bob entonces envía una transacción firmada a la función de “retirar” del contrato. El contrato comprueba la firma para asegurarse de que la retirada es iniciada por el propietario del contrato, y transfiere todos sus depósitos (1 unidad de X, y 10 unidades de Y) de vuelta a Bob.
Observemos lo siguiente:
- El contrato tiene su propio estado y puede tomar la custodia de los activos en la cadena de bloques. Decimos que un contacto tiene su propia cuenta en la cadena de bloques, y la cadena de bloques apoya un modelo basado en la cuenta.Entre las Líneas En el ejemplo anterior, puede custodiar los activos X e Y. (Si volvemos al modelo de base de datos compartida, un contrato es un “usuario”/entidad independiente que puede poseer, eliminar y crear filas).
- El contrato nos permite expresar la lógica comercial en código; “cambiará 1 unidad de X por cada 5 unidades de Y recibidas”.
- Un contrato inteligente debidamente escrito debe describir todos los posibles resultados del contrato. Por ejemplo, la función “negociar” anterior puede escribirse de manera que se rechacen las ofertas que traigan cantidades de Y que no sean múltiplos de 5; es decir, una oferta de 12 unidades de Y será rechazada. O la función puede escribirse de manera que se analice la oferta entrante como el mayor múltiplo de 5 (que se comercializará sin emisión) y un resto (que se devolverá). Una oferta de 12 unidades de Y entonces, devolvería 2 unidades de X y 2 unidades de Y al remitente.
- La relación que Bob desea establecer con sus contrapartes es una relación impulsada por los datos. Una transacción, después de todo, es una estructura de datos firmada que indica una transferencia de valor. Bob despliega un contrato inteligente que efectivamente dice, “si usted envía a este contrato estos datos (5 unidades de Y), así es como responderá (1 unidad de X)”.
- Un contrato inteligente es activado por mensajes/transacciones enviados a su dirección.
- Un contrato inteligente es determinístico; la misma entrada siempre producirá la misma salida. Si se redacta un contrato no determinista, cuando se desencadene se ejecutará en todos los nodos de la red y podrá devolver resultados aleatorios diferentes, impidiendo así que la red llegue a un consenso sobre el resultado de su ejecución. (Tal vez sea de interés más investigación sobre el concepto).Entre las Líneas En una plataforma de cadena de bloques correctamente construida, la escritura (su redacción) (redacción) de contratos inteligentes no deterministas es imposible (obligando a los desarrolladores de contratos a utilizar un lenguaje de programación que no tiene ninguna construcción no determinante), o es posible pero se rechazará un intento de desplegar tal contrato en la red.
- Un contrato inteligente reside en la cadena de bloques, y como tal su código puede ser inspeccionado por cada participante de la red.
- Dado que todas las interacciones con un contrato se producen a través de mensajes firmados en la cadena de bloques, todos los participantes de la red obtienen un rastro criptográficamente verificable de las operaciones del contrato.
Una cadena de bloqueo que admite transacciones del tipo Bitcoin permite la transferencia de activos entre contrapartes que no confían entre sí.
Basado en la experiencia de varios autores, mis opiniones, perspectivas y recomendaciones se expresarán a continuación (o en otros lugares de esta plataforma, respecto a las características en 2026 o antes, y el futuro de esta cuestión):
Puntualización
Sin embargo, una cadena de bloqueo que soporta contratos inteligentes lleva esto más allá y permite que se produzcan procesos de varios pasos (o más generalmente: interacciones) entre contrapartes que desconfían mutuamente.
Detalles
Las entidades que realizan la transacción consiguen:
- inspeccionar el código e identificar sus resultados antes de decidir participar en el contrato,
- tener certeza de la ejecución, ya que el código ya está desplegado en una red que ninguna de las dos controla plenamente, y
- tener capacidad de verificación sobre el proceso, ya que todas las interacciones están firmadas digitalmente.
La posibilidad de una disputa se elimina (cuando se contabilizan todos los posibles resultados) ya que los participantes no pueden estar en desacuerdo sobre el resultado final de este proceso verificable en el que participaron.
📬Si este tipo de historias es justo lo que buscas, y quieres recibir actualizaciones y mucho contenido que no creemos encuentres en otro lugar, suscríbete a este substack. Es gratis, y puedes cancelar tu suscripción cuando quieras: Qué piensas de este contenido? Estamos muy interesados en conocer tu opinión sobre este texto, para mejorar nuestras publicaciones. Por favor, comparte tus sugerencias en los comentarios. Revisaremos cada uno, y los tendremos en cuenta para ofrecer una mejor experiencia.Los contratos inteligentes operan como actores autónomos, cuyo comportamiento es completamente predecible. Como tales, se puede confiar en ellos para impulsar cualquier lógica de la cadena que pueda expresarse en función de las entradas de datos en la cadena, siempre que los datos que necesitan gestionar estén a su alcance (en el ejemplo anterior, el contrato no podría comerciar con activos que no posee).
Concluimos esta sección señalando que los contratos inteligentes también dan lugar al concepto de “organizaciones autónomas descentralizadas” (OAD), entidades en la cadena de bloques cuyo comportamiento puede modificarse, si se sigue un determinado proceso que está codificado en el contrato. El ejemplo más sencillo es el de un contrato inteligente que convoca a otro contrato por dirección para cumplir su función principal. Esta dirección reside en la parte mutable de la base de datos interna del contrato. El contrato también lleva una lista de miembros, direcciones (claves públicas) que pueden votar sobre su comportamiento. Se puede incluir una regla en el contrato para que si la mayoría de esos votantes votan de cierta manera, el contrato modifique su comportamiento llamando a la dirección que recibió la mayoría de los votos para ejecutar su función principal.
Revisor: lawrence
Contrato inteligente
▷ Esperamos que haya sido de utilidad. Si conoces a alguien que pueda estar interesado en este tema, por favor comparte con él/ella este contenido. Es la mejor forma de ayudar al Proyecto Lawi.