Smart contract: ¿qué es y para qué sirve?

¿Has oído hablar alguna de vez de los smart contract? Es un concepto desconocido por mucha gente y todavía no es muy habitual verlo en España. Sin embargo, este tipo de contratos basados en tecnología blockchain (la misma que posibilita las monedas virtuales) ya opera en algunos sectores con importantes beneficios. En el siguiente artículo vamos a explicarte detalladamente en qué consisten.

¿Qué es un smart contract?

SmartContract son simplemente programas instalados en la cadena de bloque. En el departamento de Blockchain de Málaga nos gusta llamarlos «los policias del BlockChain». Son considerados de esta manera porque son ellos los encargados hacer valer las reglas dentro de una Blockchain.

Dicho de otra manera, un smart contract contrato inteligente es un programa informático capaz de llevar a cabo acuerdos establecidos entre dos o más partes realizando determinadas acciones como consecuencia del cumplimiento de una serie de condiciones concretas.

Sergio Carrillo
Sergio CarrilloBlockchain Lead Developer

En 1993, el criptógrafo Nick Szabo estableció este término por primera vez. Por aquel entonces, la infraestructura tecnológica hacía impensable desarrollar este novedoso concepto. Era necesario un sistema de pagos capaz de llevar a la práctica esta idea que no existía en ese momento. Sin embargo, esta situación cambió con la aparición de las criptomonedas.

Esta moneda virtual estaba ideada únicamente como herramienta financiera. Por el contrario, la tecnología con la que funcionaba (blockchain o cadena de bloques) sí posibilitaba estos acuerdos inteligentes. Fue a principios de 2014, con la creación de Ethereum, cuando pasó a ser una realidad.

Los acuerdos inteligentes no están controlados por ninguna de las partes implicadas en el acuerdo. Por lo tanto, estamos ante un sistema descentralizado donde las condiciones se programan, las partes implicadas las firman y, finalmente, se introducen en una cadena de bloques que no puede modificarse ni destruirse; el contrato queda, a efectos prácticos, blindado.

Concretamente, el objetivo principal de todo esto es establecer un nivel de seguridad mayor al de un contrato tradicional, reducir el tiempo necesario para su gestión y ahorrar costes.

¿Cómo funciona un SmartContract?

Un SmartContract puede comportarse de diversas maneras:

  • Validando los datos a guardar en blockchain, comportándose como una simple puerta lógica que acepta o no la validez de los datos a guardar.
  • Como un ‘trigger’ o disparador,  haciendo que una vez llegado un evento desencadene un comportamiento u otro, por ejemplo (cada hora en punto actualizar el estado de un asset en particular).
  • Para organizar un flujo de trabajo, haciendo que siempre que se meta un dato en blockchain tenga que ser proporcionado de una manera y una forma en concreto, o simplemente aceptar los datos de un solo participante de la red en un momento concreto, por ejemplo, solo almacen puede introducir pedidos, pues solo podrá aceptar datos de los pedidos que sean proporcionados por los perfiles de almacén.

Hasta el momento cualquiera que esté leyendo este artículo puede pensar que eso puede hacerse con tareas programadas en base de datos o con una buena comprobación en un back creado en Java o cualquier otra tecnología. La principal diferencia que existe con los SmartContract es que podemos tener más de uno trabajando al mismo tiempo en un Blockchain y ser independientes o colaborativos entre ellos.

Pondremos un ejemplo. Podemos tener un SmartContract encargado del embarque de pasajeros que únicamente recepcione los datos del pasajero al momento de su embarque, y los datos de hora de salida del vuelo y la hora de embarque de cada pasajero.

Podemos tener otro SmartContract que revise todos los vuelos y solo compruebe la hora de llegada y de salida, y en caso de que el vuelo se retrase 15 minutos disparar una llamada a un tercer SmartContract y que este ejecute una devolución del 50% del precio, y si se retrasa 30 minutos devolver el 100%.

Si esto se hiciera a través de un programa tradicional, tendriamos que  tener interfaz de entrada de datos de un programa a otro, o implementar APIS que conectaran las diferentes interfaces, una base de datos para embarque con sus tablas correspondientes, que podrían ser o no la misma base de datos de llegadas y salidas de vuelo y por el mismo hecho la misma base de datos que la del departamento financiero.

En blockchain no existe como tal el concepto de base de datos, como hasta ahora  lo entendemos con tablas y campos. En blockchain un bloque puede ser una llegada, los datos de un billete o simplemente un listado de precios de vuelos, y es el SmartContract el encargado de hacer las búsquedas en los bloques para facilitar la información al usuario de la manera solicitada.

Ejemplos de un SmartContract

Una vez explicado el concepto de contrato inteligente, mostraremos una serie de ejemplos para que entiendas su utilidad en el día a día.

Actualmente los SmartContract tienen una gran importancia en temas legales y de herencias. Ya que al utilizar Blockchain y ser inmutable se estudia que tengan un papel muy importante en funciones como legales y burocráticas como la de los notarios y abogados.

