¿QUÉ ES UN SMART CONTRACT O CONTRATO INTELIGENTE?

Un contrato inteligente es un programa informático que ejecuta acuerdos establecidos entre dos o más partes haciendo que ciertas acciones sucedan como resultado de que se cumplan una serie de condiciones específicas.

Es decir, cuando se da una condición programada con anterioridad, el contrato inteligente ejecuta automáticamente la cláusula correspondiente.

Son contratos que se ejecutan y se hacen cumplir a sí mismos de manera automática y autónoma.

Los contratos inteligentes –smart contracts en inglés- llevan desarrollándose desde 1993, cuando el famoso criptógrafo Nick Szabo acuñó el término por primera vez.

Nick propuso este sistema de contratos por aquel entonces, sin embargo la infraestructura tecnológica del momento lo hacía inviable.

Era necesario un sistema de pagos que los pudiese llevar a la práctica y esa situación no apareció en escena hasta la creación del Bitcoin en el año 2009.

No obstante, Bitcoin no estaba pensado para nada más que ser una herramienta financiera: una criptomoneda.

Por el contrario, la tecnología con la que funcionaba – el blockchain o cadena de bloques-, sí que hacía posible estos contratos inteligentes y fue a principios de 2014, con la creación de Ethereum, cuando, por fin, pasaron a ser una realidad.

Estos smart contracts «viven» en una atmósfera no controlada por ninguna de las partes implicadas en el contrato, en un sistema descentralizado.

Esto significa que

  1. Se programan las condiciones,
  2. Se firman por ambas partes implicadas
  3. Y se ‘coloca’ en una blockchain para que no pueda modificarse.

Y por otra parte, tienen como objetivo principal:

  • Implementar una estado de seguridad mayor al del contrato tradicional.
  • Reducir costes.
  • Reducir el tiempo asociado a este tipo de interacciones.

En otras palabras, buscan mejorar los contratos actuales siendo más seguros, más baratos, ahorrándonos tiempo y evitándonos fraudes.

 
 

CONTRATOS TRADICIONALES VS CONTRATOS INTELIGENTES

Los contratos tradicionales están escritos en un lenguaje natural: se puede escribir en cualquier idioma, pero en un lenguaje legal comprensible entre dos personas.

Una vez que se aceptan los términos y se firma, según las leyes aplicables, la responsabilidad legal de ambas partes tiene unos costes que usualmente provienen de un notario, dando validez a ese contrato.

También sabemos que su modo de cumplimiento depende del punto de vista de cada parte implicada: en un contrato, las cláusulas tienden a beneficiar a una de las partes por encima de la otra.

Por el contrario, los contratos inteligentes difieren en estos tres puntos anteriormente mencionados:

  • El lenguaje no es natural, sino que es un lenguaje virtual, un lenguaje de programación informático. Al igual que cada programa de ordenador o cada aplicación móvil están programados para realizar una serie de tareas, los contratos inteligentes también realizan tareas bajo unas instrucciones introducidas previamente.
  • Esto hace que en el modo de cumplimiento no haya diferentes puntos de vista, sino una única lectura: Si se da la condición establecida, el contrato ejecuta automáticamente la consecuencia a dicha acción.
  • La responsabilidad legal del smart contract sigue en desarrollo. Lo que es indudable es que no requiere de un intermediario (como el notario) ya que el contrato en sí es el intermediario de confianza, reduciendo así los costes y el tiempo de las interacciones.

¿CÓMO FUNCIONAN LOS SMART CONTRACTS?

Imaginemos una máquina expendedora de comida como las que podemos encontrar en cualquier aeropuerto o en una estación de tren.

Esa máquina está programada para que cuando tu introduzcas cierta cantidad de dinero y pulses una combinación de números, automáticamente el producto seleccionado salga de la máquina para ser tuyo.

Además, otra orden que tiene programada es la de que, en caso de haber introducido más dinero del que costaba el producto, la máquina te devuelva el cambio, o de que en caso de no haber un producto seleccionado marque en la pantalla ‘Producto Agotado’.

Ésta programación de la máquina es lo que sería el contrato inteligente, y las partes implicadas sois la máquina y tú.

Las reglas del contrato inteligente son las reglas que hemos mencionado anteriormente y que son ejecutadas por sí solas si se cumplen las acciones correspondientes.

Esto funciona en el lenguaje informático como una sentencia llamada ‘if – then’, que significa “si… entonces…” y viene a simbolizar que:

“si se cumple el acuerdo… entonces se da la condición”.

En el ejemplo anterior, estos acuerdos con la sentencia ‘if – then’ serían algo así:

Si se cumple que el usuario introduce dinero suficiente y pulsa la combinación ‘032’, entonces saldrá la botella de agua. Si se cumple que el usuario ha introducido más dinero que el necesario, entonces se le devuelve la diferencia. Si el usuario introduce el dinero y pulsa ‘032’ pero no hay artículo, entonces poner mensaje de ‘Producto Agotado’.

Así funcionaría un contrato inteligente.

Pensarás: «¡Pero si estas máquinas existen desde hace muchísimos años!

¿Qué novedad hay aquí?»

No obstante, en este ejemplo y con una visión un tanto adelantada, el contrato inteligente que llevaría programado este tipo de máquinas sería el de que “si se acaba el producto ‘032’… entonces» -de forma autónoma y automática- la máquina mandará una señal al proveedor de botellas de agua para que vaya a reponerlas.

Esto elimina a un intermediario que tiene que estar vigilando la máquina, llamando a los proveedores y reponiéndola por sí mismo, eliminando así también los costes de tiempo y dinero en dicho proceso y simplificando mucho más la tarea.

Por otra parte, este es un mini-contrato programado en una simple máquina expendedora. Imagina cómo se complica el asunto cuando hablamos de contratos de trabajo, contratos de alquiler de propiedades o contratos de compra-venta.

Otro ejemplo podría ser el alquiler de una propiedad.

Hoy en día ya existen cerraduras electrónicas que se abren con una tarjeta como las que hay en numerosos hoteles y empresas a lo largo del mundo. Mientras la tarjeta asociada a la puerta esté activa, tu puedes entrar y salir cuando quieras.

En el caso del hotel, imagina como sería con un contrato inteligente: si tu has pagado hasta el día 30 del mes en curso y las normas del hotel son que tienes que salir antes de las 11:00 de la mañana, la tarjeta funcionará hasta el día 30 a las 11:00 de la mañana.

A las 11:01h ya no podrás abrir la habitación. Esas serían las reglas del contrato que se ejecuta por sí mismo una vez pasa de esa hora.

Esto haría posible un Airbnb pero sin su mediación ni sus comisiones. Y lo mismo podría pasar con plataformas como Uber o Blablacar: actuar directamente entre la gente interesada (relaciones p2p, peer-to-peer, entre pares), mediante un contrato inteligente, ahorrándose las comisiones de dichas plataformas y el tiempo de gestión.

También podría existir el caso de la compra de una propiedad.

Por ejemplo, si Carlos quiere comprar la casa de Pablo en cuotas mensuales, y lo quieren hacer a través de un contrato inteligente, deberán llegar a un acuerdo en las reglas a cumplir tales como:

  • La cantidad mensual.
  • El día del mes que se debe realizar el pago.
  • La cantidad total a pagar por la propiedad.
  • Etc.

También datos importantes como que si Carlos no paga el dinero mensual establecido en la fecha establecida a Pablo, la cerradura de la casa se bloqueará hasta no realizar el pago, o que Pablo cederá el título de la propiedad a Carlos sin que se pueda echar atrás.

Una vez establecidas las normas del contrato y puesto en marcha, éste actuará de forma autónoma y automáticamente sin necesidad de que Carlos y Pablo interactúen ni busquen mediación en caso de desacuerdo.

A través del siguiente gráfico aportado por BBVA podremos entrever la lógica empresarial de los smart contracts:

A modo de resumen, un contrato inteligente funciona de forma que las partes configuran los términos del contrato, éste se almacena en la blockchain y cuando se dan los términos descritos, el sistema ejecuta el contrato y se dan las consecuencias descritas en el mismo.

¿QUÉ ES EL ORÁCULO (ORACLE) Y QUÉ RELACIÓN TIENE CON UN CONTRATO INTELIGENTE?

Continuemos con los ejemplos como método didáctico.

Digamos que Carlos y Pablo son aficionados al fútbol.

Carlos es del Real Madrid y Pablo es del FC Barcelona. Carlos quiere apostar 5 ICX (la criptomoneda nativa de la red de ICON) a que el Real Madrid gana el clásico y Pablo quiere apostar los mismos ICX a que lo gana el FC Barcelona.

Llevan a cabo la apuesta a través de un contrato inteligente, especificando las reglas del contrato y depositando los fondos en una cuenta.

Una vez se sepa quién gana, el contrato repartirá a uno u otro el total de ICX apostados automáticamente.

En este caso un ente externo al contrato le tiene que decir a éste quién ha ganado, y ese ente es el Oráculo (oracle en inglés).

Esta herramienta permite actualizar el estado de los contratos inteligentes con información externa, como por ejemplo qué equipo ganó el partido.

Es verdad que este ente es un ente externo a la cadena de bloques o blockchain, es un tercero, un intermediario en el que se debe confiar, y por lo tanto esto tiene un impacto en el aspecto centralización, algo totalmente opuesto a la tecnología blockchain.

