🇪🇸 Alonzo trae consigo los contratos inteligentes a Cardano

Traducción al español de “Alonzo brings Smart Contracts to Cardano”, escrito por Cardanians.io el 8 marzo de 2021.


El hard fork* Alonzo introducirá los contratos inteligentes en Cardano. Veamos la historia y el potencial de los contratos inteligentes. Atrevámonos a pensar a lo grande en el futuro de la tecnología.

o.9dcbe4ca062e6594f3adf80eb7be8680

Historia y potencial de los contratos inteligentes

Quizá le sorprenda que la noción de contratos inteligentes [smart contracts] sea más antigua que Bitcoin. Nick Szabo es el primer hombre del planeta que mencionó el término contrato inteligente en 1994. Nótese que en aquel entonces, no existía ni siquiera una red blockchain descentralizada. En su trabajo, Nick Szabo describió los contratos inteligentes de la siguiente manera:

Un contrato inteligente es un protocolo de transacción computarizado que ejecuta los términos de un contrato. Sus objetivos generales del diseño son satisfacer las condiciones contractuales comunes (como los términos de pago, los embargos, la confidencialidad e incluso la ejecución), reducir al mínimo las excepciones, tanto maliciosas como accidentales, y reducir al mínimo la necesidad de intermediarios de confianza. Entre los objetivos económicos relacionados se encuentran la reducción de las pérdidas por robo, los costes de arbitraje y ejecución y otros costes de transacción.

Lo más importante es que un contrato inteligente es capaz de ejecutar los términos del contrato y, a la vez, minimizar la necesidad de confiar en los intermediarios. La idea de Szabo sobre los contratos inteligentes coincide con el concepto de las redes de blockchain descentralizadas que aparecieron en 2009 gracias a Bitcoin. El concepto de red blockchain descentralizada es, una máquina de confianza capaz de transferir la confianza, de las personas a las máquinas. De este modo, puede utilizarse como infraestructura base para la ejecución de contratos inteligentes.

La eficacia y utilidad de los contratos inteligentes es mucho mayor cuando tienen las mismas propiedades que las transacciones que se envían en las redes descentralizadas. No tiene prácticamente ningún sentido tenerlos en servidores en los que los administradores puedan cambiarlos o borrarlos. A través de un contrato inteligente se puede establecer la confianza entre dos partes solo en un mundo descentralizado en el que ambas partes dependen de la misma infraestructura y ninguna de ellas la controla.

Ha sido Ethereum quien dio vida a la idea de los contratos inteligentes en 2014. Había que crear un motor que fuera capaz de ejecutarlos. Este motor se nombra máquina virtual. Es una pieza de software que se ejecuta en cada nodo completo de la red. Los contratos inteligentes se escriben con un lenguaje de programación. El primero fue Solidity, que permite escribir contratos inteligentes para la máquina virtual de Ethereum.

En el ciclo de vida más sencillo de un contrato inteligente puede verse lo siguiente. El desarrollador lo escribe en Solidity. Se lo puede imaginar como un simple programa que puede trabajar con algunas direcciones y esperar algunas entradas para tomar algunas decisiones que pueden resultar en la manipulación con activos. Primero hay que escribir el contrato inteligente, luego se compila y se despliega. Un desarrollador debe enviarlo compilado a la blockchain mediante una transacción y pagar una cuota. Este contrato inteligente se distribuye a todos los nodos de la red. A partir de este momento, podemos decir que el contrato se ha desplegado y puede ser ejecutado por la red. Para que el contrato cambie de estado, se necesitan algunas entradas. A medida que el estado cambia con el tiempo, el contrato entra en el estado de finalización, lo que significa que la ejecución terminará.

Esta lógica programable, comúnmente conocida como contratos inteligentes, es una gran extensión del concepto de descentralización. Bitcoin es capaz de transferir incondicionalmente el valor de Alice a Bob. Ethereum les permite añadir una lógica adicional. Así, una transacción puede liquidarse solo cuando y se cumple una determinada condición.

