contrato online
Última actualización: junio 2, 2021

Cada vez es más habitual oír hablar del concepto de contratos inteligentes o smart contracts. Un smart contract es un tipo especial de instrucciones que es almacenada en la blockchain o cadena de bloques. Asimismo, también tiene la capacidad de autoejecutar acciones de acuerdo a una serie de parámetros ya programados. Todo esto se realiza de forma inmutable, transparente y completamente segura.

El contrato tradicional y el smart contract son acuerdos en los que dos o más involucrados se comprometen a cumplir una serie de condiciones. Los elementos fundamentales de ambos son los mismos: el consentimiento voluntario de todas las partes, el objeto del contrato (bien o servicio) y una causa justa, verdadera y lícita. Ahora bien, hay tres aspectos fundamentales que marcan la diferencia entre ambos: el modo de escritura, su implicación legal y el modo de cumplimiento. Si quieres adentrarte el interesante mundo de los contratos inteligentes, ¡no te pierdas esta guía!




Lo más importante

  • Un contrato inteligente se puede definir como un contrato que se ejecuta por sí mismo sin que existan terceros intermediarios y que se escribe como un programa informático en vez de emplear un documento impreso con lenguaje legal.
  • El contenido íntegro de un smart contract se transforma en un código, el cual se almacena en una cadena de bloques. Así, los términos del contrato se traducen en una serie de sentencias y comandos que funcionan de manera autónoma gracias a la tecnología blockchain. El código utiliza las reglas lógicas de la programación para garantizarte que, una vez se cumplan las condiciones previstas en el contrato, se ejecute la cláusula correspondiente.
  • Son muchas las aplicaciones prácticas que pueden ofrecer este tipo de contratos. Algunas de las más comunes son la aplicación de estos en nuevas formas de financiación y crowdfunding distribuido, como es el caso de la emisión de tokens en la red Ethereum con los contratos tipo ERC20, la creación de canales de pago como los utilizados por la red Lightning Network o la descentralización de la economía colaborativa.

Lo que debes saber sobre los contratos inteligentes

La aparición de la tecnología blockchain ha propiciado el inicio de la utilización de los llamados contratos inteligentes o smart contracts. Con esto se pretende automatizar las relaciones contractuales entre personas o máquinas sin la intervención de un intermediario. Aunque quedan muchos retos que aún se deben superar, los smart contacts se posicionan como una de las aplicaciones de negocios con mayor potencial para las tecnologías DLT.

monedas

El criptólogo Nick Szabo fue el primero en pensar en unos protocolos informáticos que posibilitasen el comercio electrónico entre desconocidos. (Fuente: 125811587/ 123rf)

¿Qué son los contratos inteligentes?

El criptólogo Nick Szabo fue el primero en pensar en unos protocolos informáticos que posibilitasen el comercio electrónico entre desconocidos y pudiesen, a su vez, sustituir el papeleo legal. En la actualidad, un contrato inteligente hace referencia a uno que se ejecuta por sí mismo, sin que existan terceros intermediarios. Además, se escribe como un programa informático en vez de emplear un documento impreso con lenguaje legal.

La relación contractual cuenta con la intervención de un sistema electrónico descentralizado. En este el contrato nace, se ejecuta y se extingue dentro de la red(1). El programa define reglas y consecuencias estrictas de la misma forma que lo haría un documento legal tradicional. La única diferencia entre ambos es que los smart contracts pueden tomar información como input, procesarla en función de las reglas establecidas en el contrato y adoptar cualquier medida que se requiera como resultado de ello.

¿Cuáles son sus características clave?

Las principales características de contratos inteligentes son las siguientes:

  • Ejecución Activa: Si las condiciones se cumplen, el contrato se ejecuta automáticamente (son autoejecutivos). Nadie puede detener el proceso.
  • Registro completo y datos disponibles: Los registros y los orígenes de los datos se van almacenando en la cadena de bloques. De esta forma, la información asimétrica queda eliminada.
  • Son eficientes: El código se ejecuta en segundos y se envía el dinero o la prestación de inmediato.
  • Económicos: Sólo se paga una pequeña comisión por el uso de la plataforma. No hay que pagar honorarios ni comisiones a profesionales, ya que no hay intermediarios.
  • Eliminación de error, fraude o incumplimiento: Las posibilidades de error, fraude o incumplimiento son mínimas.

