Tout comprendre au ZK Rollup : une solution de seconde couche pour Ethereum
Revenir à la FAQAfin de réduire la charge supportée par la blockchain Ethereum, diverses solutions de seconde couche sont envisagées et coexistent les unes avec les autres. Parmi ces solutions, on retrouve notamment ce que l’on appelle les rollups, parmi lesquels on retrouve notamment le ZK Rollup.
Alors quelle est la problématique à résoudre avec Ethereum ? Que sont les rollups ? Qu’est-ce que ZK Rollup exactement ?
Une congestion depuis presque un an chez Ethereum
Depuis presque un an, Ethereum rencontre le même problème de congestion. Ce problème est principalement dû à une augmentation importante du nombre de ses utilisateurs, mais aussi du nombre de smart contracts utilisés. La chaine se retrouve alors complètement bloquée et les frais de transaction sont de plus en plus importants. On parle ici de plusieurs dizaines voire plusieurs centaines de dollars pour pouvoir interagir avec un smart contract.
La blockchain a réussi à plusieurs reprises à faire baisser ses frais, mais c’est ensuite un rebond qui a été systématiquement observé. Ce succès (et donc cette hausse) s’explique principalement par l’intérêt des investisseurs pour les NFT et la finance décentralisée. En mars dernier, Ethereum envisageait une transition vers un nouveau système. Au mois d’août, la migration de ETH 1.0 vers ETH 2.0 n’était pas encore effective.
Il a fallu le mois d'Octobre pour que The Merge, permettant une réduction considérable de la consommation énergétique nécessaire à une interaction sur Ethereum se réalise.
Rollup : une solution possible ?
Le co-fondateur d’Ethereum serait plutôt partisan des solutions de secondes couches pour faire face aux problématiques rencontrées. Le but des solutions de seconde couche est en fait de réduire la charge supportée par Ethereum, soit le nombre croissant d’utilisateurs et de smart contracts en déportant une partie de la prise en charge hors de la chaine principale. C’est une solution qui peut être envisagée notamment en attendant l’arrivée de ETH 2.0.
Les rollups représentent donc ce type de solution. Il en existe plusieurs comme Optimistic Rollup ou encore ZK Rollup par exemple. Les rollups sont des sidechains qui fonctionnent en parallèle de la chaine principale. Elles allient les données off-chain et les données on chain. Une partie des calculs est donc déportée vers les rollups et les données sont aussi compressées pour réduire leur consommation.
Comprendre le fonctionnement des rollups
Pour comprendre pourquoi les rollups sont une potentielle solution au problème de congestion de la blockchain Ethereum, il faut comprendre leur fonctionnement. Plus que de se comporter comme une chaine annexe à la principale, les rollups fonctionnent grâce aux arbres de Merkle. Chaque solution dispose d’un smart contract sur la blockchain Ethereum qui lui-même contient l’état racine du rollup. En somme, seule la racine de l’état est publiée sur la chaine principale.
Dès lors que de nouvelles transactions sont enregistrées en seconde couche, il est possible de publier un bloc pour les utilisateurs, soit tout un ensemble de transactions au format arbre de Merkle avec la racine du nouveau et de l’ancien état. La validité de l’état racine est vérifiée pour devenir l’état actuel du rollup.
Afin de contrecarrer les éventuelles publications d’un acteur malveillant, la création de plusieurs rollups différents intervient. C’est de cette manière que l’on observe aujourd’hui l’existence de ZK Rollup et Optimistic Rollup par exemple.
Qu’est-ce que ZK Rollup ?
ZK Rollup est donc un des rollups qui peut être utilisé comme seconde couche pour décongestionner la blockchain Ethereum. Par ZK Rollup on entend en fait Zero-Knowledge Rollups.
ZK Rollup permet notamment d’agréger des centaines de transactions qui ont lieu off chain. Son rôle est aussi de publier une preuve de l’état de soldes en fin de transaction sur la chaine principale. Par ailleurs, il faut savoir qu’un système qui utilise des rollups repose sur deux sorts d’utilisations :
- Les émetteurs qui effectuent des transferts et diffusent leurs transactions
- Les relayeurs qui collectent les transactions et générer la preuve SNARK
Afin de devenir relayeur, l’utilisateur doit suivre une procédure lui permettant d’assurer qui ne va ni altérer ni retenir aucune transaction, sans quoi il subira des pénalités.
Le ZK Rollup offre donc de nombreux avantages, soit peu de frais de transactions, une véritable rapidité et des informations stockées sur Ethereum réduites. Cependant, il y a aussi des inconvénients à opter pour ZK Rollup. Cette solution est notamment vulnérable à certaines attaques. Par ailleurs, les preuves de ZK Rollup présentes des complications lors des calculs, ce qui réduit la capacité de scaling théorique.