🇪🇸 Cardano presenta el modelo EUTXO para contratos inteligentes

:es: Traducción al español de Cardano presents EUTXO model for smart contracts

Publicado en Crypto News Flash por Jake Simmons, el 29 de Enero de 2020.


AlekseyIvanov-Cardano-2-1000x600

  • IOHK ha publicado un artículo sobre el nuevo modelo de UTXO Extendido (EUTXO) de Cardano.
  • El modelo EUTXO sentará las bases para los contratos inteligentes de Cardano en la fase Goguen.

IOHK, la empresa responsable del desarrollo de Cardano (ADA), publicó recientemente una formalización de cómo se implementarán los contratos inteligentes en la próxima fase de desarrollo (Goguen) de Cardano. Cardano está actualmente en la fase 2, Shelley. Shelley proporciona la funcionalidad del staking, el cual tiene la intención de sentar las bases para la descentralización de la red.

La fase 3, Goguen, añadirá la capacidad de desarrollar contratos inteligentes y aplicaciones descentralizadas (DApps) basadas en Cardano. La publicación del nuevo documento es una formalización del modelo que utiliza el lenguaje de contratos inteligentes de Cardano, Plutus, que está disponible en una plataforma de prueba desde diciembre de 2018.

Cardano utiliza una combinación de los modelos de ledger de Bitcoin y Ethereum

Las dos principales criptomonedas, Bitcoin y Ethereum, utilizan dos modelos de ledger diferentes, conocidos como el modelo UTXO (Bitcoin) y el modelo de cuentas (Ethereum). Tal como IOHK describe en su paper, ambos modelos ofrecen ventajas específicas, por lo que Cardano implementará una mezcla de ambos modelos.

En principio, el modelo de cuentas de Ethereum es más adecuado para permitir contratos inteligentes. Por otro lado, el UTXO de Bitcoin es un modelo semántico que permanece simple en un entorno complejo y distribuido, y requiere menos recursos. Por esta razón, IOHK ha diseñado el modelo UTXO Extendido (EUTXO), que es una extensión del modelo UTXO de Bitcoin.

Con Bitcoin, cada transacción se basa en el concepto de salida y entrada, es decir, la representación de ciertas cantidades de BTC. Para una transacción, se selecciona Bitcoin en forma de varias entradas y se forma una salida. Por lo tanto, la salida en Bitcoin no es un único byte de datos. En su lugar, el algoritmo recupera múltiples fracciones de Bitcoin para satisfacer un requisito de salida. Por ejemplo, la transacción (salida) de un BTC puede ser en forma de 3 entradas (0.3 BTC, 0.3 BTC y 0.4 BTC). Los cambios se envían a la base de datos UTXO.

Los investigadores de Cardano explicaron que aunque este modelo “funciona bien con la naturaleza concurrente y distribuida de la blockchain”, tiene severas limitaciones en cuanto a la programabilidad, lo que lo hace poco práctico para la mayoría de los contratos inteligentes. Por el contrario, el libro de cuentas de Ethereum permite cálculos complejos, pero debe introducir un “estado común”, una especie de memoria colectiva de todas las transacciones y contratos. El documento establece:

Sin embargo, el modelo UTXO en general, y Bitcoin, en particular, ha sido criticado por la limitada expresividad de la programabilidad lograda por el concepto de validador. En particular, el ledger basado en cuentas de Ethereum y la noción asociada de cuentas de contrato ha sido diseñada con el deseo de superar esas limitaciones.

Lamentablemente, lo hace introduciendo una noción de estado mutable compartido, lo que complica significativamente la semántica del código de contratos. En particular, los autores de contratos necesitan comprender las sutilezas de esta semántica, o se arriesgan a introducir problemas de seguridad.

Por eso el modelo EUTXO de Cardano es superador

El modelo EUTXO de Cardano permite la ejecución de un contrato inteligente en varias transacciones. La salida de cada transacción tendrá un campo de datos que puede contener cualquier información asociada a un contrato inteligente en particular:

El primer cambio es que permitimos que las salidas de las transacciones incluyan un valor de datos junto con el validador, que se pasa como un argumento adicional durante la validación. Esto permite que un contrato lleve algún estado (los datos) sin cambiar su “código” (el validador). Usaremos esto para llevar el estado de nuestras máquinas de estados.

Además, el sistema asegura que una determinada cadena de salidas utilice el mismo código de contrato - un concepto llamado continuidad del contrato:

El segundo cambio es que el validador recibe alguna información sobre la transacción que está siendo validada. Esta información se transmite como un argumento adicional de tipo TxInfo. La información adicional permite al validador hacer cumplir condiciones mucho más estrictas que las posibles con un modelo UTXO básico -en particular, puede inspeccionar las salidas de la transacción en curso, lo que es esencial para garantizar la continuidad del contrato.

Un tercer cambio es que IOHK “permitirá cierto acceso al tiempo” al “añadir un intervalo de validez a las transacciones”.

Si bien Shelley y Goguen se están desarrollando actualmente en paralelo, para ambas fases todavía no está claro cuándo tendrá lugar la migración a la red principal. Recientemente, Charles Hoskinson declaró que Shelley debería completarse en el primer trimestre de 2020. De acuerdo con la hoja de ruta de Cardano, Goguen también debería ser lanzado en 2020. Sin embargo, las fechas de lanzamiento son todavía inciertas debido a los retrasos que Cardano ha experimentado en el pasado.

White paper The Extended UTXO Model.

1 Like