
À la veille de la mise à niveau de Cancun, panorama du paysage zkEVM d'Ethereum
TechFlow SélectionTechFlow Sélection

À la veille de la mise à niveau de Cancun, panorama du paysage zkEVM d'Ethereum
À mesure que chaque projet explore la zkEVM, voire améliore directement Ethereum lui-même, il est possible que toutes les solutions finissent par atteindre un effet « parfaitement équivalent à Ethereum ».
Auteur : 0xRJ.eth
Introduction
La mise à niveau majeure d'Ethereum prévue pour l'automne et l'hiver 2023 — l'Upgrade Cancun-Deneb — vise principalement à améliorer l'évolutivité, la sécurité et l'accessibilité du réseau Ethereum, tout en réduisant considérablement les frais de gaz sur les réseaux de couche 2 (L2). Si elle est réussie, cette mise à jour profitera directement à l'écosystème des solutions de scaling L2 basées sur Rollups, voire pourrait déclencher une explosion du secteur L2 dans son ensemble.
Dans le domaine du scaling L2, les solutions ZK Rollups, reconnues pour leur excellente performance de compression des données, sont désormais considérées comme la solution stratégique à moyen et long terme pour Ethereum. En 2022, Vitalik Buterin, fondateur d’Ethereum, a classé les différents types de ZK Rollups selon leur niveau de compatibilité avec la machine virtuelle Ethereum (EVM), établissant ainsi une norme fondamentale pour les zkEVM.
Cet article s'inspire fortement de la classification pionnière de Vitalik. Un an plus tard, le domaine a connu des progrès significatifs. Cet article vise à offrir une mise à jour claire et une interprétation détaillée (adaptée aux débutants) basée sur les analyses de Vitalik, avec une logique rigoureuse et un langage simple.
Qu'est-ce que l'EVM ?
L'EVM (Ethereum Virtual Machine) est la première machine virtuelle blockchain Turing-complète. On peut la comprendre comme l'environnement d'exécution des codes sur Ethereum, spécialement conçue pour exécuter les contrats intelligents déployés sur le réseau. Grâce à l'EVM, les contrats intelligents peuvent fonctionner automatiquement au sein d'un réseau décentralisé.
Publiée en 2015, l'EVM reste à ce jour la machine virtuelle blockchain la plus éprouvée. Elle constitue une infrastructure essentielle d’Ethereum. Lorsqu'on évalue d'autres blockchains, la compatibilité avec l'EVM est désormais un critère important, car elle implique non seulement un environnement d'exécution compatible, mais aussi l'accès aux outils existants d’Ethereum, ainsi qu’un effet de réseau massif et un écosystème mature et complexe.
Toutefois, lors de sa conception initiale, l'EVM n'imaginait pas que les ZK Rollups deviendraient un jour la solution principale de scaling pour Ethereum. Elle n’a donc pas été pensée pour être compatible avec les preuves à divulgation nulle (zero-knowledge proofs). Cela rend particulièrement difficile la création d'une EVM compatible avec les preuves zero-knowledge (zkEVM).
Qu'est-ce qu'un zkEVM ?
En raison de la grande difficulté d'allier preuves à divulgation nulle (Zero-Knowledge Proof) et compatibilité avec la machine virtuelle Ethereum (EVM), les premiers ZK Rollups ne supportaient pas l'EVM. Ils manquaient généralement de capacité d'exécution de contrats intelligents (ou utilisaient une machine virtuelle spécifique), ce qui les limitait à des cas simples comme les échanges (swap) ou les paiements.
Pour résoudre ce problème, de nombreuses organisations et chercheurs se sont concentrés sur la création de zkEVM (Zero-Knowledge Ethereum Virtual Machine). Comme son nom l'indique, il s'agit de générer des preuves à divulgation nulle concernant l’exécution (processus et résultats) des contrats intelligents dans l’environnement EVM.
Avec la montée en puissance des solutions ZK Rollup et les progrès technologiques, divers projets ont adopté différentes approches selon leurs compromis entre compatibilité (Compatibility) et performance (Performance), notamment en termes de temps de génération des preuves, pour intégrer l'exécution EVM aux calculs de preuve zero-knowledge.
Les différents types de zkEVM :

Source : Blog de Vitalik « The different types of ZK-EVMs »
En 2022, Vitalik a publié un article intitulé « Les différents types de zkEVM », dans lequel il a proposé une classification et une comparaison des projets de scaling zk existants.
Nous allons maintenant clarifier, avec un langage simple et une logique claire, les types de zkEVM, leurs architectures techniques, ainsi que leurs avantages et inconvénients respectifs.
Type 1 zkEVM : Équivalent complet à Ethereum
Type 2 zkEVM : Compatible complètement avec l’EVM (il existait autrefois un Type 2.5, désormais fusionné avec le Type 2)
Type 3 zkEVM : Presque compatible avec l’EVM
Type 4 zkEVM : Compatible avec les langages de haut niveau

