En una nueva era dónde las nuevas tecnologías tienden a modificar de gran manera nuestra forma de vivir, no podemos dejar de analizar cuáles serían las consecuencias jurídicas de los Smart Contracts. Cabe resaltar que, por la novedad de los mismos, estos tienden a no estar regulados aún en la gran mayoría de los países. Esto va no solo por el caso de ser un “producto” relativamente nuevo, sino que de igual manera, tienen una gran complejidad, lo cual dificulta una verdadera comprensión por parte de los juristas para poder regularlos.

¿Que es un Smart Contract?

El Smart Contract, o Contrato Inteligente por su nombre en español, es un término acuñado en primer lugar por Nick Szabo, licenciado en ciencias de la computación por la Universidad de Washington y licenciado en derecho por la Universidad de Derecho “George Washington”1. El mismo se refiere a un tipo de contrato el cual pueda ser ejecutado por si mismo, sin la interferencia de una persona externa al mismo.

Si bien una definición concreta de lo que actualmente es un Smart Contract es difícil de obtener, por las discrepancias que existen, tanto entre expertos del derecho cómo en expertos de informática, El Abog. Carlos Tur Faúndez define a los mismos cómo secuencias de código y datos que se almacenan en una determinada cadena de bloques 2. Esta definición proveída en primer término tendría varios cuestionamientos, cómo a que se refiere con secuencia de código y a cadena de bloques, los cuales posteriormente se irán explicando. Se podrían citar varios ejemplos más de definiciones que se dan a este tipo de contratos, llamados de igual manera por otros autores cómo “Contratos Digitales” 3.

Para poder entender mejor el funcionamiento de estos se debe de conocer cómo es que los mismos surgen. Si bien el término fue citado en primer lugar por Nick Szabo ya hace más de 20 años, no fue hasta el 2016 que se pudo tener un verdadero funcionamiento de los mismos, gracias a una nueva tecnología llama “blockchain” o Cadena de Bloques.

El blockchain en el contexto de Smart Contracts

Esta tecnología fue implementada por primera vez en el 2009, citada por su creador, Satoshi Nakamoto, el cual es un seudónimo ya que nadie conoce quien es en realidad o si es un grupo de personas 4. En el mismo, el creador explica un sistema nuevo de gestión de moneda digital el cual no requiere de la intromisión de ningún tercero para realizar las operaciones. Este sistema se basa en un sistema de registro compartido y de software libre.

Una red de blockchain es básicamente un libro de registro el cual se encuentra a manos de todos los usuarios. Esto quiere decir que cada usuario tiene una copia de dicho libro. El sistema fue creado en primer lugar para ser utilizado cómo un registro contable para una moneda virtual, o cryptomoneda por su carácter de encriptación para seguridad, llamada Bitcoin. Este libro registraría todas las transacciones entre los usuarios de la red, y todos los usuarios tendrían una copia del mismo, con lo cual todas las transacciones serían de publico conocimiento. Toda las transacciones se van escribiendo en bloques de información con un sello de tiempo que deja constancia del momento en que ocurre esto. La linea sucesiva de bloques, conectados entre ellos por motivos de seguridad, es de donde sale el nombre de cadena de bloques.

La cadena de bloques funciona de manera en que todos los usuarios del sistema, llamados nodos, por medio de unas funciones matemáticas, pueden certificar que bloque es el siguiente a ser agregado dentro de la linea sucesoria. Una vez que un nodo presente el próximo bloque, los demás lo verifican y aceptan, con lo cual posteriormente pasa a formar parte de la cadena.

Software libre, o programa abierto, es una forma en la cual los sistemas tienen su código fuente (la forma de programación y uso de los mismos) de manera abierta y accesible para todo quien desee revisarlo. Por este medio se puede atenuar a que todos los usuarios tengan la posibilidad de conocer a gran profundidad la forma en que trabaja el sistema.

El propósito de Nakamoto era el de crear un sistema monetario que no dependa de ningún ente externo al propio sistema, y que la seguridad y confianza del sistema dependa netamente de los usuarios. Esto se pudo lograr al tener que el sistema sea utilizado por una gran cantidad de personas y que cada una de ellas tenga una copia integra total del libro de registro. Si todas las personas tenemos un libro de registro que se actualiza con cada transacción, sería muy difícil que en algún momento una persona pueda modificar algo del registro para obtener un beneficio propio, ya que debería poder modificar todos los libros de registro existentes. Asimismo, los libros son libres de ser copiados por quien desee, y están a disposición de quien quiera revisarlos en todo momento. Son de carácter público.

