Amélioration des fonctionnalités et des performances : découvrez ce que la mise à jour Vasil va apporter à Cardano.
Nous sommes maintenant à un peu moins deux jours du déploiement de la mise à jour Vasil, qui améliore et renforce considérablement les capacités de Cardano. Les nouvelles fonctionnalités et améliorations de Plutus v2 permettront aux développeurs de DApp de créer des expériences inédites et passionnantes, tandis que le pipelining de diffusion ouvre la voie à un débit et à une plus grande capacité du réseau de Cardano.
Les préparatifs de Vasil sont en cours depuis un certain temps dans l’écosystème Cardano. Les principales équipes d’ingénieurs d’IOG et de la Fondation Cardano, les SPO, les développeurs de DApp et les exchanges ont réalisé des tests intensifs et des efforts d’intégration, avec des résultats positifs. Une équipe conjointe IOG/Fondation Cardano utilisera le combinateur de hard fork (HFC) pour déployer Vasil au niveau du protocole le 22 septembre. Les nouvelles capacités (y compris la prise en charge des nœuds et de l’interface CLI pour les entrées de référence, les données en ligne, les scripts de référence et les sorties collatérales), ainsi qu’un nouveau modèle de coût Plutus, seront disponibles pour les développeurs sur le réseau principal exactement une époque plus tard, le 27 septembre.
Sécurité, exactitude et expressivité
Ce fut un voyage à la fois méthodique et passionnant. Le développement de Cardano s’est déroulé en une série d’étapes. Tout d’abord, une base de sécurité et de correction. Ensuite, la capacité, la performance et l’expressivité. L’ère fédérée de Byron, et le redémarrage de Byron – qui a reconstruit la plateforme de base – s’est terminée par la mise à jour de Shelley durant l’été 2020. Shelley a transformé la blockchain Cardano en la plateforme de preuve d’enjeu la plus décentralisée au monde, avec près de 3 000 skatepools actifs.
La mise à jour Mary au printemps 2021 a introduit les NFT et la capacité multi-actifs, suscitant la création de l’une des communautés NFT les plus dynamiques de l’espace blockchain avec plus de 6 millions de jetons natifs distincts émis à ce jour.
La mise à niveau Alonzo, à l’automne 2021, a mis en œuvre la fonctionnalité de contrat intelligent à l’aide du langage de script Plutus, établissant un écosystème qui compte aujourd’hui plus de 1 000 projets basés sur Cardano.
Améliorations du script Plutus
Vasil améliore les capacités des contrats intelligents de Cardano grâce à Plutus v2, qui ajoute une plus grande efficacité à une plateforme de contrats intelligents déjà puissante. Vasil s’appuie sur le modèle EUTXO pour permettre le développement de DApps plus rapides et plus sophistiquées.
Cette mise à niveau a été un effort ambitieux et collaboratif depuis le début. La communauté a demandé et contribué à l’avancement d’un grand nombre d’améliorations via le processus de proposition d’amélioration de Cardano (CIP). Cela démontre une fois de plus le dynamisme et la croissance continue de la communauté des développeurs qui s’appuie sur Cardano.
Les principaux ajouts que Vasil débloque sont les suivants :
- Entrées de référence/datum (CIP-31). Cette amélioration permet le partage des données sur la blockchain. Auparavant, les datums étaient portés dans les sorties de transaction ; ils stockaient et donnaient accès à des informations sur la blockchain. Cependant, pour accéder aux informations contenues dans ces datums, il était nécessaire de dépenser la sortie à laquelle le datum était attaché. Cela nécessitait la recréation d’une sortie dépensée. L’ajout d’entrées de référence permet désormais aux développeurs de consulter le datum sans étapes supplémentaires. Cela facilite l’accès aux informations stockées sur la blockchain sans qu’il soit nécessaire de dépenser et de recréer des UTXO. Cela sera utile pour les oracles, par exemple.
- Datums en ligne (CIP-32). Les datums de transaction étaient auparavant attachés aux sorties sous forme de hashs. Avec l’implémentation des datums en ligne, les développeurs peuvent maintenant créer des scripts et attacher les datums directement aux sorties au lieu d’utiliser leurs hashs. Cela simplifie l’utilisation des données – un utilisateur peut voir la donnée réelle plutôt que de la fournir pour correspondre au hash donné.
- Scripts/smartcontract de référence (CIP-33). Dans Alonzo, lorsqu’on dépensait une sortie verrouillée dans un script Plutus, le script devait être inclus dans la transaction de dépense. Cela augmentait la taille du script et entraînait certains retards dans son traitement. La mise à jour des scripts de référence permet aux développeurs de référencer un contrat intelligent sans l’inclure dans chaque transaction. Cela réduit considérablement la taille des transactions, améliore le débit et réduit les coûts d’exécution du script (puisque le script ne doit être payé qu’une seule fois).
- Datums et redeemers. Suite à la mise à jour de Vasil, les développeurs seront en mesure de voir ceux qui peuvent être rembourser pour chaque entrée non seulement pour la transaction envoyée au script en cours d’exécution.
- Primitive de sérialisation des données. Une nouvelle primitive Plutus « serialiseData » (CIP-42) réduit les coûts de mémoire et de CPU, permettant ainsi de créer des méthodes plus optimisées et génériques de sérialisation des données.
La communauté attend avec impatience ces mises à jour de Plutus. Plusieurs nouveaux projets DeFi très attendus, dont Indigo Protocol, Liqwid Finance et Maladex, ont l’intention de tirer parti des capacités de la version 2 lors de leur lancement. Et de nombreux autres projets en cours mettront à jour leur code pour tirer pleinement parti des nouvelles fonctionnalités. Un tel éventail d’améliorations signifie que l’écosystème Cardano verra en ligne de toutes nouvelles DApps et des projets en développement depuis les débuts de Goguen (après la mise à jour et les audits). Les nouveautés arriveront au cours du quatrième trimestre et au-delà.
Bénéficiant d’une nouvelle version de Plutus plus efficace, les nouveaux modèles de coût Plutus (actifs sur la blockchain à partir du 27 septembre) rendront les DApps v1 et v2 moins chères. L’étendue de ces avantages dépendra de chaque DApp, mais les premiers rapports des développeurs de DApp sont très prometteurs. Artano, un projet NFT fonctionnant actuellement sur Cardano, a récemment publié un blog partageant les résultats de ses tests approfondis. En utilisant Plutus v2, ils ont constaté une diminution de plus de 90 % de la taille des scripts et une réduction correspondante des coûts de plus de 75 %.
Autres améliorations
L’ajustement des garanties (CIP-40) améliore la validation des transactions. Auparavant, le montant de la garantie était fixé à 150 % des frais de transaction, et aucune modification n’était apportée à l’UTXO de la garantie. Cela signifie que si un script échouait à la validation de la phase 2, l’utilisateur d’une DApp perdait tous les fonds stockés dans l’UTXO choisi pour la garantie.
Après Vasil, les développeurs de DApp seront en mesure de spécifier une adresse de changement pour le script de garantie. Si le script échoue à la validation de la phase 2, seul le montant de la garantie sera prélevé, et les fonds restants seront envoyés à l’adresse de changement.
Pipelining par diffusion
IOG a appliqué une série d’optimisations régulières et minutieuses des paramètres (comme l’augmentation de la taille des blocs et des unités de mémoire de script) tout au long du début de l’année 2022 pour régler et améliorer les performances du réseau. En conséquence, le réseau est maintenant très performant, avec une charge constamment bien en deçà des mesures requises.
Le pipelining de diffusion est une autre amélioration de la couche de consensus qui facilite la propagation plus rapide des blocs. Également déployé dans le cadre de Vasil, il permettra d’augmenter la marge de production des blocs, ce qui améliorera encore les performances et la compétitivité de Cardano. Les processus de validation des scripts feront l’objet d’ajustements et d’optimisations qui contribueront à la cohérence des temps de propagation des blocs et à l’augmentation des taux de traitement des transactions. Le pipelining par diffusion offre une plus grande marge de manœuvre pour d’autres ajustements, en améliorant les temps de propagation des blocs, ce qui permet d’augmenter le débit.
Le pipelining de diffusion rationalise efficacement le processus de partage des informations sur les blocs nouvellement créés entre les participants au réseau en garantissant que les blocs peuvent être partagés (propagés) dans le réseau bien en deçà de cinq secondes (le « plafond » de sécurité) après leur création. Le pipelining de diffusion propage les blocs avant leur validation complète, ce qui permet de « chevaucher » le temps consacré à la diffusion et le temps nécessaire à la validation.
Le pipelining garantit également que l’en-tête de bloc faisant référence au hachage d’un bloc précédent est propagé correctement. Le corps du bloc est conservé dans les métadonnées incluses dans le bloc suivant, ce qui est essentiel pour la résistance aux attaques DDoS, même sans confirmation complète du bloc.
En définitive, le pipelining de diffusion améliorera l’évolutivité en permettant de nouvelles améliorations des performances. En termes simples, c’est un autre levier que l’on peut actionner. Et comme toujours, il est essentiel de procéder à des changements lents, réguliers et mesurés. Nous pouvons nous attendre à un « pic » d’activité immédiatement après la mise à niveau, lorsque la communauté testera les capacités. Le monitoring se poursuivra pendant au moins quatre époques après Vasil. Par la suite une décision sera prise quant à de nouveaux ajustements, sur la base d’une bande passante réseau « normale ».
Suppression du paramètre » d «
Il convient également de noter que si la production de blocs est entièrement décentralisée depuis le 31 mars 2021, la mise à niveau de Vasil supprimera entièrement le paramètre « d », cimentant ainsi la décentralisation à perpétuité et empêchant toute refédération future.
Sécurité optimisée
Enfin, Vasil optimise le processus de fonction aléatoire vérifiable (VRF) d’Ouroboros. Avant Vasil, la validation des blocs nécessitait deux fonctions VRF à chaque changement au niveau du réseau. Vasil supprime une de ces fonctions, ce qui accélère globalement la validation des blocs et la synchronisation du réseau. Les utilisateurs bénéficieront de meilleures performances sans compromettre les paramètres de sécurité.
Un été de tests
Vasil représente un ensemble complexe de travaux, à plusieurs égards. Tout d’abord, en termes d’ingénierie de base, il s’agit de la mise à jour la plus importante que l’équipe d’IOG ait entreprise à ce jour, touchant chaque couche de la pile réseau. Par conséquent, chaque composant en aval (y compris DB-sync, le backend du portefeuille, Rosetta, etc.) a dû être mis à jour et soumis à des tests de régression complets.
Et il faut tenir compte des multiples parties prenantes de l’écosystème. Il a toujours été primordial de s’assurer que toute mise à jour est sûre et sécurisée, et que les acteurs de l’écosystème Cardano sont entièrement prêts. Et bien qu’IOG ait travaillé selon un plan clair, la nature de l’ingénierie logicielle et ces dépendances signifient que les choses peuvent prendre plus de temps que prévu.
C’est pourquoi IOG et la Fondation Cardano se sont récemment mis d’accord sur des indicateurs clairs de masse critique dans la dernière ligne droite pour garantir la préparation de l’écosystème, avant d’annoncer la date de l’événement du combinatoire du hard fork.
Ces indicateurs sont les suivants :
- 75 % des blocs du réseau principal sont créés par le dernier nœud candidat Vasil (1.35.3).
- Environ 25 exchanges ont été mises à niveau (représentant environ 80 % de la liquidité de l’ada).
- Les 10 premières DApps par TVL confirment qu’elles sont passées à la version 1.35.3 en pré-production et qu’elles sont prêtes pour le réseau principal.
Le suivi de ces paramètres est en cours. La communauté SPO a été la première à » cocher la case » ; 98 % des blocs ont été créés par le nouveau nœud 1.35.3, dépassant largement le seuil minimum fixé. Au moment de la rédaction de cet article, la liquidité des exchanges est proche de 60%, et avec de nombreux exchange de premier plan confirmés prêts ou en cours de mise à niveau, l’équipe est pleinement confiante à cet égard. IOG a travaillé en étroite collaboration avec un certain nombre de projets DApp de premier plan pour suivre leur état de préparation et, là encore, les chiffres sont bons. Un récent sondage au sein de la communauté technique a confirmé que tout sera prêt pour le 22 septembre, et la date de la mise à niveau du réseau principal a donc été fixée.
Alors, que se passe-t-il ensuite ?
Plusieurs choses doivent se produire d’ici à la date convenue pour le hard fork. Le réseau de développement Vasil DevNet, qui a été créé spécifiquement pour les premiers tests de Vasil, est désormais obsolète. Le nouvel environnement Preview deviendra la plateforme de développement agile pour la communauté à l’avenir. Une mise à niveau réussie sur l’environnement de préproduction est la dernière étape avant de passer au réseau principal.
Calendrier de déploiement et dates clés
Voici un aperçu plus détaillé du calendrier technique :
Vasil arrive le mois du cinquième anniversaire de Cardano et représente un changement radical dans les capacités de la blockchain. Pourtant, un simple utilisateur qui utilise Cardano pour ses transactions et ses DApps n’en a rien à faire, car tout se passe essentiellement en coulisses. Grâce à la technologie du Hard Fork Combinator (HFC) de Cardano, les mises à jour pour les utilisateurs finaux sont transparentes et sans problème. Ils n’ont qu’à se réjouir d’une plus grande efficacité et d’un traitement plus rapide des transactions !
Au moment de la rédaction de cet article, la liquidité des exchanges avoisine les 60 %. Alors que l’équipe de la Fondation Cardano qui gère les exchanges prévoit que ce chiffre sera proche du seuil de 80 % au moment de la mise à niveau, les utilisateurs détenant leurs ada sur des échanges pourraient subir des perturbations de service si l’exchange choisi n’a pas encore mis à jour son système au moment de la mise à niveau du réseau. Si vous avez beaucoup de fonds sur un exchange, IOG recommande de suivre les exchanges qui ont été mis à niveau ou de consulter les pages d’assistance à la clientèle des exchanges.
En hommage à Vasil St. Dabov
La mise à niveau a été nommée en l’honneur de l’ambassadeur Cardano, le regretté Vasil St. Dabov, qui est malheureusement décédé en 2021. Vasil était un mathématicien, programmeur, polymathe et défenseur de l’environnement bulgare qui a planté plus de 10 000 arbres au cours de sa vie et a organisé les célébrations du deuxième anniversaire de Cardano dans sa ville natale de Plovdiv en 2019.
Il est donc particulièrement poignant – et tout à fait fortuit – que le 22 septembre soit également l’anniversaire de la déclaration d’indépendance de 1908 de l’État bulgare (l’un des plus anciens d’Europe) vis-à-vis de l’empire ottoman. Un « heureux hasard » pour une communauté résolue et très réfléchie, qui confère une signification supplémentaire à cette mise à niveau des plus importantes.
Quentin est ambassadeur pour la blockchain Cardano et animateur du Podcast Cardano FR. Il travaille actuellement à titre d’architecte de solutions TI et de consultant blockchain sur plusieurs projets. Il est également conférencier et contribue au développement de formations académiques et professionnelles pour encourager l’adoption de la technologie blockchain et des cryptomonnaies.