Aplicaciones civiles: testamento inteligente

Los acuerdos inteligentes están capacitados para mejorar muchos trámites de tu vida cotidiana. En el contexto de la aplicación civil, los testamentos digitales ya están disponibles. Si el testamento es estuviera gestionado por Blockchain y sus SmartContract, al morir una persona sus bienes pasarían de manera automática a sus herederos sin ningún tipo interpretación notarial, sin esperar y simplemente introduciendo el acta de defunción de esa persona. De esta manera todo el papeleo que a veces pueden ser engorrosos se generaría automáticamente.

Gestiones habituales: cambios de titularidad

Otro buen ejemplo es una gestión tan frecuente como el cambio de titularidad de un bien cualquiera, por ejemplo, una propiedad inmobiliaria. Se puede pensar a priori que esto eliminaría puestos de trabajo, pero la realidad es que no eliminaría, si no que los agilizaría de manera que el notario o el abogado, solo tuviera que acceder con su certificado digital y certificar esa transacción. Pasaríamos de días o meses en algunos casos a solo horas. El acuerdo inteligente, sin necesidad de más trámites ni terceras personas, realiza el cambio previsto liberando un documento firmado previamente de cambio de titularidad.

Bancos y entidades financieras

Varios bancos a nivel nacional están a favor de emplear estos nuevos acuerdos en distintas áreas de su administración y gestión de procesos internos. La automatización de la ejecución de determinadas condiciones o cláusulas supone un gran ahorro en tiempo y dinero para las entidades bancarias. En un sector tan saturado de transacciones, esto supone una reducción de gastos de millones de euros.

Obras públicas

Estos contratos inteligentes pueden utilizarse también para evitar los sobrecostes en las  obras públicas. El SmartContract se encargaría de controlar la oferta con los parámetros establecidos: fecha de inicio de obra y fecha fin de presentación de propuestas. Al cerrarse dicha fecha, el SmartContract asignaría la obra al licitador que más se ajuste a los requisitos, y se liberarían los pagos hacia esa empresa según el arquitecto certifique el porcentaje del avance en obra. De esta manera los sobrecostes en tiempo o dinero se verían reducidos drásticamente, porque el SmartContract además de ser un «contrato inteligente», actúa como un contrato entre las partes involucradas, lo que hace que para poder acceder tengas que introducir tu certificado digital y quede registrado que has aceptado y acordado unas condiciones legales y particulares.

Ventajas de los SmartContract

  • No admite interpretaciones. Una de las grandes desventajas de los contratos 1.0 es la interpretación. En el caso de los contratos inteligentes, las condiciones son totalmente claras y concisas.
  • Rapidez a la hora de resolver el acuerdo. El contrato se ejecuta automáticamente en el momento en el que se alcanzan las condiciones pactadas.
  • Son muy seguros. La tecnología blockchain  permite registrar los acuerdos de manera invariable y son protegidos por una extensa comunidad que los respalda.
  • Son anónimos. Dos personas pueden llegar a un acuerdo sin que una tercera persona tenga que enterarse. El contrato es un programa que realiza lo que han pactado ambas partes.

Desventajas de los acuerdos inteligentes

En el apartado de desventajas, destacamos:

  • Es una tecnología nueva que no tiene la total confianza entre las personas.
  • La mayoría de contratos inteligentes tienen una gran dificultad de programación los expertos escasean.
  • Un error en la programación puede ocasionar una brecha a través de la cual pueden robarse los fondos depositados en el acuerdo.
  • No están plenamente reconocidos por todos los organismos y las instituciones. Por tanto, su uso puede no estar autorizado para determinados trámites gubernamentales.

El futuro de la digitalización contractual

Muchos expertos coinciden en que estos contratos inteligentes entrarán en nuestras vidas de múltiples formas diferentes. La más evidente es la sustitución de los convenios tradicionales por parte de los abogados, convirtiéndolos en plantillas estandarizadas de smart contract o fusionándolos en un híbrido de contenido digital y papel donde será verificado a través de blockchain y corroborado a través de una copia física.

Actualmente los SmartContract han evolucionado mucho en el caso de Hyperledger Fabric que es el blockchain que utilizamos en Viewnext – IBM. Hemos pasado de escribirlo en Go (Lenguaje de Google ) a escribirlo en JavaScript o TypeScript. Desde la sede de Málaga hemos impartido cursos de desarrollo de Blockchain en esta plataforma y hemos realizado talleres de creación de Blockchain con sus SmartContract correspondientes, haciendo que un PoC pueda elaborarse de una manera más sencilla y consigamos hacer llegar al cliente esta forma de trabajar de manera ágil.

Como verás los SmartContract podrían evolucionar de una manera exponencial en un corto espacio de tiempo y utilizarse en todos los sectores y tipos de negocio. Si quieres saber más sobre cómo blockchain puede ayudar a tu negocio, te animamos a que te pongas en contacto con nosotros.

2019-07-24T13:38:20+02:0024 julio, 2019|