ZK-rollup vs Optimistic rollup : la bataille des layers 2 Ethereum

academie zk rollup et optimistic rollup

Introduction

A l'origine, Ethereum était avant tout un protocole hébergeant de nombreuses applications décentralisées, résistantes à la censure et accessibles à tous. Depuis lors, la blockchain Ethereum a parcouru un long chemin, mais il reste encore un domaine qui doit évoluer : la scalabilité (scalability, en anglais). En effet, le coût insoutenable du gas et les congestions fréquentes du réseau actuel freinent son déploiement à grande échelle.

Pour remédier à cela, la communauté Ethereum a adopté une roadmap axée sur le déploiement de layer 2 appelé “rollup”. Les rollups sont considérés par certains membres de la communauté Ethereum comme le seul moyen viable de faire évoluer la blockchain sans sacrifier sa décentralisation et sa sécurité. Cependant, jusqu'à récemment, les obstacles techniques liés à l'utilisation des rollups empêchaient les utilisateurs de les utiliser, poussant ces derniers vers des blockchains concurrentes comme la Binance Smart Chain, Polygon ou encore Solana.

Deux grandes familles de rollups ont émergé ces dernières années. Les rollups optimistes et les ZK-rollups. Découvrons ces 2 familles en détails.

Qu’est-ce qu’un rollup ?

Les rollups sont des solutions que l’on appelle “de seconde couche” (en anglais, “layer 2”). Ce sont des protocoles qui traitent et exécutent les transactions en dehors de la couche 1 de la blockchain Ethereum (en anglais “off-chain). Ces transactions sont ensuite regroupées en un lot et seule la racine de l’état est publiée sur la couche 1 de la blockchain Ethereum. Grâce au traitement hors chaine et à la compression des données dans des lots, les rollups permettent d'atteindre des vitesses de traitement supérieures à celles basées sur la couche 1 d’Ethereum.

explication rollup

Pour autant, les racines d’état des lots étant publiées sur la chaine principale, les actifs bénéficient du même niveau de sécurité que la blockchain Ethereum. Les rollups constituent donc de véritables solutions face aux problèmes de scalabilité de la blockchain Ethereum.

Il existe deux principaux types de solutions : les rollups à connaissance nulle (en anglais “ZK-rollup”) et les optimistic rollups. Tous deux reposent sur le même processus d'exécution des transactions hors chaîne, avec enregistrement par lots sur la blockchain principale. La différence réside principalement dans le processus de vérification des transactions.

Les optimistic rollups : fonctionnement, avantages et inconvénients

Comme mentionné ci-dessus, les optimistic rollups fonctionnent sur le principe des données on-chain et off-chain. Afin de réduire les coûts, les Optimistic rollups réalisent le traitement et le stockage des données hors de la chaîne principale (off-chain) et publient uniquement le résultat des transactions sur la couche 1. Ici, rien de très différent par rapport à ses concurrents à connaissance nulle.

La principale différence réside dans la manière de valider les transactions. Alors que les ZK-rollups émettent une preuve cryptographique (appelée “SNARK” ou “STARK”) pour chaque lot de transactions, les optimistic rollups partent du principe que chaque transaction est valide. Les validateurs du réseau supposent en effet que toutes les transactions sont valides et soumettent les lots sans effectuer aucun calcul, ce qui permet de conduire à des améliorations significatives en terme de scalabilité.

Cependant, les validateurs incluent une période de contestation pendant laquelle n'importe qui peut contester la légitimité des données contenues dans un lot. Si une transaction frauduleuse est détectée, le rollup exécute ce qu'on appelle une preuve de fraude (en anglais “fraud proof”) et effectue le calcul correct de la transaction en utilisant les données disponibles sur la couche 1.

optimistic rollups l2beat
Optimistic Rollups et ZK Rollups référencés sur L2BEAT.com

Pour s'assurer que les validateurs soient incités à ne traiter que des transactions valides, ils sont tenus de déposer un collatéral en ETH. S'ils agissent de manière honnête, ils reçoivent des récompenses, mais si l'un d'entre eux soumet une transaction frauduleuse à la chaîne Ethereum principale, son collatéral est saisi.

Ainsi, ce système de sécurisation est un système incitatif basé sur la confiance : chaque personne souhaitant participer à la sécurisation du réseau a tout intérêt à se comporter de manière vertueuse, sous peine d'une perte d'une partie de son collatéral.

Les principaux protocoles optimistic rollups sont Arbitrum et Optimism.

Les ZK-rollups : fonctionnement, avantages et inconvénients