Type 1 zkEVM — Équivalent complet à Ethereum
Architecture :
-
Exactement identique à Ethereum, sans modification aucune de l’environnement système d’Ethereum.
-
Aucun remplacement requis des hachages (Hashes), arbres d’état (State Trie), arbres de transactions (Transactions Trie), contrats précompilés (Precompiles), ni aucune autre logique de consensus (In-consensus Logic).
-
Objectif : compatibilité totale avec les applications existantes, permettant aux développeurs de transférer leurs applications sans friction.
Avantages :
-
Le niveau de compatibilité le plus élevé parmi tous les types de ZK Rollup. C’est donc la solution la plus favorable aux développeurs, qui peuvent déployer leurs codes existants sur la couche 2 sans modification, grâce à une logique de consensus et un environnement système strictement identiques à ceux d’Ethereum.
-
Aligné avec la direction de scaling d’Ethereum lui-même : les avancées réalisées sur les zkEVM de type 1 pourraient être intégrées sans friction à Ethereum L1, augmentant ainsi l’évolutivité native de la chaîne principale.
-
Permet de réutiliser sans friction l'infrastructure massive existante d’Ethereum (par exemple, les clients d’exécution d’Ethereum peuvent servir à produire et traiter les blocs Rollup ; les explorateurs de blocs et autres outils peuvent également être déployés facilement sur L2).
-
Peut vérifier les blocs d’Ethereum exactement comme le fait actuellement Ethereum, ou plus précisément, vérifier la couche d’exécution (incluant toutes les transactions, contrats intelligents et logique de comptes), bien que la logique de consensus de la Beacon Chain ne soit pas encore incluse.
-
Comme mentionné précédemment, la valeur majeure d’une équivalence complète à Ethereum réside dans l’exploitation de son effet de réseau colossal et de son écosystème mature.
Inconvénients :
-
Le type 1 hérite des mêmes difficultés qu’Ethereum face à l’intégration des preuves à divulgation nulle (puisqu’il est équivalent à Ethereum, qui n’a pas été conçu pour les zk).
-
Le principal problème est la durée nécessaire à la génération des preuves. Pour y remédier, les principales solutions industrielles consistent à paralléliser massivement les preuves via des ingénieries sophistiquées, ou à accélérer le processus par optimisation matérielle.
Projets principaux :
-
Équipe PSE (Privacy and Scaling Explorations) de la Fondation Ethereum
-
Taiko : mis à jour vers le testnet Alpha-4 en juillet 2023, prévu pour le lancement du mainnet début 2024. Depuis le départ, Taiko a priorisé la décentralisation et la compatibilité, étant actuellement le seul ZK Rollup à proposer un validateur (proposer) entièrement décentralisé.
Type 2 zkEVM — Compatible complètement avec l’EVM
Architecture :
-
Visent une compatibilité totale avec l’EVM, sans être équivalents à Ethereum.
-
Par rapport à l’environnement d’Ethereum, ces zkEVM modifient certains aspects tels que la structure des blocs, la structure des arbres d’état, la tarification des frais de gaz (réajustée selon le degré d’amitié zk) et le stockage des données, afin d’accélérer et réduire le coût de génération des preuves.
-
Objectif : compatibilité maximale avec la majorité des applications existantes, quelques ajustements mineurs pouvant être nécessaires pour certaines.
Avantages :
-
Grâce à une nouvelle tarification des frais de gaz (les opcodes peu adaptés aux zk coûtent plus cher, et inversement) et à la suppression de certaines piles Ethereum incompatibles avec les zk, ils offrent un temps de vérification plus rapide que le type 1.
-
Compatibles avec la très grande majorité des applications Ethereum existantes, donc expérience utilisateur et développeur quasi sans friction.
-
Bien qu'ils ne puissent pas utiliser directement les clients d’exécution d’Ethereum sans modifications, les outils de débogage EVM et autres infrastructures de développement restent largement utilisables après adaptation. Ils bénéficient donc fortement de l’écosystème florissant d’Ethereum.
Inconvénients :
-
Malgré des impacts limités, les modifications apportées à l’environnement d’exécution peuvent entraîner des problèmes de développement à long terme. Par exemple, remplacer le hachage Keccak couramment utilisé par un autre hachage plus adapté aux zk (comme Poseidon) peut poser problème aux applications dépendant historiquement de Keccak (ex : ponts cross-chain. Principe général : les ponts ne communiquent pas en temps réel. Typiquement, vous brûlez un actif sur la chaîne A, et devez prouver cet événement sur la chaîne B pour frapper un actif. Cela implique de prouver des données historiques via Keccak, ce qui devient impossible si Keccak est remplacé).
-
Le changement des règles de tarification des frais de gaz (visant à inciter les développeurs à éviter les opcodes mal adaptés aux zk) pose problème aux contrats déjà optimisés pour les frais de gaz sur Ethereum, ainsi qu’aux outils d’optimisation existants.
-
Bien que plus efficaces que le type 1, ils restent relativement lents en matière de génération de preuves comparé au type 4.
Projets principaux :
-
Scroll : testnet Pre-Alpha lancé en septembre 2022, testnet Alpha en février 2023, mainnet prévu en août 2023. Initialement classé type 3, Scroll progresse vers une compatibilité accrue et vise désormais le type 2.
-
Polygon zkEVM (solution ZK Rollup de l’équipe Polygon) : version beta du mainnet lancée en mars 2023. Initialement type 3, il évolue progressivement vers le type 2.
Type 3 zkEVM — Presque compatible avec l’EVM
Architecture :
-
Selon Vitalik dans son article de 2022, le type 3 ressemble davantage à une étape transitoire (soit vers le type 2/1 via une meilleure compatibilité, soit vers le type 4 via une moindre compatibilité mais une meilleure amitié zk).
-
Presque compatible avec l’EVM. Sacrifie davantage la compatibilité pour faciliter le développement et accélérer la génération des preuves zk.
-
Supprime davantage de fonctionnalités difficiles à implémenter dans un zkEVM (comme les précompilés).
-
Présente des différences plus marquées dans le traitement du code de contrat, de la mémoire ou de la pile.
-
Objectif : compatibilité avec la majorité des applications existantes.
Avantages :
-
Plus adapté aux zk que les types 1 et 2, avec un temps de génération des preuves plus court.
-
Compatible avec plus d’applications Ethereum existantes que le type 4.
Inconvénients :
-
Moins compatible que les types 1 et 2, avec davantage de sacrifices (moins convivial pour les développeurs Ethereum). C’est pourquoi le type 3 est souvent vu comme transitoire, les projets tendant à évoluer vers le type 2.
-
Temps de preuve plus lent que le type 4.
Projets principaux :
-
Scroll : initialement type 3, il progresse vers le type 2 en renforçant sa compatibilité avec Ethereum.
-
Polygon zkEVM : lancé en tant que type 3, il évolue actuellement vers le type 2.
Type 4 zkEVM — Compatible avec les langages de haut niveau
Architecture :
-
Ce type relève en réalité plutôt de zkVM (machine virtuelle à preuve zéro) que de zkEVM.
-
On peut parler de compatibilité au niveau du langage. Logique générale : les développeurs peuvent continuer à utiliser les langages habituels d’Ethereum (comme Solidity) pour écrire des contrats intelligents. Ces projets utilisent ensuite un compilateur pour convertir ce code en bytecode personnalisé (ex : Starkware utilise Warp pour transformer Solidity en bytecode Cairo ; zkSync utilise LLVM pour compiler Solidity en code exécutable sur sa machine virtuelle Sync VM).
-
Objectif : faible coût, haute efficacité, maximisation de l’amitié aux preuves à divulgation nulle.
Avantages :
-
Temps de vérification très rapide.
-
Compiler directement depuis un langage de haut niveau réduit considérablement les coûts (temps, argent et charge de calcul).
-
Abaisse le seuil technique pour devenir un proveur, favorisant la décentralisation.
-
Ces zkEVM peuvent supporter nativement l’abstraction de compte (Account Abstraction) via leur machine virtuelle personnalisée. Contrairement aux chaînes EVM-équivalentes qui doivent passer par ERC-4337.
Inconvénients :
-
De nombreuses applications Ethereum existantes ne peuvent pas être copiées telles quelles dans ces zkVM, ou rencontrent des problèmes : par exemple, l’adresse du contrat dans un système zkVM type 4 peut différer de celle dans l’EVM ; ces zkEVM ne supportent pas le bytecode EVM écrit manuellement (largement utilisé aujourd’hui pour économiser les frais de gaz) ; leurs compilateurs ne supportent pas certaines fonctionnalités de Solidity.
-
Les développeurs Ethereum souhaitant déployer sur ces projets doivent effectuer des ajustements plus complexes. Moins conviviaux que les autres types, cela pourrait ralentir le développement de l’écosystème et l’innovation technique.
-
Très difficile d’exploiter l’écosystème complexe et florissant d’Ethereum et son effet de réseau.
Projets principaux :
-
zkSync Era (solution ZK Rollup développée par Matter Labs) : zkSync Lite (version 1.0) lancé en juin 2020, supportant uniquement paiements et swaps, sans compatibilité EVM ; zkSync Era (version 2.0) lancé en mars 2023, offrant une compatibilité au niveau du langage. zkSync ne vise pas la compatibilité EVM, mais la rapidité de génération des preuves.
-
Starknet (solution ZK Rollup de Starkware) : mainnet lancé en novembre 2021, mis à jour à la version v0.12.0 en juillet 2023. Il appartient au type 4, sans objectif de compatibilité EVM. Toutefois, des projets comme Kakarot visent à atteindre un niveau de compatibilité similaire au type 2.5-3.
À partir de la classification de Vitalik en 2022 et des progrès des projets (à fin août 2023), on peut résumer simplement via l’image suivante :

