馃嚜馃嚫 Visi贸n general de la investigaci贸n que permite el funcionamiento de smart contract en Cardano

Analizando de cerca la investigaci贸n de Cardano, segunda parte. A continuaci贸n, m谩s informaci贸n sobre el innovador modelo EUTXO de Cardano y sobre c贸mo facilita unos smart contracts m谩s eficientes.

descarga

En nuestro anterior :es:entrega de esta serie de art铆culos hablamos de la investigaci贸n en la que se basan algunos de los elementos centrales de Cardano, como el staking, la delegaci贸n y el reparto de recompensas. En esta ocasi贸n, resumimos los trabajos que ayudaron a establecer una plataforma de smart contract funcional para el desarrollo de aplicaciones descentralizadas (DApp), habilitada por el modelo de contabilidad :uk:Extended Unspent Transaction Output (EUTXO).

UTXO vs modelo basado en cuentas

Bitcoin y Ethereum est谩n entre las blockchain m谩s populares en la actualidad. Emplean dos modelos de contabilidad de libro mayor bastante diferentes para hacer un seguimiento de la distribuci贸n y la propiedad de los fondos de los usuarios. Ambos modelos son el modelo de salida de transacciones no gastadas (UTXO) de Bitcoin y el modelo basado en cuentas, empleado por Ethereum entre otros blockchain.

El modelo UTXO ofrece una garant铆a de seguridad en el n煤cleo de las actividades financieras. Mientras que el modelo sem谩ntico de UTXO se mantiene simple en un entorno inform谩tico complejo, concurrente y distribuido, es bastante limitado en su apoyo a los smart contracts. Ethereum escogi贸 el modelo basado en cuentas expl铆citamente para facilitar contratos inteligentes m谩s expresivos.

Respondiendo a la pregunta de si es posible tener contratos inteligentes expresivos manteniendo la simplicidad sem谩ntica del modelo UTXO, los investigadores del IOG propusieron las soluciones :uk:El modelo UTXO extendido鈥 y :uk:Tokens nativos personalizados en el modelo UTXO extendido鈥. Los dos trabajos de investigaci贸n se publicaron en 2020 y describen completamente el modelo EUTXO implementado en Cardano.

Seg煤n Manuel Chakravarty, cient铆fico de Lambda y arquitecto de Plutus en Input Output Global, Inc:

El modelo de libro mayor UTXO [ledger], largamente probado por Bitcoin, sigue siendo el est谩ndar de oro en cuanto a seguridad y escalabilidad. Creamos el modelo UTXO ampliado (EUTXO) para obtener el nivel de expresividad de los smart contracts, en el que fue pionero Ethereum, sin dejar de mantener la seguridad y la escalabilidad inigualables de UTXO. Sencillamente, 隆quer铆amos lo mejor de ambos mundos!

La investigaci贸n 鈥淭he Extended UTXO Model鈥 evidencia la capacidad de EUTXO para mantener continuamente el estado del contrato y utilizar el mismo c贸digo de contrato a lo largo de toda la secuencia de transacciones. Otra potente caracter铆stica del modelo EUTXO es que las tarifas requeridas para una transacci贸n v谩lida pueden predecirse con precisi贸n antes de contabilizarla. Esta es una caracter铆stica 煤nica impulsada por el :uk:dise帽o determinista del modelo EUTXO, que no se encuentra en los modelos basados en cuentas.

Plutus

Los smart contract son el motor de la ejecuci贸n de las transacciones en Cardano. Son autoejecutables, por lo que no dependen de terceros.

Durante la Conferencia Internacional sobre Programaci贸n Funcional de ACM SIGPLAN (ICFP鈥19), :uk:Manuel Chakravarty habl贸 de las blockchain funcionales y, en particular, present贸 Plutus como un enfoque funcional de los smart contracts:

Avanzar r谩pido y romper cosas no es la forma correcta de construir una plataforma blockchain. Las cosas rotas no se pueden arreglar f谩cilmente. Por lo tanto, Plutus fue construido sobre la s贸lida base matem谩tica de la programaci贸n funcional. Es una plataforma de programaci贸n para contratos inteligentes, que incluye elementos como bibliotecas Haskell para escribir contratos inteligentes, un compilador de Haskell a c贸digo Plutus Core on-chain, y varias herramientas para ayudar al desarrollo.

La mayor铆a de las plataformas de programaci贸n de blockchain dependen de un lenguaje personalizado, como el Solidity de Ethereum. Plutus se ha realizado sobre Haskell. La elecci贸n de Haskell permiti贸 a los equipos de investigaci贸n e ingenier铆a del IOG reutilizar la infraestructura, las bibliotecas y las herramientas existentes de Haskell con un historial establecido para el software de alta seguridad. Haskell facilita un c贸digo conciso y reutilizable, al tiempo que simplifica el razonamiento informal, las pruebas y el uso de m茅todos formales para alcanzar el nivel de seguridad deseado. Los m茅todos formales, como la forma m谩s estricta de razonamiento sobre la correcci贸n del c贸digo, son de especial inter茅s para los smart contracts de alto valor y est谩n bien respaldados por el paradigma de la programaci贸n funcional.