Les ZK-rollups fonctionnent également sur le même principe de données on-chain et off-chain. Les données sont regroupées dans des lots, qui sont ensuite publiés sur la chaîne principale. Le traitement des transactions ainsi que le stockage des fonds sont réalisés off-chain.

La principale différence réside dans la manière de valider les transactions. Les ZK-rollups utilisent des preuves de validité. Chaque lot comprend une preuve cryptographique appelée ZK-SNARK* ou ZK-STARK² qui permet d'envoyer des transactions sur une blockchain de manière totalement cryptée. Ces rollups s'appuient donc sur des calculs mathématiques plutôt que sur la confiance des validateurs du réseau.

ZK-SNARK* : Zero-Knowledge Succinct Non-Interactive Argument of Knowledge ou Argument non interactif succinct de la connaissance de la connaissance zéro en français.

ZK-STARK² : Zero-Knowledge Scalable Transparent ARguments of Knowledge ou Arguments de connaissance zéro, évolutifs et transparents en français.

zero knowledge proof

Dans la pratique, cela fonctionne comme suit :

Les transactions sont regroupées dans des paquets (en anglais “batch”) sur la couche 2 et génèrent une preuve de validité pour chacun de ces paquets. Les preuves de validité sont ensuite soumises à la couche 1 pour validation de l'ensemble des transactions. Cette méthode permet de réduire considérablement la taille des données et, par conséquent, de diminuer le temps et le coût du gaz pour la validation d'un bloc.

Les ZK-rollups sont des solutions de mise à l'échelle que l'on peut appeler “hybride”. Ce sont des protocoles qui fonctionnent indépendamment de la chaîne principale, mais qui tirent leur sécurité d'Ethereum. Le réseau Ethereum assure la validité des mises à jour de l'état du ZK-rollup et garantit la disponibilité des données derrière chaque mise à jour. Par conséquent, en termes de sécurité, les ZK-rollups sont considérablement plus sûrs que les solutions de mise à l'échelle 100% off-chain, telles que les sidechains, qui sont responsables de leur propre sécurité.

Cependant, l'un des inconvénients aux ZK-rollups est que la génération d'une preuve de validité est un processus complexe et long. Néanmoins, contrairement aux Optimistic Rollups, les ZK-rollups ne nécessitent pas de période de contestation, car la preuve de validité a déjà vérifié la légitimité des données. C'est pourquoi les fonds déposés sur des ZK-rollups peuvent être retirés à tout moment.

Ci-dessous un tableau récapitulant les principales différences entre les deux familles de rollups :

Les principaux ZK-rollups à suivre actuellement sont :

L’avis de Vitalik Buterin sur la question

Le fondateur d’Ethereum, Vitalik Buterin, a eu l’occasion de donner son avis sur la concurrence que se livrent les deux grandes familles de rollups. À travers différents articles de recherches, il a notamment fait part de ses croyances et de ses préférences. Ainsi, dans son article An Incomplete Guide to rollups, Vitalik Buterin disait ceci à propos des rollups :

D'une manière générale, je pense qu'à court terme, les optimistic rollups sont susceptibles de l'emporter grâce à leur relative facilité d’adaptation avec l’EVM, tandis que les ZK-rollups domineront l’univers des paiements simples, des échanges et d'autres cas d'utilisation spécifiques à une application. Néanmoins, à moyen et long terme, les ZK-rollups l'emporteront dans tous les cas d'utilisation, à mesure que la technologie ZK-SNARK s'améliorera.”

Les deux types de Rollups ont leurs spécificités qui forment leurs avantages et leurs inconvénients. Certains membres de la communauté crypto pensent que les ZK sont supérieurs en raison de leur rapidité, mais ils restent néanmoins très complexes à créer et ne sont pas faciles à rendre compatibles avec l’EVM (Ethereum Virtual Machine). Les optimistic rollups sont de leur côté plus lent (il faut presque une semaine pour confirmer définitivement des transactions) mais ils sont moins complexes à créer et plus compatibles avec l’EVM.

Conclusion

Les rollups font donc partie des solutions qui ont émergé pour faire face aux problèmes de scalabilité de la blockchain Ethereum. Bien que les deux familles soient souvent mises en concurrence, les deux pourraient également cohabiter à l’avenir.

Les ZK-rollups semblent néanmoins avoir un avantage technologique sur leur concurrent. De plus, ils permettent une confidentialité accrue grâce aux preuves à connaissance nulle, ce qui semble non négligeable à l’heure où la vie privée des utilisateurs est un sujet de plus en plus sensible.