(Episode 3 sur 5) La cryptographie dite Zero Knowledge est une percée passionnante. Grâce à elle, il est possible de prouver la vérité d’une affirmation, sans en révéler le contenu. Et depuis quelques mois, les Zero Knowledge Proofs (ZKP) sont le nouveau domaine de prédilection des chercheurs de la communauté Ethereum. Leur but ? Développer des couches secondaires (layer 2) capables de garantir la confidentialité des transactions, tout en augmentant la vitesse de traitement et en réduisant les frais. Un “trilemme” dont la solution ne semble plus si loin 🙂.
Pour le troisième volet de notre série, nous mettons donc le cap sur les layer 2 reposant sur les preuves zk. Si vous nous rejoignez, sachez que la semaine passée, nous avons examiné la philosophie des layer 2 d’Ethereum et l’outil qui leur sert de principale cheville ouvrière, les fameux séquenceurs.
1. Les secrets de la cryptographie Zero Knowledge
Peut-on prouver qu’une affirmation est vraie sans en révéler le contenu 🤔? Est-ce je peux vous prouver que je connais le mot de passe d’un compte sans vous le dire, ou que j’ai assez d’argent pour acheter quelque chose sans vous montrer mon solde 🤔?
Oui, c’est le tour de force mathématique qu’a réussi une équipe de cryptographes du MIT dans les années 1980.
Shafi Goldwasser, Silvio Micali et Charles Rackoff, puisqu’il faut les nommer, ont introduit le concept de “zéro connaissance” dans un article révolutionnaire.
Ils ont montré qu’il est possible de construire des protocoles où un prouveur peut convaincre un vérificateur de la vérité d’une affirmation sans divulguer aucune information supplémentaire en dehors de la validité de l’affirmation.
On pourrait donc sourire en apprenant que la solution aux problèmes de congestion d’Ethereum vient finalement d’un protocole concurrent : Algorand 😁.
En effet, Algorand a été créée par nul autre que Silvio Micali, pionnier de la cryptographie à connaissance nulle (ZKP) et lauréat du Prix Turing en 2013 (l’équivalent du Nobel en sciences informatiques).
2. Les preuves “Zero knowledge” : de l’informatique militaire à Ethereum
Il n’est pas étonnant que la communauté Ethereum se soit emparée de cet outil pour enfin trouver la clé à des transactions rapides, peu coûteuses et confidentielles.
Les preuves à connaissance nulle / zero knowledge proofs (ZKP dans la suite) permettent d’emprunter deux raccourcis particulièrement utiles :
- Déléguer des calculs complexes à des tiers sans craindre qu’ils trichent ou qu’ils vous volent vos données sensibles 🖥️,
- Masquer vos informations personnelles ou confidentielles tout en prouvant quand même des propriétés importantes 🥷,
On parle beaucoup des ZKP dans Ethereum, mais en réalité elles sont aussi utilisées dans différents domaines de la blockchain.
Panorama de ses utilisations :
Mais le domaine qui nous intéresse aujourd’hui, c’est bien sûr la mise à l’échelle des couches secondaires d’Ethereum, les layer 2.
3. Comment fonctionnent les layer 2 reposant sur preuves “zero knowledge” ?
Les ZKP permettent d’exécuter des transactions hors de la chaîne principale d’Ethereum, tout en garantissant leur validité et leur sécurité.
Aujourd’hui, on parle surtout de layer 2 “zkEVM”.
Qu’est-ce que cela signifie ? Tout simplement qu’il s’agit de rollups utilisant les ZKP ET compatibles avec la machine virtuelle Ethereum (EVM).
L’EVM est, rappelons-le, le système qui gère les transactions et les contrats intelligents sur Ethereum et qui détermine le coût de chaque opération en gaz.
Mais il y a un hic : les rollups ZK ont pour le moment différents niveaux de compatibilité avec l’EVM. Vitalik Buterin lui-même les a classés en quatre catégories, allant de la plus compatible à la moins cohérente.
3.1. Type 1 : entièrement équivalent à Ethereum 🏆🏆
Ce type de zkEVM vise à reproduire exactement le fonctionnement de l’EVM, sans changer aucun aspect.
Il permet de vérifier les blocs exactement tels qu’ils sont aujourd’hui, ou du moins la partie liée à l’exécution des transactions et des contrats intelligents. Il offre une compatibilité parfaite avec les outils et les infrastructures existants sur Ethereum.
L’inconvénient est que la génération des preuves est très coûteuse en temps et en ressources, car l’EVM n’a pas été conçu pour être compatible avec la technologie à connaissance nulle.
▶ Taiko (attendu)
3.2. Type 2 : équivalent à Ethereum avec des modifications mineures
Ce type de zkEVM introduit quelques changements dans le protocole Ethereum pour le rendre plus adapté aux preuves à connaissance nulle, tout en conservant la plupart des fonctionnalités de l’EVM.
Par exemple, il peut remplacer certaines fonctions de hachage ou certains précalculs par des versions plus efficaces pour les preuves. Il offre une compatibilité presque complète avec les outils et les infrastructures existants sur Ethereum, mais nécessite quelques adaptations mineures.
L’avantage est que la génération des preuves est plus rapide et moins coûteuse que le type 1.
▶ Kakarot (attendu)
3.3. Type 3 : équivalent à Ethereum avec des modifications majeures
Ce type de zkEVM implique des changements plus importants pour le rendre plus adapté aux preuves à connaissance nulle, tout en conservant l’essentiel des fonctionnalités de l’EVM.
Par exemple, il peut changer la structure de l’arbre d’état ou le format des transactions pour les rendre plus simples et plus compacts. Il offre une compatibilité partielle avec les outils et les infrastructures existants sur Ethereum, mais nécessite des adaptations significatives.
▶ Polygon zkEVM (395 millions $ de TVL, va évoluer vers le type 2)
▶ Linea (47 millions $, va évoluer vers le type 2)
▶ Scroll (attendu)
3.4. Type 4 : non équivalent à Ethereum
Ce type de zkEVM n’essaie pas d’être compatible avec l’EVM, mais utilise un langage ou une machine virtuelle différente, spécialement conçu pour les preuves à connaissance nulle.
Il offre une compatibilité limitée avec les outils et les infrastructures existants sur Ethereum, mais nécessite des réécritures complètes des contrats intelligents.
L’avantage est que la génération des preuves est extrêmement rapide et peu coûteuse, car le langage ou la machine virtuelle utilisé est optimisé pour les preuves à connaissance nulle.
▶ ZkSync Era (395 millions $)
▶ Starknet (132 millions $)
Nous voici rendus à la fin de ce troisième volet de notre série consacrée aux layer 2. Dans le prochain épisode de cette série, nous découvrirons ensemble les airdrops attendus et comment se rendre éligible à chacun 💡
Sources : Paradigm Research, Binance Research
Sur le même sujet :
- Layer 2 : comment fonctionnent les couches secondaires d’Ethereum ?
- Layer 2 : tout ce qu’il faut savoir sur les séquenceurs