El primer navegador web permitía abrir una página web y ver el texto. Solo eso. Cuando se añadieron Javascript y otras extensiones, se podía iniciar una sesión, descargar contenidos o incluso transferir un valor a través de la banca por Internet. La capacidad de los navegadores web crece cada año gracias a las innovaciones. Al comparar Bitcoin con el primer navegador web, proyectos como Ethereum o Cardano son las extensiones necesarias que nos permiten utilizar tecnologías descentralizadas para muchas otras cosas.

¿Qué es un contrato inteligente?

Generalmente, un contrato es un acuerdo escrito o verbal, especialmente uno relacionado con el empleo, las ventas, los pagos o el arrendamiento, que se pretende hacer cumplir por la ley. Se puede considerar un contrato como un conjunto de condiciones y acciones. Al cumplimiento de una condición le sigue una acción. Es decir, cuando Alicia cumple una condición, se espera que Bob actúe como prometió al principio. Puede ser necesario realizar más iteraciones para cumplir todas las condiciones. Si hay disputas, se define una tercera parte que las resolverá. El objetivo de los contratos inteligentes es digitalizar los acuerdos y, en el caso ideal, evitar la participación de terceros.

Como decíamos, un contrato inteligente es un trozo de código que un desarrollador programa para una situación concreta. Será distribuido por la red de un nodo a otros nodos para ser almacenado en la blockchain. De la misma forma, como se distribuye un nuevo bloque. La ejecución de este la validación de los resultados son responsabilidad de toda la red.

El contrato inteligente puede servir a una o dos partes, o a un grupo de personas. De este modo Alice y Bob pueden intercambiar de forma segura dos activos digitales sin el riesgo de que la contraparte no cumpla su promesa. Puede, en este caso, servir como un servicio de custodia que mantendrá el activo enviado en primer lugar y hará el intercambio solo cuando ambos activos estén disponibles en la cantidad esperada. También puede servir fácilmente a un grupo de personas, por ejemplo, para una recaudación transparente de fondos con la capacidad de reembolsar a los participantes en el caso de que la mayoría lo desee.

Un contrato inteligente es un conjunto de condiciones y eventos esperados que desencadenan acciones. Al recibir un desencadenante o entrada esperada, se ejecutará y realizará las acciones asignadas. Retomemos nuestro ejemplo de intercambio de activos. Tanto Alice como Bob esperan enviar sus activos a determinadas direcciones. Es esto lo que el contrato inteligente espera que ocurra para realizar el intercambio. El envío de los activos es lo que hace que se ejecute el intercambio de los mismos. El contrato inteligente distribuye los activos intercambiados a los nuevos propietarios. Puede que él exista una condición, que se activa por el tiempo transcurrido. Así, el contrato inteligente es capaz de evaluar su estado después de un período de tiempo y también realizar una acción. Por lo tanto, si solo Alice envió el activo, el contrato inteligente devolverá el activo a Alice. El intercambio no tendrá lugar. Observe que Alice puede estar protegida en el caso de que Bob no cumpla la promesa. Y viceversa.

Todo contrato inteligente activo tiene un estado actual. Durante su ejecución, los estados cambian en función de los eventos. Se ejecutan desde el estado inicial hasta el estado final. Durante el procesamiento puede haber varios estados arbitrarios (como si se tratase de la memoria RAM de un ordenador). Los estados actuales de los contratos inteligentes activos se comparten en toda la red descentralizada y se almacenan en la blockchain. En otras palabras, cada nodo tiene una copia de los estados de los ellos.

Nadie puede alterar los contratos inteligentes. Es imposible manipular su contenido de forma encubierta. Una vez que se despliegan no hay forma de cambiar las condiciones o acciones que han sido programadas por un desarrollador. Tampoco hay lugar para la distorsión o la falsa interpretación. Su ejecución es determinista. Las salidas de los contratos inteligentes se producen de forma determinista en función de las entradas.

Ventajas de los contratos inteligentes