Classification des principaux projets ZK Rollup
Projets principaux par type de zkEVM

Tableau comparatif des principaux projets ZK Rollup
Vitalik concluait ainsi son article : « Personnellement, j’espère qu’avec le temps, grâce à l’amélioration conjointe des zkEVM et d’Ethereum lui-même, ce dernier deviendra plus amical aux ZK-SNARK, et que tout deviendra finalement du type 1. »
Dans ce futur, nous aurons plusieurs implémentations de zkEVM, utilisables à la fois pour les ZK Rollups et pour vérifier la chaîne Ethereum elle-même. En théorie, Ethereum n’a pas besoin d’adopter un zkEVM unique et standardisé pour la couche 1 ; différents clients pourraient utiliser différentes méthodes de preuve, nous permettant de continuer à bénéficier de la redondance au niveau du code.
Mais réaliser ce futur prendra encore beaucoup de temps. D’ici là, nous assisterons à de nombreuses innovations sur les différentes voies de scaling d’Ethereum et des ZK Rollups basés sur celui-ci. »
Il faut souligner que, bien que la classification dominante des zkEVM provienne de Vitalik (celle utilisée ici), d’autres standards existent. Quelle que soit la classification, il n’y a pas de hiérarchie absolue entre ces types. Chaque type fait simplement un compromis entre compatibilité et rapidité : le type 1 offre la plus haute compatibilité avec Ethereum, mais un temps de preuve lent (dans le contexte des ZK Rollups) ; le type 4 offre moins de compatibilité, mais un temps de vérification plus rapide.
Bien sûr, la compatibilité et la vitesse ne sont pas les seuls critères pour choisir sur quel ZK Rollup déployer une application. D’autres facteurs influencent aussi la décision, comme :
Degré de décentralisation du séquencement des transactions L2 : le séquenceur/proposer est-il décentralisé ? Cela affecte directement la participation des acteurs de l’écosystème et la sécurité globale du réseau ;
Frais : quels jetons utilisés pour payer les frais, modèle économique de la blockchain ;
Règles de génération des preuves : incitations pour les proveurs, exigences matérielles pour accélérer la génération ;
Auto-dépôt (self-custody) : existence de mécanismes clairs permettant aux utilisateurs de récupérer leurs actifs sur L1 en cas de problème sur L2 ;
Disponibilité des données : le coût d’une disponibilité complète est naturellement plus élevé ; peut-on accepter des modèles à faible coût comme certains ZK Rollup l’adoptent ?
Toutefois, comme la plupart des projets ZK Rollup généralistes sont encore en phase testnet, ces facteurs ne peuvent pas encore être comparés directement.
Enfin, le type d’un projet zkEVM n’est pas figé. Avec les recherches en cours sur les zkEVM et les améliorations futures d’Ethereum lui-même, il est possible que tous les projets finissent par atteindre l’efficacité d’un zkEVM type 1. À ce moment-là, nous disposerons de multiples implémentations de zkEVM — utiles à la fois pour les ZK Rollups et pour la validation de la chaîne Ethereum elle-même.
En attendant, attendons-nous à voir continuer l’innovation sur les différentes voies d’extension d’Ethereum et des ZK Rollups.
Bienvenue dans la communauté officielle TechFlow
Groupe Telegram :https://t.me/TechFlowDaily
Compte Twitter officiel :https://x.com/TechFlowPost
Compte Twitter anglais :https://x.com/BlockFlow_News