Los equipos de investigaci贸n e ingenier铆a del IOG entregaron contratos inteligentes Plutus basados en documentos como :uk:El modelo UTXO ampliado鈥, :uk:Tokens nativos personalizadas en el modelo UTXO ampliado鈥, :uk:Desentra帽ando la recursividad: compilaci贸n de un IR con recursividad al sistema F鈥, y :uk:El sistema F en Agda, por diversi贸n y beneficio鈥. En conjunto, estos documentos establecen el modelo de libro mayor habilitado para contratos inteligentes de Cardano, as铆 como la representaci贸n en la cadena del c贸digo de los contratos como los llamados t茅rminos lambda. 鈥楽ystem F in Agda, for fun and profit鈥 incluye una rigurosa definici贸n matem谩tica, que fue comprobada por ordenador con la ayuda del prover de teoremas de Agda.

Plutus se ha convertido en una plataforma de programaci贸n viva y en evoluci贸n para los smart contracts en Cardano. El equipo de educaci贸n de IOG tambi茅n ha lanzado el Programa Pionero de Plutus para reclutar y formar a desarrolladores en Plutus para el ecosistema de Cardano. Puede :uk:encontrar m谩s informaci贸n sobre el programa aqu铆.

Marlowe

Mientras que Plutus es un lenguaje de programaci贸n de contratos inteligentes funcionales, Marlowe es una plataforma basada en la web para construir y ejecutar contratos inteligentes financieros de bajo coste de forma visual, sin necesitar conocimientos profundos de programaci贸n. Abre un abanico de casos de uso para que los no programadores puedan ejecutar contratos sencillos y optimizados para las transacciones financieras.

El primer documento de investigaci贸n que presenta Marlowe, 鈥Marlowe: contratos financieros en blockchain鈥, se public贸 en 2018. En este art铆culo se explora el dise帽o de un lenguaje de dominio espec铆fico dirigido a la ejecuci贸n de contratos financieros. Presenta una sem谩ntica ejecutable de Marlowe en Haskell, un ejemplo de Marlowe en la pr谩ctica, y describe la herramienta que permite a los usuarios interactuar en el navegador con simulaciones de contratos Marlowe.

M谩s adelante, en 2020, el equipo de investigaci贸n del IOG public贸 un documento sobre 鈥An谩lisis est谩tico eficiente de los contratos Marlowe鈥, en el que se presenta el resumen del trabajo de optimizaci贸n del an谩lisis est谩tico de los contratos Marlowe. 鈥Marlowe: implementaci贸n y an谩lisis de contratos financieros en blockchain鈥 sigui贸 para describir la implementaci贸n de Marlowe en Cardano y el entorno de desarrollo y simulaci贸n basado en la web del Marlowe Playground. El documento tambi茅n muestra que los contratos de Marlowe pueden ser analizados exhaustivamente antes de ejecutarlos, ofreciendo as铆 fuertes garant铆as a los participantes en el contrato.

Marlowe ya se encuentra disponible para que las personas lo prueben dentro del Marlowe Playground - un entorno sandbox basado en el navegador donde se puede desarrollar, simular y probar el proceso de escritura de smart contracts. El IOG se est谩 preparando actualmente para el lanzamiento de la red de pruebas de Marlowe y utilizar谩 el Programa de Pioneros de Marlowe para recoger opiniones y casos de uso en todo el conjunto de productos de Marlowe. El equipo ha entregado recientemente la herramienta Marlowe CLI para permitir a los usuarios enviar transacciones e interactuar con los contratos de Marlowe utilizando una interfaz de l铆nea de comandos. Cuando se lancen a la red principal, los contratos Marlowe abrir谩n un abanico de posibilidades de DeFi.

Ahora que hemos hablado de las caracter铆sticas del modelo EUTXO de Cardano y de c贸mo facilita el desarrollo de smart contracts en Cardano, seguiremos hablando de la investigaci贸n que permiti贸 el soporte de m煤ltiples activos. Est茅 atento a la pr贸xima entrega de esta serie de art铆culos.


Traducci贸n al espa帽ol de 鈥淥verview of the research enabling smart contract support on Cardano鈥, escrito por @Olga_H ryniuk, Escritora T茅cnica en IOG, el 22 de junio de 2022.


Notas del traductor

  • Corchetes del traductor.

  • :uk: indica que el enlace apunta a un contenido en idioma ingl茅s.

  • :es: indica que el enlace apunta a un contenido en idioma espa帽ol.

Contenido Relacionado:


Considere suscribirse a las siguientes fuentes de informaci贸n en espa帽ol de Cardano seg煤n su inter茅s.