¿Para qué sirven los contratos inteligentes?

Un smart contract le posibilita a cualquier persona en cualquier lugar del mundo tener la confianza necesaria para hacer un intercambio, siendo conocedor de que hay un compromiso de por medio. Este te permite generar una interacción entre dos partes de una manera óptima y segura.

¿Cómo funcionan y qué aportan?

El contenido íntegro del contrato se transforma en un código, el cual se almacena en una cadena de bloques. Es decir, los términos del contrato se traducen en una serie de sentencias y comandos que funcionan de manera autónoma gracias a la tecnología blockchain. El código usa las reglas lógicas de la programación para garantizarte que, una vez se cumplan las condiciones previstas en el contrato, se ejecute la cláusula correspondiente.

Únicamente en algunos casos es necesario que intervengan los “oráculos”. Estos son agentes externos que comprueban si ciertas condiciones del contrato se han cumplido. Estos instrumentos informáticos sirven para validar las condiciones recogidas en el smart contract, utilizando información externa para decidir si una determinada cláusula se ha cumplido o no. Una vez que el oráculo obtiene esa información y la contrasta, el contrato se ejecuta y se produce la transacción prevista.

¿Cuáles son los posibles usos de un smart contract?

Las aplicaciones de este modelo de contratación son muy diversas. Algunas de ellas son(2):

  • Préstamos: Si el deudor no efectúa un pago, el contrato puede cancelar de forma automática las claves digitales que le dan acceso a los fondos o activar las garantías.
  • Depósitos en garantía: Por ejemplo, en compras por internet. Una vez verificada la entrega se libera el pago.
  • Controles de gasto: Liberación de subvenciones y/o pagos a proyectos. Es necesaria una previa entrega de certificados.
  • Herencias y donaciones: Una vez registrado el certificado de defunción se liberan los fondos, legados, etc.
  • Piscinas de voto multifirma: Primeramente, se efectúa un depósito en una parte de confianza para garantizar el cumplimiento de una transacción. Esto se realiza sin que ninguna de las partes partícipes pueda acceder al mismo hasta que dos o más de las partes señaladas en el acuerdo aprueben la transacción. Así, se libera el depósito en favor de a la persona registrada como beneficiaria de la prestación bloqueada.
  • Dobles depósitos: Es muy similar al anterior. Solo se diferencia en que se elimina a los terceros como fuente de verificación. Comprador y vendedor realizan una transacción de depósito vinculada a un contrato inteligente. El programa tiene un tiempo limitado. Si ambas partes no cumplen lo establecido, el dinero se transfiere a una tercera parte, es decir, se “quema” en alguna dirección de la que no tienen clave privada de acceso. Esto constituye un poderoso incentivo para cumplir en plazo y liberar el depósito.
  • Oráculo: Se utiliza para validar cláusulas en contratos inteligentes. De esta forma, se indican fuentes de información externa para comprobar si una parte del contrato se ha cumplido (el índice de cotización ha llegado a X o la solicitud de préstamo ha sido aprobada, por ejemplo). Si es así, la otra parte (el pago) ha de ejecutarse.

¿Cuáles son las ventajas y desventajas de los smart contracts?

Entre las ventajas del uso de los smart contracts encontramos los siguientes aspectos:

  • Autonomía: No se necesitan intermediarios. Así, también se elimina el peligro de manipulación por parte de un tercero.
  • Confianza: Los documentos están encriptados en un libro de contabilidad compartido.
  • Seguridad: La encriptación de sitios web mantiene tus documentos seguros.
  • Respaldo: Tus documentos están duplicados muchas veces.
  • Velocidad: La automatización de tareas de estos contratos reduce las horas de una serie de procesos de negocio.
  • Ahorro: No tienes que pagar a intermediarios, como puede ser un notario.
  • Precisión: Se evitan los errores comunes que se producen al rellenar manualmente formularios.