Sin entrar a muchos detalles correspondientes a los detalles técnicos de funcionamiento y seguridad del blockchain, se podría resumir en que el mismo es un sistema el cual su fiabilidad depende de la gran cantidad de usuarios que tienen una copia entera del registro, con un sello de tiempo el cual muestra el momento en que ocurren las transacciones. Con este funcionamiento, existe una garantía de seguridad mayor a los usuarios de la cadena.

La primera red de blockchain fue la de Bitcoin, creada por el ya citado Nakamoto, pero no fue hasta el 2015 que se creo otra red, la cual proporcionó las bases para los Smart Contracts, la red de Ehtereum5, idealizada por un joven de 20 años llamado Vitalik Buterin . La principal diferencia de esta red de blockchain con la ya existente de Bitcoin es que, Ehtereum permite que en su libro no simplemente se graben las transacciones realizadas, sino que de igual manera se puedan guardar programas. Estos programas en particular son la base de los Smart Contracts. La definición citada al comienzo demuestra lo que son los programas almacenados en la cadena de Ethereum, y los mismos tienen el carácter de ser auto ejecutables.

Los Smart Contracts son entonces programas que asemejan a las funcionalidades de un contrato entre partes de manera digital, almacenados en una red de blockchain para mantener la integridad de los mismos. El motivo por el cual se utiliza esta tecnología es porque la misma proporciona una garantía de seguridad, integridad y cumplimiento del contrato, al tener un registro distribuido. De igual manera, al no necesitar de un ente externo para que se realice el cumplimiento del contrato, este depende simplemente de la red, con lo cual es más rápido y con un menor costo operativo.

Estos consisten a su vez en dos partes, llamados front-end y back-end 6.

  • El back-end es la parte operativa del contrato, es decir, la linea de códigos en si misma la cual permite el funcionamiento del contrato dentro del sistema.
  • El front-end es la parte “visible” del contrato, es decir, el contrato cómo lo conocemos actualmente.

Esto significa que la parte front-end del contrato sería el archivo de texto el cual se refiera a los términos del mismo, así cómo el que contenga la firma de las partes (una firma electrónica por lo general), mientras que la parte back-end sería el programa en si mismo que hace cumplir las cláusulas del contrato. Se podría decir que los Smart Contracts en si mismos serían esa parte back-end.

De estas dos partes, la parte que más les interesa a los juristas es el front-end, ya que la misma corresponde a la elaboración del contrato propiamente dicho y a las garantías que debe tener un contrato. En caso de que el mismo este acorde a la ley, si el back-end realiza tal cómo requiere el front-end, no se creara un problema en esa área. El front-end, que sería el análogo al contrato en papel, tiene que tener cumplidos sus requisitos esenciales cómo para que se configure un contrato. Por ejemplo, que objeto del contrato no sea ilegitimo es algo que debería de tener el front-end.

Para el consentimiento de las partes se requiere una firma o una aceptación de alguna manera. Se podría tener un contrato elaborado en papel, con la firma manuscrita de las partes, y luego digitalizado y subido al sistema. Otra forma sería la de crear el documento electrónico y que las partes firmen digitalmente este, para que posteriormente se adjunte al sistema, si es que el sistema ya no esta adecuado a la firma electrónica. Sin embargo, existe una manera más simple, el consentimiento expreso aceptación de cláusulas. Esto se da por lo general cuando se acepta, por medio de un click o apretando un simple botón, en el cuál se especifica que se acepta, o dándole el click al botón negativo para no aceptar las cláusulas.

Requisitos de un Smart Contract

Habiendo comprendido la base de los Smart Contracts, cabe destacar que los mismos tienen unos requerimientos para poder llegar a cumplir con su propósito. De primera manera todos los actores del mismo, al igual que los objetos, deben de ser parte de la misma cadena para poder interactuar entre sí.

Es decir, cómo requisitos mínimos para un Smart Contract, a parte de los requisitos comunes de todos los contratos, se requiere que:

  1. Las partes tengan acceso a la red de blockchain a utilizar, por medio de una cuenta en la misma.
  2. Que el objeto del contrato tenga acceso a dicha red.

