¿Qué son los smart contracts? ¿Son realmente contratos inteligentes?

¿Qué son los smart contracts? ¿Son realmente contratos inteligentes?
Share on facebook
Share on twitter
Share on linkedin

Cuando se nos habla a los juristas sobre cualquier cosa relacionada con blockchain, tokens e ICOs siempre hay un concepto que nos llama la atención: los “smart contracts” o “contratos inteligentes”.

Esta tecnología nos vuelve locos y nos lleva a pronosticar la desaparición de los abogados, de los notarios, de los jueces; a decir que vamos a necesitar aprender programación; y la pregunta que más nos trae de cabeza y que menos se responde ¿Son realmente contratos?

Después de pasar horas y horas buscando diversas opiniones respecto de esta pregunta, la respuesta que más veces encontré fue, básicamente, que si cumple con los requisitos legales del contrato lo será.

¿Qué clase de respuesta es ésta?

via GIPHY

Claro que si algo cumple con los requisitos para ser un contrato lo será. Y si no los cumple, pues no lo será.

De nada me sirve que me digan que como nuestro ordenamiento no exige ningún requisito de forma para los contratos (principio espiritualista) un código informático puede ser perfectamente uno.

Pero vamos por partes… Para poder responder a esta pregunta es necesario saber qué es un smart contract.

Concepto(s) de smart contract o contrato inteligente

Si estáis aquí seguramente ya habéis leído algo antes sobre smart contracts. Así que seguro que os habéis encontrado con definiciones como:

Los smart contracts son “secuencias de código y datos que se almacenan en una determinada dirección de la cadena de bloques”


TUR FAÚNDEZ, C., Smart contracts. Análisis jurídico, REUS, Madrid 2018, p. 51

o

Los smart contracts son contratos que se autoejecutan


WERBACH, K; CORNELL, N.,“Contracts ex machina”, en Duke Law Journal, núm. 67, marzo 2017.

Pues bien, ni son una cosa ni otra.

via GIPHY

La primera definición (y la primera confusión) viene de la desafortunada nomenclatura que se dió a los programas desarrollados en el lenguaje de programación de Ethereum: Solidity. Al crearse este lenguaje de programación se decidió denominar contract a cualquier programa que se desarrollara con él, sin importar realmente las características ni la función de dicho programa. Esto ha derivado en que se popularice un concepto erróneo de contrato inteligente como cualquier código desplegado en una blockchain.

La segunda definición es un intento de simplificar el concepto de smart contracts al máximo nivel, resultando un concepto que no contempla las características esenciales de los contratos inteligentes.

Entonces…

¿Qué es un contrato inteligente?

via GIPHY

Para saber qué es un smart contract lo que tenemos que haceres mirar atrás. Nick Szabo ya conceptualizó los contratos inteligentes hace más de veinte años.

La idea de smart contract que concibió Szabo era la de permitir integrar en aparatos electrónicos o programas informáticos cláusulas contractuales. Así se podría crear un sistema de contratación que dificulte (o impida) el incumplimiento contractual.

Lo que propuso Szabo fue unsistema informático que permitiera ejecutar las condiciones de un contrato con el fin de evitar conflictos y, por tanto, para evitar los tribunales.

Esto se consigue plasmando ciertas condiciones contractuales en lenguaje máquina para que un ordenador pueda entenderlas y ejecutarlas por sí mismo.

Esta idea básica nos ha llevado adecir que las características básicas de un smart contract son las siguientes:

  • Son programas informáticos (en el sentido amplio de la Ley de Propiedad Intelectual). Están basados, por tanto, en un sistema de reglas lógicas (conocido como función booleana: if-then-else; si pasa esto, entonces pasa aquello).
  • Su función es realizar prestaciones de un contrato mediante instrucciones programadas. Por tanto, tienen que producir efectos jurídicos.
  • Una vez que está activado, el smart contract ejecutará automáticamente el contrato cuando detecte que se hayan cumplido las condiciones programadas.

Con esto nos quedaría una definición como la siguiente:

Los smart contracts son scripts o pequeños programas, cuyo efecto sea que, una vez concluido (un) acuerdo y señalados uno o varios eventos desencadenantes, la producción de los eventos programados conllev(e) la ejecución automática del resto del contrato, sin que quepa modificación, bloqueo o inejecución de la prestación debida


PRENAFETA RODRÍGUEZ, J., “Smart contracts: aproximación al concepto y problemática legal básica”, en Diario La Ley, núm. 8824, 15.11.2016 (LA LEY 6489/2016).

Y si queremos simplificarla podemos decir que son secuencias de código informático destinadas a ejecutar prestaciones de un contrato automáticamente una vez que se cumplan una serie de circunstancias previstas por las partes.

Un ejemplo de esto podría ser el clásico de la máquina expendedora que pone el propio Szabo o el del Vía-T (de David Maeztu): se nos gira el cobro del trayecto que hacemos automáticamente cuando los sensores de la autopista detectan que hemos entrado y salido de ella.

Con todo esto

¿Podemos decir que un contrato inteligente es realmente un contrato?

La respuesta es no.

A partir de los arts. 1089, 1091 y 1254 CC se ha venido configurando el concepto de contrato como:

Un acuerdo de voluntades de dos o más personas dirigido a crear obligaciones entre ellas


DÍEZ-PICAZO Y PONCE DE LEÓN, L., Fundamentos de Derecho civil patrimonial, vol. I, 6ª ed., Thomson-Civitas, Cizur Menor, 2009.

Y dicho acuerdo nace “por el mero consentimiento” (art. 1258CC), que no es más que la concurrencia de oferta y aceptación (art. 1262 CC).

smart contract acuerdo

El contrato es el acuerdo y nada más. La libertad de forma (art. 1278 CC) rige por esta razón, porque da igual que el contrato se haya plasmado en una servilleta, haya sido verbal o se plasme en código informático. Esto únicamente va a ser, como dice Francisco Rosales, el documento en que se va a plasmar el contrato, no el contrato en sí mismo.

Esto se ve, sobre todo, en dos circunstancias:

  • La necesidad de integración del contrato: normalmente el contrato no recoge todas las posibles circunstancias que pueden afectarle, por lo que será necesario completarlo con disposiciones legales.
  • Cuando el “texto” en que se plasma el contrato no es preciso, será necesario interpretarlo teniendo en cuenta “la verdadera voluntad de las partes”.

Por tanto, el smart contract realmente no podrá ser nunca un contrato (en sentido jurídico, si acudimos a las definiciones de la RAE sí), sino que en todo caso será el documento en el que se recoja el acuerdo al que han llegado las partes.

Ahora bien, ese “documento” no es estático, sino que, como hemos dicho antes, será el encargado de ejecutar las prestaciones del contrato cuando se cumplan las condiciones pactadas por las partes.

Y esta es, precisamente, la verdadera naturaleza del smart contract, es una herramienta de ejecución de un contrato.

Poco a poco iré escribiendo más posts sobre este tema (ya tengo uno pensado sobre el concepto de smart legal contract y otro sobre los ontratos inteligentes en el derecho inglés).

Pero de momento os recomiendo los siguientes post:

  • Éste de Jorge Morell en el que explica el concepto de smart contract y nos pone un ejemplo práctico
  • Éste de Francisco Rosales hablando sobre la naturaleza documental de los smart contracts
  • Si quereis otro punto de vista podeis ver el de Carlos Tur en este post explicando el estado de la cuestión en el sector seguros
  • Un interesante post de Tecnogados en el que se reflexiona, entre otras cosas, de la importancia del trabajo conjunto entre abogados y programadores para desarrollar smart contracts.

Suscribete a nuestra newsletter

Si quieres estar al día de las novedades del Derecho Tecnológico y quieres estar más cerca de nosotros… No te lo pienses más y
¡SUSCRÍBETE!

2 respuestas

    1. Muchas gracias por tu comentario, Juan Carlos.
      Aunque los smart contracts no sean contratos (en sentido jurídico) nos parece innegable que bien desarrollados sí que pueden ayudar mucho en la automatización de relaciones jurídicas y, por tanto, tienen consecuencias jurídicas.
      Para su desarrollo óptimo será imprescindible un trabajo cooperativo entre abogados y programadores, como dices.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.