Por otro lado, entre las desventajas de estos destacan:

  • La falta de regulación internacional de la blockchain, las criptomonedas y los smart contracts. Esto hace que las tecnologías sean difíciles de rastrear y monitorear en la economía global.
  • Es una tecnología nueva que no goza de total confianza entre los usuarios.
  • La mayoría de contratos inteligentes son bastante difíciles de programar y, al ser algo nuevo, no existen demasiados expertos en el tema.
  • Son complicados de implementar y es imposible modificarlos (lo que es una ventaja y desventaja a la vez).
  • Un error en la programación del contrato puede crear una fisura mediante la cual pueden robarse los fondos depositados en el contrato.
  • No tienen el pleno reconocimiento de todas las instituciones y organismos. Así, es posible que no sea autorizado su uso para ciertos trámites gubernamentales.
Ventajas
  • Autonomía
  • Confianza
  • Seguridad
  • Respaldo
  • Velocidad
  • Ahorro
  • Precisión
Desventajas
  • Falta de regulación internacional de la blockchain
  • Falta de confianza de los usuarios al ser algo nuevo
  • Dificultad para programarlos
  • Imposibilidad de modificarnos e implementación complicada
  • Un error de programación puede ser fatal
  • Falta de reconocimiento por parte de las instituciones y organismos

¿Cuáles son los riesgos de los contratos inteligentes?

Los contratos inteligentes se presentan como una de las grandes apuestas de futuro. Aún así, hoy en día es complicado conseguir hacer de forma 100% correcta un contrato de este tipo. Esto se debe a la serie de riesgos que presentan los smart contracts, que pueden ser aprovechados por los ciberdelincuentes(3):

  1. Errores aritméticos con números enteros: En los smart contracts los valores se expresan con números enteros porque no existe un soporte para la coma flotante. Por esta razón, la realización de cálculos erróneos con los números enteros es uno de los problemas más comunes en los contratos inteligentes.
  2. Vulnerabilidad del límite del block gas: Ethereum (la principal plataforma digital de cadena de bloques) tiene límites para evitar que los bloques no crezcan más de la cuenta. El gas es la “gasolina” de Ethereum, la que posibilita las transacciones. Si un smart contract utiliza mucho gas no cabrá en el bloque y puede ser revertido.
  3. Falta de parámetros o controles de precondición: Son errores de carácter humano y ocurren cuando el proceso de diseño no se ha realizado con la atención necesaria. Suceden cuando no se realizan las comprobaciones necesarias para que la operación sea válida. Por ejemplo, no verificar si un usuario tiene suficiente saldo de tokens para que la operación pueda realizarse.
  4. Front-running: En el ámbito de los smart contracts, el front-running se produce en las transacciones que se encuentran en la mempool y son visibles. Aquí es cuando pueden surgir algunos interesados en adelantar los contratos por su contenido pagando unas tarifas más altas. Cuando ocurre, se provoca un gran caos en el orden de las transacciones. Esta práctica, además de no ser ética, es ilegal. Si se llega a producir, es necesario el rediseño o la refactorización para solucionarlo.
  5. Errores de programación: Un pequeño error de especificación puede tener graves consecuencias en la funcionalidad y seguridad del contrato.

contratos inteligentes

Para evitar este tipo de problemas es fundamental acudir a auditores que sean capaces de entender completamente el código del contrato. (Fuente: Nikolai Lenets: 42230375/ 123rf)

¿Cómo crear contratos inteligentes?

Lo primero que tienes que hacer en el proceso de creación de un contrato inteligente es pedir ayuda a expertos o solicitar una consultoría. Por dónde empezar siempre va a depender de las necesidades de tu negocio. Lo más común cuando hablamos de smart contracts es pensar en Ethereum, ya que su Ethereum Virtual Machine (EVM) nos simplifica el proceso de ejecutar los contratos inteligentes.

