AD
AD
  • Input Output Hong Kong (IOHK) ha publicado un artículo sobre el nuevo modelo UTXO Extendido (EUTXO) de Cardano.
  • El modelo EUTXO sentará las bases para los Smart Contracts de Cardano en la fase de Goguen.

Input Output Hong Kong (IOHK), la empresa responsable del desarrollo de Cardano (ADA), publicó recientemente una formalización de cómo se implementarán los Smart Contracts en la próxima fase de desarrollo (Goguen) de Cardano. Cardano se encuentra actualmente en la fase 2, Shelley. Shelley provee la funcionalidad de apostar y tiene la intención de sentar las bases para la descentralización de la red.

La fase 3, Goguen, agregará la habilidad de desarrollar Smart Contracts y aplicaciones descentralizadas (dApps) basadas en Cardano. La publicación del nuevo documento es una formalización del modelo que el lenguaje de Smart Contracts de Cardano, Plutus, usa, el cual está disponible en una plataforma de prueba desde diciembre de 2018.

Cardano usa una mezcla de los modelos de Ledger de Bitcoin y Ethereum

Las dos principales criptomonedas, BitcoinEthereum, utilizan dos modelos de Ledger diferentes, conocidos como el modelo UTXO (Bitcoin) y el modelo de cuentas (Ethereum). Tal y como escribe IOHK en su artículo, 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 Smart Contracts. 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 tanto, la salida en Bitcoin no es un único byte de datos. En su lugar, el algoritmo recupera varias 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 las blockchains», tiene severas limitaciones en cuanto a la programabilidad, lo que lo hace poco práctico para la mayoría de los Smart Contracts. Por el contrario, el Ledger de cuentas de Ethereum permite realizar cálculos complejos, pero debe introducir un «estado común», una especie de memoria colectiva de todas las transacciones y contratos. El documento establece (traducido libremente)

Sin embargo, el modelo UTXO en general y Bitcoin en particular fue criticado por la limitada programabilidad alcanzada por el concepto del Validator. Especialmente el Ledger de cuentas de Ethereum y el concepto relacionado de cuentas de contrato fue motivado por el deseo de superar estas limitaciones.

Desafortunadamente, esto se hace mediante la introducción de un concepto de estado de variables comunes, lo que complica considerablemente la semántica del código del contrato. En particular, los autores de contratos deben entender las complejidades de esta semántica o se arriesgan a introducir problemas de seguridad.

Por eso el modelo EUTXO de Cardano es mejor

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

El primer cambio es que permitimos que las salidas de las transacciones lleven un valor ADA con el validador, que se pasa como un argumento adicional durante la validación. Esto permite que un contrato lleve un estado particular (los datos) sin cambiar su «código» (el validador). Lo utilizaremos para transmitir el estado de nuestras máquinas de estados.

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

El segundo cambio es que el validador recibe cierta información sobre la transacción que se está validando. Esta información se pasa como un argumento adicional del tipo Tx Info. La información adicional permite al validador aplicar condiciones mucho más estrictas que las posibles con un modelo UTXO puro – en particular, puede comprobar la salida de la transacción actual, lo cual es esencial para asegurar la continuidad del contrato.

Un tercer cambio es que IOHK «permitirá cierto acceso al tiempo» al «agregar un intervalo de validez a las transacciones».

Aunque Shelley y Goguen se están desarrollando actualmente en paralelo, para ambas fases todavía no está claro cuándo tendrá lugar la transferencia 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 seguir en 2020. Sin embargo, las fechas de lanzamiento son todavía inciertas debido a los retrasos que Cardano ha experimentado en el pasado.

¡Síguenos en Facebook y Twitter y no te pierdas ninguna noticia!, ¿le gusta nuestro índice de precios?

Jake Simmons ha sido un entusiasta de las cripomonedas desde 2016, y desde que oyó hablar de Bitcoin y de la tecnología de blockchain, ha estado involucrado con el tema todos los días. Más allá de las criptomonedas, Jake estudió informática y trabajó durante 2 años para una startup en el sector de la blockchain. En el CNF es responsable de las cuestiones técnicas. Su objetivo es hacer que el mundo sea consciente de las criptomonedas de una manera sencilla y comprensible.

Exit mobile version