Tomando de ejemplo un caso: A quiere alquilar una moto de B, la cual este último la ofrece por medio de BK1, siendo la última la red de blockchain que proporciona el servicio. A y B requieren no solo de tener una cuenta asociada a dicha red, sino que deben tener dentro de su cuenta un saldo que les permita comerciar. En el caso de la moto, la misma debe estar conectada al sistema de BK1 de igual manera, ya sea por dispositivos GPS u otro dispositivo el cual permita la conexión a la misma. En el momento en que A decida alquilar la moto, la cual B es propietario, el simplemente debe concurrir al vehículo, y por medio su dispositivo conectado a la red BK1, ingresar el pedido. El sistema del contrato de alquiler, ya insertado dentro de la cadena, se despliega para A, y le muestra los términos del contrato, cómo el precio por uso de tiempo, etc (sería el front-end). Si A decide aceptar las condiciones, el contrato ya debitará de la cuenta de A el monto requerido para el alquiler de manera automática y lo depositará en la cuenta de B (esto sería el back-end). En caso de que A no tenga el saldo suficiente en su cuenta para cubrir el monto estipulado, el sistema no le dejara alquilar el vehículo, así cómo si desea utilizarlo por más tiempo del ya pagado, el sistema revisará si el saldo de su cuenta logra cubrir el monto para continuar así con el uso.

Esto sería un ejemplo muy básico de un Smart Contract, tomando en cuestión de que el mismo estaría alojado dentro de una red de blockchain que proporcionaría la garantía de cumplimiento al no depender de otro sistema de algún tercero. Viendo el ejemplo, se puede deducir que todos los agentes que cumplan una función dentro de un Smart Contract deben estar necesariamente conectados a una misma red para que se pueda lograr el objetivo del contrato.

Esto no quiere decir que no todos los tipos de contratos podrán ser adaptados necesariamente a un Smart Contract. Un contrato de prestación de servicios, en el cual sería casi imposible hacer que el sistema este conectado al servicio, es por ejemplo, un contrato con una empresa de servicios de limpieza. En estos casos el contrato requerirá de un consentimiento extra de las partes al concluir con su parte del contrato. Por ejemplo, si A contrata los servicios de limpieza de B por medio de la red de BK1, una vez que B finalice con su parte del contrato, este deberá ingresar al sistema la información, y dependiendo allí de los parámetros previamente establecidos, se le pagará en el momento o una vez que A de su aprobación ante el trabajo de B. Si bien este contrato no sería en puridad un Smart Contract, sería una forma híbrida del mismo, aunque de igual manera se podría utilizar con el sistema propuesto.

A la larga y con una mayor experiencia, así cómo una mayor conectividad entre todos los medios a las distintas redes, todos los contratos podrán ser llevados a este modelo nuevo de negocios. El rápido avance de la tecnología proporciona una gran ayuda a que esto pueda ver la luz de manera cada vez más cercana.

La privacidad de los Smart Contracts

Hasta ahora se mostró la forma en que se puede trabajar con los Smart Contracts dentro de una red cómo la de Ethereum, la cual es una red pública. En este tipo de blockchain, todos los usuarios tienen acceso a toda la información, en todo momento, con lo cual, si realizamos algún tipo de contrato con otra persona, el mismo quedará guardado, aún luego de su finalización, en un bloque de la cadena por siempre.

En caso de querer realizar un contrato con un carácter privado, se requerirá del uso de una red de blockchain privada, la cual no todos los usuarios tengan acceso a la misma y que una vez finalizado el mismo se pueda proporcionar la seguridad a los usuarios de la eliminación del contrato en el registro. Dentro de una red privada de blockchain, los parámetros de agregación de los bloques pueden ser distintos, por ejemplo, el no dejar que cualquier nodo pueda verificar el próximo bloque, sino que simplemente los nodos controlados por el propietario. De igual manera, podría enviar una orden a los demás nodos a que modifiquen o eliminen determinados bloques.

Esto todo en base al cumplimiento de lo que se conoce cómo Derechos ARCO, que consisten en:

  • Acceso: que las personas puedan acceder a sus datos.
  • Rectificación: que se le permita a la persona modificar si existen datos incorrectos.
  • Cancelación: que las personas puedan oponerse a utilizar dicho sistema para el tratamiento de sus datos.
  • Oposición: que las personas puedan suprimir sus datos del sistema utilizado.

Estos derechos se utilizan para resguardar la información personal o privada que se requiera en los sistemas de información. Tomando esto de base, con una red de blockchain pública sería imposible obtener todos estos derechos, ya que no se podrá rectificar, ni cancelar, ni borrar ninguno de los datos ya incertos dentro del registro de la misma, al no poder modificarla.