Esta máquina virtual es la encargada de interpretar y ejecutar las reglas que forman estos contratos, siempre dentro la red. Esto es así porque todos los nodos ejecutan las reglas. Como consecuencia, se logra un consenso descentralizado que asegura una red sólida con información transparente e imposible de modificar. Esta ventaja se traduce en la seguridad final. Los pasos que debes seguir para crear un contrato inteligente son:

  1. Planificación: ¿Por qué crearías tú un contrato inteligente? ¿Qué problema necesitas resolver? Un ejemplo puede ser la creación de tickets tokenizados para evitar la falsificación en la venta de entradas de un festival o concierto.
  2. Conocer las opciones de las DApps: Podemos crear las famosas DApps. Estas son aplicaciones compuestas por contratos inteligentes que son ejecutadas en la red de nodos de Ethereum. Esta última es la plataforma más grande que existe. De todas formas, hay otras opciones como Lisk, una DApp basada en JavaScript.
  3. Construir el contrato con el lenguaje adecuado: Una buena opción es Solidity. Se diferencia de JavaScript en ciertos aspectos, como pueden ser las funciones de hash y el requisito de punto y coma. Si creas tu primer contrato con Ethereum, es recomendable usar el entorno de desarrollo remix.solidity.org. Es probable que la parte más difícil de trabajar en Solidty sea la integración de su contrato con JavaScript, pero el primer paso es migrarlo a su red de prueba. Otra complicación a superar en el proceso de creación de contratos inteligentes es su conceptualización.

Legalidad de los smart contracts

Los profesionales del derecho aseguran que la legalidad de los smart contracts existe debido a que estos pueden ajustarse a los diferentes ordenamientos jurídicos sin ningún tipo de complicación. Las normas aplicadas a los smart contracts son las establecidas en el Derecho Internacional Privado. Así, este busca estudiar los factores que influyen en él y poder determinar a qué jurisdicción nacional es a la que le corresponde su interpretación.

De acuerdo con estudios de expertos, no es necesaria una nueva regulación para determinar la legalidad de los smart contracts. Estos pueden ser reconocidos como la aplicación de una forma diferente de los contratos tradicionales. Asimismo, la legalidad de esta tipología de contratos también puede ser determinada por lo que las propias partes decidan y regirse por lo reflejado dentro del contrato.

junta con contratos

Los smart contracts o contratos inteligentes hacen que sea posible la existencia de contratos transparentes y intermediarios. (Fuente: lightfieldstudios: 107911859/ 123rf)

Conclusión

Los smart contracts o contratos inteligentes hacen que sea posible la existencia de contratos transparentes y intermediarios. Además, estos garantizan la seguridad de las partes comprometidas, pues en el momento de su definición se declaran los posibles del mismo y los requisitos para que se cumpla.

Aunque existen retos a superar tan importantes como pueden ser la vulnerabilidad a la que está sujeta la red y la inmutabilidad de dichos contratos una vez establecidos, las diversas ventajas que ofrecen los contratos inteligentes los posicionan como una alternativa mucho más cómoda y segura frente al contrato tradicional.

Estos provocarán un cambio radical en las relaciones transaccionales y personales, tanto de persona a persona como de usuario a empresa. En un mundo que nos obliga a digitalizarnos para sobrevivir, el contrato inteligente supone una evolución necesaria.

(Fuente de la imagen destacada: 105626120/ 123rf)

Referencias (3)

1. Caballero Martínez JA. Criptomonedas, blockchain y contratos inteligentes.
Fuente

2. Sáenz ME. Contratos electrónicos autoejecutables (smart contract) y pagos con tecnología blockchain. Revista de estudios europeos. 2017(70):69-97.
Fuente

3. Estruga, Nuria. Los principales riesgos de Ciberseguridad de los smart contracts.
Fuente

¿Por qué puedes confiar en mí?

Trabajo de Fin de Grado
Caballero Martínez JA. Criptomonedas, blockchain y contratos inteligentes.
Ir a la fuente
Artículo de revista de estudios europeos
Sáenz ME. Contratos electrónicos autoejecutables (smart contract) y pagos con tecnología blockchain. Revista de estudios europeos. 2017(70):69-97.
Ir a la fuente
Artículo de revista digital
Estruga, Nuria. Los principales riesgos de Ciberseguridad de los smart contracts.
Ir a la fuente
Evaluaciones