Permiten reducir el riesgo de contraparte. Este riesgo es la posibilidad o probabilidad de que uno de los participantes en un acuerdo mutuo pueda incumplir su obligación contractual. Puede existir riesgo de contraparte en acuerdos o transacciones de crédito, inversión y comercio. Permiten a personas del mundo entero realizar transacciones entre sí sin necesidad de un intermediario, reduciendo los costes de los intermediarios y corredores. Con los contratos inteligentes, las interacciones financieras pueden ser más complejas y fiables.

Cardano se encargará de almacenar los datos, los estados de los contratos inteligentes y su ejecución, lo que reduce el riesgo de pérdida o manipulación de datos. De esta forma se ejecutan de forma autónoma y solo los participantes son directamente responsables de proporcionar las entradas que harán que el contrato inteligente pase al siguiente estado.

Un reto considerable de los contratos inteligentes es reducir la necesidad de involucrar a terceros para que participen en la ejecución de la ley. Sin embargo, en muchos casos será posible. No pueden, obviamente, hacer cumplir la ley en el mundo físico. No obstante, pueden reducir la necesidad de recurrir a terceros para hacer cumplir la ley. Las personas participantes pueden definir las condiciones de castigo en el contrato inteligente. De este modo, se les puede motivar para que cumplan sus promesas.Por ejemplo, Alice y Bob tendrán que poner bajo custodia en el contrato inteligente monedas estables por valor de 1.000 dólares antes de que se produzca el intercambio de activos. Si una de las partes no envía el activo a tiempo, puede ser castigada quitándole los 1000 dólares bloqueados.

Imagínese lo compleja que podría ser la tarea en el mundo real. Los participantes tendrían que encontrar un tercero de confianza. Este tercero tendría que entender el acuerdo y verificar todos los datos, incluidos los de KYC/AML. Cuando haya disputas, el tercero tendría que recopilar datos y pedir a las autoridades que resuelvan el problema. Podría ser un proceso largo y costoso. Con los contratos inteligentes, las condiciones y las fechas de vencimiento son fijas e inalterables. Los participantes o bien actúan como el contrato espera o pueden ser castigados de inmediato.

¿Los contratos inteligentes cambiarán las reglas del juego?

A nuestro juicio, los contratos inteligentes cambiarán las reglas del juego. Si se piensa en las capacidades de una red descentralizada y en las razones por las que son tan útiles, se puede llegar a la conclusión de que, además de otras, solo hay una razón de peso. Se trata de la capacidad de definir reglas que están disponibles globalmente, son inmutables, imparables y justas para todos. La política monetaria es una regla. La forma en que se procesan las transacciones es un conjunto de reglas. Las recompensas de la minería o de las apuestas también son reglas.

Con la tecnología de los contratos inteligentes se amplía la capacidad de definir reglas. Es posible personalizar las reglas para un propósito determinado que se ajuste a las necesidades de grupos más pequeños. Así, un grupo más pequeño puede decidir emitir sus propios tokens o monedas con su propia política monetaria. Puede tratarse de monedas inflacionarias o deflacionarias y un grupo determinado puede decidir utilizarlas para los pagos. Con Cardano, no es necesario utilizar un contrato inteligente para la emisión de tokens. Un grupo puede utilizar contratos inteligentes para dirigir la política monetaria o para construir un conjunto de reglas. Imaginemos que una política monetaria puede ser impulsada por una votación colectiva.

Actualmente, es demasiado pronto para pensar a lo grande y prever este tipo de uso. En cambio, podría ser muy útil para grupos que deseen ser independientes y autónomos. Imagínese una empresa moderna que emita tokens y defina un conjunto de reglas a través de contratos inteligentes. Así, los tokens pueden utilizarse para votar y también para el pago de dividendos. Supuestamente, una empresa de este tipo podría existir con total independencia de los estados o autoridades y podría ser local o global.