Para solucionar esta introducción de un intermediario en la cadena y descentralizar la obtención de este resultado, hay proyectos que actúan como portadores de información entre los servicios externos (APIs) y la blockchain. Un ejemplo de ello es Chainlink.

Este proyecto lo que hace es combinar todos los portales de información que sean indicados en el contrato y relevantes para el mismo, y es Chainlink el que, en función de los resultados que obtenga, tomará su decisión final.

FUNCIÓN MULTIFIRMA EN CONTRATOS INTELIGENTES

La función multifirma en los smart contracts es una función a través de la cual dos o más personas se deben de poner de acuerdo para hacer cumplir las condiciones de un contrato.

Imaginemos que Ana y Luis son dos amigos que quieren hacer un viaje juntos para recorrer el mundo durante un año. Es un viaje costoso por lo que tienen que ahorrar bastante dinero.

Deciden hacer un contrato inteligente en el cual cada uno tiene que poner una cantidad establecida de 500 euros al mes hasta que lleguen a 30.000 euros. El contrato inteligente bloqueará esos fondos hasta que se cumplan las condiciones del contrato.

Una vez se llegue a la cantidad de 30.000€, uno de los dos podría sacar todo el dinero por su cuenta y eso sería un problema, pero para que algo así no suceda existe la función multifirma.

Ésta permite que todas -o un %- de las partes deba aprobar la acción.

En este caso concreto, Ana no podría sacar el dinero sin que Luis esté de acuerdo, y viceversa. A través de la función multifirma son ambos los que tienen que estar de acuerdo, haciendo así que ninguno se pueda apoderar de la totalidad del dinero.

DOBLES DEPÓSITOS EN LOS CONTRATOS INGELIGENTES

Esta es otra característica de los contratos inteligentes que hace que funcionen correctamente, eliminando al intermediario del proceso.

Permite a dos o más partes que no se conocen entre sí y que carecen de confianza el uno en el otro, realizar una transacción segura para ambos a través de un contrato inteligente.

Este contrato les obliga a depositar en una dirección de la cadena de bloques unos fondos para el cumplimiento del contrato.

El contrato tiene una duración determinada, y si no llegan a un acuerdo, el contrato inteligente mandará directamente los fondos que ambas partes tuvieron que abonar a otra dirección de la cadena de bloques de la que nadie podrá sacarlos nunca.

Lo que hace esta condición es forzar a cumplir a cada uno con su parte del contrato. De lo contrario, los fondos desaparecerían.

Vamos a pasar de la teoría a la práctica con un ejemplo:

Pongamos que Ramón quiere comprar un plato de comida tailandesa a Khalan que cuesta 10€.

En el método tradicional, si no pagas antes, no hay comida, pero entre particulares podría darse el caso de que Ramón pague los 10€ y Khalan no le envíe la comida, quedandose así con el dinero.

O que Khalan se fie de Ramón, le mande la comida antes de recibir el dinero y Ramón no le pague.

Habría un problema de confianza en la otra parte.

Mediante un contrato inteligente de doble depósito, Ramón pagaría 10€ en el contrato inteligente y otros 10 como depósito de seguridad.

Khalan pagaría 20€ también pero sólo como depósito de seguridad.

El contrato inteligente se ejecutará según las reglas que Ramón y Khalan hayan acordado, es decir, se ejecutará si Ramón recibe el plato de comida tailandesa y Khalan recibe los 10€.

Si ésto pasa -que ambos reciban lo que acordaron- las dos partes recibirán también su depósito de seguridad como compensación de haber hecho cumplir la seguridad del contrato.

En otras palabras, recibirán el dinero de vuelta por haber hecho las cosas como se acordaron. Si por el contrario, una de las dos partes (o ambas) no cumplen con lo acordado, nadie obtendrá dinero alguno, lo perderán como penalización por no haber cumplido con el trato.

En conclusión, este doble depósito con el deposito de seguridad hace que sea imposible que una de las partes gane sin que la otra lo haga, es decir, no se dan engaños y hace que la gente llegue a acuerdos amistosos.

USOS DE LOS CONTRATOS INTELIGENTES

Partiendo de la base de que plataformas como Ethereum, EOS o ICON, la teconología blockchain y los contratos inteligentes son herramientas novedosas, los usos de los smart contracts hoy no son ni mucho menos lo que serán en un futuro.

Al igual que Internet nunca se pensó para mandar correos electrónicos y sin embargo, hoy en día, seguimos descubriendo nuevos usos de la “Red de Redes”, los contratos inteligentes se podrán aplicar a prácticamente todas las cosas.

Los que encontrarás a continuación son sólo algunos de los posibles usos que se le podrían dar:

Servicios financieros

    • Préstamos: si la persona que contrata el préstamo no realiza el pago en el tiempo estipulado, se ejecutaría el contrato para retirarle las garantías.
    • Liquidación de operaciones: los contratos calculan importes de liquidación y transfiere fondos automáticamente.
    • Pagos de cupones y bonos: los contratos calculan y pagan automáticamente de forma periódica los cupones y devuelve el capital al vencimiento de los bonos.
    • Microseguros: Calculan y transfieren micropagos basados en datos de uso de un dispositivo conectado a Internet (por ejemplo, un seguro de coche de pago por uso)
    • Depósito en garantía en el registro de la propiedad: el contrato supervisa la información externa a la cadena de bloques y una vez transferida la propiedad de un vendedor a un comprador, el contrato ingresa automáticamente los fondos al vendedor.
    • Herencias: una vez que el contrato puede verificar el fallecimiento de la persona, automáticamente las propiedades quedan repartidas y asignadas entre los herederos.
    • Automatización de pagos y donaciones: se pueden acordar pagos o donaciones periódicas o puntuales a personas o entidades. El contrato inteligente lo que haría es verificar que se cumplen las reglas para realizar automáticamente la donación.

Servicios de la salud

    • Expedientes médicos electrónicos: los contratos proporcionan transferencias y accesos a los historiales médicos tras la aprobación de múltiples firmas entre pacientes y proveedores.
    • Acceso a los datos sanitarios de la población: se conceden a las organizaciones de investigaciones sanitarias el acceso a determinada información sanitaria personal. A cambio, a través de los contratos, se realizan micropagos automáticamente al paciente para su participación.
    • Seguimiento de la salud personal: se realiza un seguimiento de las acciones relacionadas con la salud de los pacientes a través de dispositivos IoT -Internet of Things- (conectados a Internet). Los contratos generan automáticamente recompensas basadas en hechos específicos.

Servicios de propiedad intelectual

    • Distribución de royalties: el smart contract calcula y distribuye los pagos de royalties a artistas y otras partes asociadas según los términos acordados.

Servicios energéticos

    • Estaciones autónomas de recarga para vehículos eléctricos: el contrato procesa un depósito, habilita la estación de recarga y devuelve los fondos restantes una vez completados.

Servicios del sector público

    • Votación: valida los criterios del votante, registra el voto en la cadena de bloques e inicia acciones específicas como resultado del voto mayoritario. Esto es posible en una votación tanto a nivel de encuesta como a nivel estatal.
    • Apuestas: dos o más partes pueden apostar sin que se resienta su seguridad y sin necesidad de un tercero a través de un contrato inteligente que asegure unas condiciones concretas.
    • Propiedades inteligentes: una casa, un coche, una nevera, una lavadora…todos los objetos que se puedan conectar a Internet se consideran propiedades inteligentes (del inglés, smart property). Y todos pueden ser gestionados con contratos inteligentes para poder venderlos o alquilarlos de forma automatizada.

BENEFICIOS DE LOS CONTRATOS INTELIGENTES

Después de haber definido qué son, describamos los beneficios que tienen:

Autonomía

Estos contratos se dan siempre entre una o varias personas o entes legales, pero sin ningún intermediario. No es necesario alguien que valide el contrato, como podría ser un abogado. Por ello reducen, e incluso pueden llegar a eliminar cualquier persona extra que no esté implicada en el contrato.

Costes

Al ser contratos en los que no se depende de un tercero, se reducen los costes. Menos intervención humana resulta en costes reducidos.

Confianza

Todos los contratos inteligentes van directos a la cadena de bloques. Esto hace que: 1) esté encriptado, por lo que solo las personas implicadas pueden leerlo, y 2) permite la interacción entre personas que no se conocen entre sí sin que haya riesgo de estafa.

Velocidad

Los contratos inteligentes utilizan código de software para automatizar las tareas que de otro modo se realizarían por medios manuales. Por lo tanto, aumentan la velocidad de los procesos de negocio y son menos propensos a errores manuales.

Seguridad

Al basarse estos contratos inteligentes en una blockchain pública, estos no se pueden perder. Todo queda registrado de forma inmutable. Nada ni nadie lo puede hacer desaparecer y siempre se tiene acceso a ellos.

El proceso de ejecución descentralizado elimina el riesgo de manipulación, ya que la ejecución es gestionada automáticamente por toda la red, en lugar de por una parte individual.

Nuevos modelos de negocio

Los contratos inteligentes, a través de sus bajos costos para asegurar transacciones confiables, permiten nuevos tipos de negocios como el acceso automatizado a vehículos y unidades de almacenamiento.

Esto puede abrir nuevas vías de emprendimiento si lo juntamos con otras tendencias emergentes como el Internet de las cosas (IoT).