Sin embargo, al obtener una red privada, esto si sería posible, ya que el funcionamiento de la red en si, al igual que los bloques, serían capaces de modificar el contenido del mismo. El problema de estas blockchain privadas es que se pierde el valor de confianza por la cantidad de usuarios, ya que la confianza entraría dentro del prestador de servicios que proporcione la red de blockchain. Los usuarios podrían tener una copia del registro, pero no acceder al mismo más que a sus propios datos. De igual manera, los usuarios podrían guardar en sus sistemas particulares una copia certificada de sus datos, los cuales les proporcionarían una cierta garantía de certeza de los mismos.

¿Necesidad judicial?

El propósito de los Smart Contracts es en principio la de no necesitar un agente externo para la realización del mismo. Esto en parte para decir que este tipo de contratos pueden suplir la necesidad de acceder a tribunales para el cumplimento. Pero a pesar de la idea utópica de esto, existen varios casos en los cuales se requerirá de un agente externo, ya sea para culminar el cumplimiento o para los casos de incumplimiento de los mismos.

En estos contratos se podría ingresar una cláusula penal, en la cual se estipule que ante un incumplimiento, total o parcial, el sistema realice una determinada acción a favor de quien sea dicha cláusula. Pero este tipo de casos podría llegar a tener una cantidad de variables incontables, las cuales ocasionarían problemas que el sistema no pueda hacer que se cumpla el contrato.

Tomando devuelta los ejemplos ya citados, en un contrato entre A y B por medio del sistema de BK1, donde existe una cláusula penal por incumplimiento. Si el caso fuese que A presta un servicio a favor de B, y este debe remunerar a A antes de un tiempo determinado y si no lo hace tiene un sobre cargo, el sistema, cómo B nunca dio su consentimiento a transferir a A su pago, al momento de realizarlo con su plazo vencido, puede directamente sumar el monto de la cláusula y realizar dicho pago. Pero el problema estaría en un caso en que, si B debería pagar a A 10 unidades, y por no realizarlo en su momento tiene un sobre cargo de 2 unidades, pero en su cuenta B solo tiene 11 unidades, ¿el sistema realizará el pago de lo que tiene o esperará a que B obtenga esa 1 unidad que le falta? ¿Y si realiza el pago, que pasa con la unidad que falta?

De vuelta al caso del contrato de alquiler de moto de A con B por el sistema de BK1, que pasaría si es que a la moto le sucede algo? Es decir, alguna causa de creación de obligaciones extra contractual. En un caso cómo este, es muy difícil que el Smart Contract puedo en si estimar todos los supuestos que puedan ocurrir, cómo el daño y cual sería el monto a cubrir, al igual que determinar la culpa en caso de accidente cómo para saber a quien se debe recurrir ante el hecho determinado.

¿Qué pasa con el pago?

Otro problema actual respecto de los Smart Contracts es que las unidades monetarias que utilizan son las cryptomonedas.

Ethereum utiliza el Ether (ETC7) cómo moneda de pago para sus aplicaciones y para su intercambio, con lo cual requiere de que en las cuentas de los usuarios se encuentra una cantidad determinada de Ethers para utilizarlas. Este tipo de monedas, al igual que el Bitcoin, son monedas sin curso cancelatorio legal, es decir, no están reconocidas por los países en la actualidad. Dicho esto, es difícil poder recurrir ante un tribunal para que se restablezcan las mismas en casos especiales.

En un sistema cómo Bitcoin, el cual es no solo la primera red, sino la más pura en cuestión de funcionamiento de blockchain pública, si existe un robo de bitcoins a una persona, esta no puede recurrir ante un juez, ya que la red no tiene un responsable, y al no poder modificar los bloques antiguos, sería imposible recuperar las monedas.

Ya existen varios casos, cómo el robo a la empresa Mt. Gox8, una empresa que gestionaba billeteras electrónicas para el uso de Bitcoins, y que en el 2014, tras un ataque informático, perdió las claves privadas de todas sus cuentas, lo cual configuraba cerca de 460 millones de dólares en bitcoins en su momento. Ningún juez podía hacer nada al respecto, ya que no tenían a quien requerir la devolución de las bitcoins a sus respectivos dueños, al no tener un responsable quien responda por la red de Bitcoin. Tomando devuelta en consideración que Satoshi Nakamoto, su creador, es en verdad un alias, y nadie conoce al verdadero creador de esta tecnología.