Binance y los tokens BNB se acercan mucho a esa idea. Los BNB se perciben como acciones de Binance. Binance prometió quemar regularmente tokens BNB, pero esto ocurre de forma centralizada. Por tanto, las reglas pueden cambiarse fácilmente. Supongamos que se desplegara un contrato inteligente que se encargara de la quema de tokens BNB. Este proceso sería transparente y los titulares podrían tener derechos adicionales en cuanto a la gobernanza. Cardano puede utilizarse para este tipo de uso.

Realmente, habría algunos obstáculos. Por ejemplo, Binance es probablemente un tema legal en determinadas jurisdicciones. El CEO puede negarse a entregar claves privadas críticas u otras credenciales. Tomará algún tiempo crear una nueva forma de empresa totalmente descentralizada con la capacidad de quitar derechos críticos a un líder y dárselos a otro. Un día, probablemente será técnicamente factible.

Conclusión

Probablemente lo primero que veamos en Cardano sean los intercambios descentralizados [DEX]. Intercambiar activos digitales es lo más sencillo que podemos hacer. La tecnología de los contratos inteligentes es solo una piedra de construcción y necesitamos más de ellas para aportar más funcionalidades útiles. Precisamos sistemas de gestión de identidades para poder trabajar con ellas. También necesitamos oráculos para unir los mundos digital y físico. Por el momento, estamos en la fase inicial y todo está en desarrollo. El hard fork Alonzo traerá los contratos inteligentes a Cardano. Atala Prysm es la gestión de identidad para Cardano y contribuirá a aportar funcionalidades hasta ahora inéditas.

Bitcoin nunca pretendió replicar los sistemas financieros actuales. Es evidente que la primera capa probablemente nunca será la de pagos. El aspecto más importante de Bitcoin es la política monetaria. Existe una regla que dice que nunca habrá más de 21 millones de monedas BTC. Si queremos construir un nuevo mundo descentralizado, necesitaremos más reglas. Estas deben ser inclusivas. Esto significa que debe ser barato seguir estas reglas. Las redes blockchain están disponibles en todo el mundo, pero esto no significa necesariamente que sea fácil o barato adoptar las reglas y creer en ellas. Cardano será un sistema operativo financiero y social global que nos permitirá definir nuestras propias reglas que queremos seguir y será barato, rápido y fácil adoptarlas.

Las finanzas descentralizadas (DeFi) nunca existirían sin los contratos inteligentes. Aunque el concepto es sólido y prometedor, lo que necesitamos es mejorar la experiencia del usuario y la fiabilidad. Cardano tiene el potencial de llevar el mundo de DeFi a la gente corriente que lo necesita o quiere alternativas a los sistemas financieros tradicionales. Tenemos que salir del pequeño lago de las criptomonedas y entrar en el gran mundo de las finanzas. Aunque la gente no estudie la belleza de la blockchain y la descentralización, podría interesarse por los nuevos servicios y productos financieros.


Notas del Traductor

* Nick Szabo es un científico informático, jurista y criptógrafo conocido por su investigación en contratos digitales y moneda digital. Se graduó de la Universidad de Washington en 1989 con un título en ciencias de la computación y recibió un título en derecho de la Facultad de Derecho de la Universidad George Washington. Es profesor honorario de la Universidad Francisco Marroquín.

La frase y el concepto de “contratos inteligentes” fueron desarrollados por Szabo con el objetivo de llevar lo que él llama las prácticas “altamente evolucionadas” del derecho contractual y la práctica al diseño de protocolos de comercio electrónico entre extraños en Internet. Los contratos inteligentes son una característica importante de criptomoneda y el lenguaje de programación E. Estuvo activo en tecnologías de “bit gold” anteriores a Bitcoin y es visto como un potencial candidato Satoshi Nakamoto.

* Hard fork, en el caso de Cardano, un Hard Fork combinador, combina protocolos sin interrupción o reinicio en el sistema. Un ejemplo fue la transición de Byron hacia Shelley.

2 Likes

Excelente artículo. Bien elegido Nápoles para su (excelente) traducción.

1 Like