Cardano présente le modèle EUTXO pour les smart contracts

  • Input Output Hong Kong (IOHK) a publié un article sur le nouveau modèle Extended UTXO (EUTXO) de Cardano.
  • Le modèle EUTXO jettera les bases des contrats de Cardano sur les cartes à puce dans la phase Goguen.

Input Output Hong Kong (IOHK), la société responsable du développement de Cardano (ADA), a récemment publié une formalisation de la manière dont les contrats de smart seront mis en œuvre dans la prochaine phase de développement (Goguen) de Cardano. Cardano est actuellement en phase 2, Shelley. Shelley fournit la fonctionnalité de jalonnement et est destinée à jeter les bases de la décentralisation du réseau.

La phase 3, Goguen, ajoutera la capacité de développer des smart contracts et des applications décentralisées (dApps) basées sur Cardano. La publication du nouveau document est une formalisation du modèle que le langage de smart contract Plutus de Cardano utilise, qui est disponible sur une plateforme de test depuis décembre 2018.

Cardano utilise un mélange des modèles de Ledger de Bitcoin et Ethereum

Les deux principales crypto-monnaies, Bitcoin et Ethereum, utilisent deux modèles de comptabilité différents, connus sous le nom de modèle UTXO (Bitcoin) et de modèle de comptabilité (Ethereum). Comme l’écrit IOHK dans son article, les deux modèles offrent des avantages spécifiques, c’est pourquoi Cardano mettra en œuvre un mélange des deux modèles.

En principe, le modèle de compte d’Ethereum est plus adapté pour permettre des smart contracts. D’autre part, l’UTXO de Bitcoin est un modèle sémantique qui reste simple dans un environnement complexe et distribué et qui nécessite moins de ressources. Pour cette raison, l’IOHK a conçu le modèle Extended UTXO (EUTXO), qui est une extension du modèle UTXO de Bitcoin.

Avec Bitcoin, chaque transaction est basée sur le concept de sortie et d’entrée, c’est-à-dire la représentation de certains montants de CTF. Pour une transaction, les Bitcoin sous forme de diverses entrées sont sélectionnées et transformées en une sortie. La sortie dans Bitcoin n’est donc pas un octet de données unique. Au lieu de cela, de multiples fractions de Bitcoin sont récupérées par l’algorithme pour répondre à une exigence de sortie. Par exemple, la transaction (sortie) d’une BTC peut se présenter sous la forme de 3 entrées (0,3 BTC, 0,3 BTC et 0,4 BTC). Les modifications sont envoyées à la base de données UTXO.

Les chercheurs de Cardano ont expliqué que bien que ce modèle « fonctionne bien avec la nature simultanée et distribuée des blockchains », il présente de sérieuses limitations en termes de programmabilité – ce qui le rend peu pratique pour la plupart des smart contracts. En revanche, le Ledger comptable d’Ethereum permet des calculs complexes, mais doit introduire un « état commun », une sorte de mémoire collective de toutes les transactions et contrats. Le document indique (traduction libre)

Néanmoins, le modèle UTXO en général et Bitcoin en particulier ont été critiqués pour la programmabilité limitée atteinte par le concept de Validator. Le Ledger comptable d’Ethereum en particulier et le concept connexe de comptes de contrats ont été motivés par le désir de surmonter ces limitations.

Malheureusement, cela se fait en introduisant un concept d’état variable commun, ce qui complique considérablement la sémantique du code de contrat. En particulier, les auteurs de contrats doivent comprendre les subtilités de cette sémantique ou risquent d’introduire des problèmes de sécurité.

C’est pourquoi le modèle EUTXO de Cardano est meilleur

Le modèle EUTXO de Cardano permet l’exécution d’un smart contract en plusieurs transactions. Chaque sortie de transaction aura un champ de données qui pourra contenir toute information associée à un contrat à puce particulier:

La première modification est que nous autorisons les sorties de transaction à porter une valeur ADA avec le validateur, qui est passée comme argument supplémentaire lors de la validation. Cela permet à un contrat de porter un état particulier (les données) sans changer son « code » (le validateur). Nous l’utiliserons pour transmettre l’état de nos machines d’état.

En outre, le système garantit qu’une chaîne de sortie donnée utilise le même code de contrat – un concept appelé continuité du contrat:

Le deuxième changement est que le validateur reçoit des informations sur la transaction en cours de validation. Ces informations sont transmises comme un argument supplémentaire de type Tx Info. Ces informations supplémentaires permettent au validateur d’appliquer des conditions beaucoup plus strictes que celles possibles avec un modèle UTXO pur – en particulier, il peut vérifier la sortie de la transaction en cours, ce qui est essentiel pour assurer la continuité du contrat

Un troisième changement est que l’IOHK « permettra un certain accès au temps » en « ajoutant un intervalle de validité aux transactions ».

Bien que Shelley et Goguen soient actuellement développés en parallèle, pour les deux phases, on ne sait pas encore quand le transfert vers le réseau principal aura lieu. Plus récemment, Charles Hoskinson a déclaré que Shelley devrait être achevé au cours du premier trimestre de 2020. Selon la feuille de route de Cardano, Goguen devrait également suivre en 2020. Cependant, les dates de sortie sont encore incertaines en raison des retards que Cardano a connus dans le passé.

Suivez-nous sur Facebook et Twitter et ne manquez plus aucune nouvelle ! Vous appréciez nos indices de prix?

About Author

Jake Simmons has been a crypto enthusiast since 2016, and since hearing about Bitcoin and blockchain technology, he's been involved with the subject every day. Beyond cryptocurrencies, Jake studied computer science and worked for 2 years for a startup in the blockchain sector. At CNF he is responsible for technical issues. His goal is to make the world aware of cryptocurrencies in a simple and understandable way.

Les commentaires sont fermés.