Si bien no es imposible esto, ya que la red de Ethereum si pudo revertir un robo de 3.6 millones de ETH en el 2016, equivalente a un valor aproximado de 70 millones de dólares, realizado a la organización DAO9. Esto fue algo muy difícil de revertir para el sistema, y fue un trabajo muy grande, el cual sigue teniendo sus consecuencias ya que se modificó una gran cantidad de registros, y muchos usuarios decidieron que sus registros no sean modificados.

Este es el principal problema de utilizar una red pública de blockchain, ya que puede ser el caso de que no exista un ente a quien recurrir, al igual que si es un problema de no muy grande envergadura, de seguro no se tendrá en cuenta. Ante una red de blockchain privada, ante la cual pueda responder un proveedor certificado, esto se podría salvar de manera más sencilla.

De igual manera, al utilizar una red privada, se podría utilizar una moneda con poder cancelatorio. Esto proporcionaría una garantía mayor ante el uso de la misma por los particulares. Aunque esto esta aún muy lejano, por parte de los estados que regulen una moneda digital con poder cancelatorio, se podría realizar lo que algunas redes están implementando, que es el de utilizar una forma de “token” o bien digital el cual represente un monto determinado de moneda, que si bien no tendrían un valor cancelatorio real, al otorgarle un valor fijo real, tendrían una valoración verdadera ante los tribunales, por ejemplo.

Otro problema correspondiente a esto sería la validez de los documentos proporcionados ante un tribunal. Estos sistemas utilizan seudónimos para sus usuarios, con lo cual no necesariamente un usuario que recurra ante un juez sería ser el correcto propietario de la cuenta determinada que expone. En el caso de los Smart Contracts, se podría certificar la veracidad e integridad del contrato ingresando a la propia red, en caso de ser una red pública cómo la de Ethereum, pero de allí a exponer esto a que un tribunal lo entienda es una cuestión distinta.

El funcionamiento de registro distribuido de las blockchain puede servir para que los particulares garanticen la integridad de los datos que proporciona, pero esto en el ámbito judicial no es así. El registro distribuido no tiene la misma certificación que un notario, no da fe pública. En caso de ser una red privada certificada, con un correcto manejo de la misma, si podría considerarse con más peso ante un tribunal, ya que la misma tendría alguien que responda por ella ante la Ley.

Tomando en cuenta esto último, y el ejemplo del contrato de alquiler de moto entre A y B por la red BK1, ante el incumplimiento del contrato o una suceso eventual (un creador de obligaciones extra contractuales), sería tan difícil que el propio sistema pueda verificar todo, que la solución más sencilla sería la de ir a un juicio a los tribunales.

Ante lo expuesto, no podemos afirmar que los Smart Contracts suplantarán a los tribunales, aunque si se podría decir que los mismos ayudarían a que no existan tantos casos, por su carácter de cumplimento automático. El problema entraría en lograr dar a entender a los tribunales los problemas que se crean dentro de los mismos y que eventualmente llegarían a instancias judiciales.

Aún falta mucho para poder determinar hasta que punto pueden afectar los Smart Contracts en la vida cotidiana, pero este nuevo producto en auge todavía tiene mucho como para sorprendernos y que faltaría analizar a futuro.

—–

1 “Nick Szabo – Smart Contracts: Building Blocks For Digital Markets”. 1996. Fon.Hum.Uva.Nl. http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html

2 Tur Faúndez, Carlos. 2018. Smart Contracts Análisis Jurídico. Madrid: Reus. P. 51

3Puyol, Javier. 2016. “¿Qué Son Los “Smart Contracts” O Contratos Digitales?”. Confilegal. https://confilegal.com/20160403-los-smart-contrats-contratos-digitales/

4 Nakamoto, Satoshi. 2008. Bitcoin.Org. https://bitcoin.org/bitcoin.pdf

5 “Ethereum”. 2015. Ethereum.Org. https://www.ethereum.org/

6“Front-End Y Back-End”. 2013. Es.Wikipedia.Org. https://es.wikipedia.org/wiki/Front-end_y_back-end

7 “Ethereum”. 2015. Ethereum.Org. https://www.ethereum.org/beginners/

8 Pollock, Darryn. 2018. “The Mess That Was Mt. Gox: Four Years On”. Cointelegraph. https://cointelegraph.com/news/the-mess-that-was-mt-gox-four-years-on

9 Falkon, Samuel. 2018. “The Story Of The DAO — Its History And Consequences”. Medium. https://medium.com/swlh/the-story-of-the-dao-its-history-and-consequences-71e6a8a551ee