StarkNet Alpha 1
0x568B
May 15th, 2022

Initialement publié en anglais par StarkWare le 19 Juillet, 2021

Caractéristiques: l'interaction L1<>L2, les données on-chain et l'écosystème StarkNet en pleine expansion

TL;DR
StarkNet Alpha 1 comporte deux nouvelles fonctionnalités:

  • Interaction L1<>L2
  • Données on-chain

Introduction

Au début de l’année, nous avons annoncé que StarkWare construisait StarkNet, un ZK-Rollup¹ basé sur les STARK décentralisés permissionless fonctionnant comme un réseau L2 sur Ethereum. StarkNet permet à toute dApp d’atteindre une scalabilité illimitée pour son calcul – sans compromettre la composabilité et la sécurité d’Ethereum.

Le mois dernier, StarkNet Alpha 0 est sorti. Pour la première fois, les développeurs peuvent écrire n’importe quel smart contract et le déployer, permissionlessly, sur un ZK-Rollup. Les utilisateurs sont en mesure d’envoyer des transactions au réseau, à la manière d’Ethereum.

Aujourd’hui, nous sortons une nouvelle version; Alpha 1. Nous publions des fonctionnalités sur une base continue pour permettre aux développeurs d’interagir avec les nouvelles fonctionnalités dès que possible. Nous prévoyons que cela resserrera le cycle de feedback et permettra à la communauté d’améliorer rapidement StarkNet.

Caractéristiques d'Alpha 1

Interaction L1<>L2

Alpha 1 inclut un protocole de messagerie L1<>L2, qui permet aux développeurs de mettre en œuvre des flux de transactions transparents entre L1 et L2. Les développeurs peuvent désormais envoyer des messages depuis des contrats sur L1 vers des contrats sur L2 et vice versa.

L’une des beautés de ZK-Rollups est que les mises à jour d’état sont définitives, sans aucun délai. Cela signifie que les messages qui ont été envoyés de L2 à L1 peuvent être immédiatement redirigés vers leur contrat de destination. Cela ouvre la voie à la création d’applications véritablement interopérables entre les layers.

Intéressé à l’essayer? La meilleure façon de commencer est de suivre le tutoriel ici.

Notre protocole L1<>L2 doit beaucoup aux autres L2 (notamment Optimism et Arbitrum) dont les travaux antérieurs dans ce domaine ont influencé notre conception.

Disponibilité des données on-chain

La mise à jour de l’état de StarkNet est désormais publiée en tant que données on-chain sur Ethereum. Cela permet à tout utilisateur de construire complètement l’état de StarkNet à partir des données de L1. Chaque mise à jour d’état inclut la différence d’état, c’est-à-dire quel stockage a été modifié et sa nouvelle valeur.

Ici aussi, le ZK-Rollup montre sa force. Contrairement aux Optimistic Rollups, où les données complètes des transactions doivent être envoyées on-chain, sur les ZK-Rollups, seules les données minimales absolues nécessaires au calcul de la différence d’état sont envoyées on-chain.

Prenons un exemple primordial, les oracles de prix. Une transaction pour mettre à jour un oracle de prix contient habituellement plusieurs transactions mais ne met à jour qu’une seule cellule de stockage; le prix de la paire. Les données on-chain requises pour une mise à jour d’état contenant des transactions d’oracles de prix dans un Optimistic Rollup croissent linéairement avec le nombre de mises à jour, alors que dans un ZK-Rollup , il s’agira toujours d’une mise à jour de stockage unique.

De plus, des algorithmes de compression peuvent être appliqués aux données publiées, et leur validité est attestée par la preuve STARK, ce qui réduit encore l’empreinte on-chain. Les futures versions de StarkNet introduiront des optimisations innovantes dans ce domaine.

StarkNet OS

Nous publions également le code du StarkNet OS (operating system). L’OS StarkNet est le programme Cairo qui fait fonctionner StarkNet. L’OS gère tout ce qui se passe sur le réseau: déploiement des contrats, exécution des transactions, messages L1<>L2, etc. L’architecture et la conception de StarkNet OS seront expliquées en détail dans un post séparé.

Fonctionnalités supplémentaires

Non seulement StarkNet Alpha a évolué, mais nous améliorons aussi constamment Cairo. Pour une description complète des nouvelles fonctionnalités de Cairo v0.3.0, consultez les notes de publication ici.

L’écosystème grandit

Outre le travail constant sur StarkNet Core, le travail de l’écosystème sur StarkNet est en constante expansion. Nous sommes ravis de collaborer avec certaines des équipes les plus talentueuses de l’écosystème.

Fermion, le premier Full Node de StarkNet, est développé par l’équipe Erigon (anciennement TurboGeth). Basé sur leurs énormes connaissances acquises en travaillant sur Ethereum, nous sommes en mesure de travailler avec eux pour construire un full node puissant, qui intègre de nombreuses leçons apprises lors de la construction pour Ethereum, tout en bénéficiant de la scalabilité offerte par les preuves STARK.

Nethermind travaille sur Warp, un compilateur d’EMV vers Cairo. Lié par notre culture de ne présenter de nouveaux outils qu’une fois prêts, tout ce que nous pouvons dire, c’est: attendez-vous à des nouvelles passionnantes de ce côté, très bientôt! Nous pouvons dire, cependant, qu’ils avencent très rapidement.

Ce que l’avenir réserve

La prochaine étape sur notre chemin vers StarkNet sera la composabilité – permettant aux contrats d’interagir les uns avec les autres. Restez à l’écoute.

¹Comme nous l’avons dit précédemment, ZK-Rollup est désormais un terme communément utilisé, mais très trompeur: ces solutions n’offrent pas (actuellement) une preuve à connaissance nulle.

Mise à jour (Nov. 2021) : StarkNet Alpha est en direct sur Ethereum Mainnet

Traduction faite par @cleminso

Arweave TX
JR5uK6yd16D8dMhE9MTQWtb5dstB1xtVrEiDT83qI60
Ethereum Address
0x568B12eBBE85521D2cd8a2C9B7a8EF3f48aa2d66
Content Digest
TfPzZ8mZJi-wy6nnMUrGNez9dNUsw4GD0d0WFM8bG_M