Smart Contracts: resumen de los conceptos básicos
¿Qué son los smart-contracts?
Los smart contracts son simplemente programas almacenados en una blockchain o cadena de bloques que se ejecutan cuando se cumplen unas condiciones predeterminadas. Su función principal es la de automatizar la ejecución de un acuerdo, de manera que todas las partes puedan saber de antemano, siempre y cuando se den determinadas circunstancias predefinidas por ellas, cuál va a ser el resultado, sin necesidad de que intervenga ningún intermediario. Los smart contracts también permiten automatizar un flujo de trabajo, desencadenando la siguiente acción cuando se cumplen ciertas condiciones.
Hoy en día los smart contracts en sí no son contratos como tal, pero sí son códigos de ejecución automática que pueden ser muy útiles a la hora de ejecutar unas cláusulas previamente acordadas entre las partes, o incluso unas condiciones generales o contratos de adhesión.
Ahora bien, dentro de lo que hoy en día consideramos como contratos inteligentes podemos encontrar dos tipos principales, por supuesto, desde el punto de vista legal; por un lado, contratos que representan o pueden representar un contrato válido, lo que se denomina en el informe del EU Blockchain Observatory & Forum sobre smart contracts como «smart legal contracts», y por otro lado, smart contracts con implicaciones legales, es decir, código autoejecutable que tiene consecuencias jurídicas.
¿Cómo funcionan los smart contracts?
Los smart contracts funcionan siguiendo una línea de códigos que representan unas declaraciones de “if/then” o “si ocurre esto, ocurrirá lo siguiente” escritas en una blockchain. Gracias a su funcionamiento autoejecutable, es decir, sin intervención alguna por parte de terceros, una vez se cumple y se verifica la condición o condiciones predeterminadas –el “if”- puede tener lugar de manera automática y autónoma la consecuencia –el “then”-, sin necesidad de que medie voluntad de acción de las partes, la cual solo se requiere para la formulación del contrato.
Tan pronto se haya ejecutado y completado la transacción, la cadena de bloques se actualiza, momento a partir del cual la transacción se convertirá en inmutable.
Y visto este funcionamiento os preguntaréis, ¿cómo puede la blockchain verificar si la condición o condiciones se ha cumplido satisfactoriamente? Es aquí cuando entran en juego los famosos oráculos.
¿Qué? ¿Oráculos? ¿Qué es eso?
Por defecto, las blockchain y, por ende, los smart contract se encuentran limitados a recibir información y a disponer de datos que se encuentran dentro de la misma red. A fin de que las blockchain y los smart contracts puedan recibir información del exterior u off-chain , se han creado los llamados “oráculos”.
Los oráculos blockchain se configuran como una vehículo que utiliza la tecnología blockchain para conectar con el mundo físico. Es decir, permite abrir un canal de conexión entre el mundo físico y el mundo criptográfico.
Concretamente, se trata de piezas de código que permiten prestar un servicio de transferencia y verificación de información del mundo real (normalmente recibida a través de APIs) que resulta de interés para una blockchain o smart contract.
Un ejemplo de esto sería el siguiente: imaginemos que Pepe y María hacen una apuesta sobre si María logrará acabar la maratón de Valencia, de manera que si lo consigue, Pepe deberá pagarle una determinada cantidad de dinero, y viceversa. Entre los dos definen los términos y condiciones del acuerdo, incluyendo la cantidad en juego. Posteriormente, ambos proceden a enviar dicho importe al smart contract que contiene todas las condiciones pactadas entre los dos. A lo largo de la carrera, el oráculo va obteniendo la información de la misma hasta que esta finaliza, momento en el que analiza si María ha logrado cruzar o no la meta (cumpliendo con las condiciones estipuladas), para así ejecutar el pago en favor del que haya logrado ganar la apuesta.
¿Cuáles son las ventajas de los smart contracts?
Una vez vistas estas nociones básicas sobre los smart-contracts, conviene destacar cuáles son sus ventajas principales:
- Seguridad
Su gran seguridad viene dada por las cualidades intrínsecas de la cadena de bloques. Esto es, debido a que todas las transacciones registradas en una blockchain se encuentran encriptadas, y a que cada uno de los registros recoge la información del bloque anterior, alterar la información de los mismos resulta de gran complejidad, posibilidad que se antoja altamente improbable.
- Velocidad y eficiencia
Debido a su capacidad de autoejecución, una vez se cumple la condición predefinida por las partes, la consecuencia o resultado se ejecutará de manera automática, sin necesidad de otros trámites adicionales o procedimientos burocráticos.
- Transparencia y confianza
La confianza se basa en una fuente de datos e infraestructura que asegura la confidencialidad, integridad y disponibilidad de los datos durante la totalidad del periodo de vigencia del contrato.
- Reducción de costes
La ausencia de terceros intermediarios que lleven a cabo las transacciones permite evitar el pago de tarifas u honorarios asociados a los mismos.
Ejemplos de las aplicaciones prácticas de este tipo de contratos:
El abanico de posibles aplicaciones es muy extenso, ya que su función principal es la de automatización de procesos (por ejemplo, pagos), la cual resulta de gran utilidad en numerosos sectores, como el sector de los seguros, sector financiero, bancario, transportes, incluyendo los coches autónomos, suministros, etc.
📌 Veamos varios ejemplos:
- Sector del seguro: un smart contract puede resultar muy útil para el caso en el que un viajero sufra un retraso de un vuelo superior a X minutos, que el mismo pueda recibir una recompensa de forma automática por una cuantía determinada.
- Sector financiero y bancario: un smart contract podría facilitar transacciones como préstamos entre particulares, resultando de gran utilidad para el control de los impagos.
- Cadenas de suministros: las soluciones que pueden ofrecer los smart contracts a la cadena de suministro permiten agilizar el flujo de mercancías, al activar automáticamente los siguientes pasos cuando se cumplen determinadas condiciones, como la preparación, el envío y la entrega.
Los ejemplos anteriores son solo una muestra de la infinidad de posibilidades que pueden ofrecer estos contratos. Sus principios y ventajas abren las puertas a un ecosistema controlado completamente por la voluntad de las partes integrantes del contrato, eliminando, tal y cómo se ha apuntado anteriormente, procesos burocráticos, costes de intermediación y plazos excesivamente largos, dando una mayor autonomía y control a los intervinientes. ¿Suena bien verdad?
No cabe duda de que este fenómeno, gracias a la tremenda imaginación y creatividad de los desarrolladores y emprendedores, con el tiempo nos va a ir brindando numerosas herramientas y soluciones prácticas que ayudarán a simplificar y automatizar procesos rutinarios y repetitivos, facilitando la labor de las partes intervinientes.