Layers 2 d’Ethereum : le Sequencer, l’affreuse machine à centraliser ?

Collectionnez les articles du JDC en NFT

Collecter cet article

Les L2 arriveront-ils à se décentraliser ? Depuis le passage au Proof of Stake, la blockchain Ethereum a pris le chemin d’une roadmap « rollup-centric ». En pratique, cela signifie que les solutions de seconde couche de type rollup sont désignées comme étant la solution à court et moyen termes pour résoudre les problèmes de scalabilité. Néanmoins, de nombreux questionnements émergent de toutes parts concernant la décentralisation des L2 et de leurs Sequencers. Alors qu’en est-il réellement ? Les L2 sont-ils réellement décentralisés comme l’annoncent leurs créateurs ? Explorons cela ensemble.

Rollup et Sequencer : les rouages d’un même ensemble

Les rollups sont des solutions de seconde couche évoluant en parallèle de la blockchain principale. Ainsi, ces derniers visent à déporter une partie des transactions ainsi que des calculs hors de la chaîne principale d’Ethereum. Le but étant de réduire la charge de la chaîne principale.

En pratique, il existe deux grands types de rollups : les zk-rollups et les optimistic rollups.

Au cœur du système d’un rollup, nous retrouvons le Sequencer.

Le Sequencer est une entité qui est responsable d’ordonner les transactions qui ont lieu sur un rollup. Une fois ordonnées, ces transactions sont publiées sur la chaîne principale.

Schéma de l'ajout de transactions du L1 vers le L2 via le Sequencer.
Schéma de l’ajout de transactions du L1 vers le L2 via le Sequencer.

Ainsi, toutes les transactions effectuées sur un rollup sont envoyées au Sequencer. Celui-ci va ensuite les ordonner et les regrouper en lot de transactions. Par la suite, ces lots seront compressés et publiés sur la blockchain d’Ethereum.

Chaque lot publié sur Ethereum contient une preuve cryptographique. L’objectif étant de permettre à n’importe quel utilisateur d’examiner l’état d’un rollup, en vérifiant la validité des preuves publiées on-chain.

C’est pourquoi on dit souvent que les rollups « héritent » de la sécurité d’Ethereum. Ils utilisent la puissance de calcul et la décentralisation de la blockchain Ethereum pour sécuriser leurs opérations, même s’ils effectuent la plupart de leurs calculs et stockent la majorité de leurs données en dehors de la chaîne principale.

Bien que les méthodes utilisées soient différentes, l’utilisation de ces preuves est commune à tous les rollups, qu’ils soient zk ou optimistic.

Les Sequencer face à la centralisation

Néanmoins, cette méthode est fréquemment pointée du doigt pour son importante centralisation. En effet, dans la plupart des solutions de seconde couche actuelles, le Sequencer est contrôlé par une seule entité, créant de fait un point unique de défaillance.

Par conséquent, si le Sequencer venait à tomber en panne ou agir de manière malveillante, cela pourrait perturber le bon fonctionnement des rollups. De surcroît, cette centralisation autour d’un Sequencer unique engendre des questionnements vis-à-vis de la résistance à la censure. Effectivement, il est légitime de douter de la bienveillance d’acteurs centralisés, d’autant plus dans le contexte des cryptomonnaies, qui visent à réduire le besoin de confiance.

Ainsi, cette situation mène à de nombreuses critiques. De nombreux utilisateurs remettent en question le fait que les rollups « héritent » de la sécurité d’Ethereum, en utilisant argument le manque de décentralisation des Sequencers.

Sequencer centralisé : est-ce un réel problème ?

Mais alors, qu’en est-il vraiment ? Est-ce que la centralisation actuelle des Sequencers met réellement le réseau, et par conséquent les fonds des utilisateurs, en danger ? Et bien ce n’est pas si évident.

Le cas d’Arbitrum

Récemment, Harry Kalodner, CEO et cofondateur de OffChain Labs, l’équipe à l’origine du L2 Arbitrum a publié un thread Twitter pour répondre aux critiques.

Tweet de Harry Kalodner sur la décentralisation des Sequencers

Selon lui, le sujet de la décentralisation des Sequencers est un sujet souvent mal compris. Ainsi, il explique que les rollups actuels d’Arbitrum sont sécurisés, bien que leur Sequencer soit centralisé.

Avant d’entrer dans les explications, il convient de comprendre les deux propriétés les plus importantes pour un rollup :

  • La sécurité, à savoir la garantie que les fonds des utilisateurs resteront dans leur portefeuille ;
  • La vivacité, à savoir la garantie que les transactions seront incluses dans la chaîne.

Selon Kalodner, rien ne peut actuellement interrompre ou altérer l’une de ces propriétés sur Arbitrum.

La sécurité

D’une part, la sécurité est assurée par le mécanisme de challenge du protocole Arbitrum. Celui-ci permet qu’un unique validateur honnête puisse forcer la résolution de la chaîne.

Pour rappel, le mécanisme de challenge fonctionne de la manière suivante. Dans le cas où un validateur soumet une affirmation concernant l’état de la chaîne, un délai d’attente est mis en place. Durant ce délai, n’importe quel autre valideur peut contester l’affirmation. Pour ce faire, le validateur qui conteste doit fournir une preuve de la falsification de l’état du rollup.

Pour le moment, ces validateurs doivent être présents sur la liste blanche d’Arbitrum. Celle-ci est pour le moment maintenue par les développeurs d’Offchain Labs, mais le processus devrait être décentralisé à l’avenir. Celui-ci devrait être délégué à la gouvernance décentralisée du protocole.

Comme il le précise par la suite, le Sequencer n’a aucun impact sur la sécurité de la chaîne. Celle-ci est uniquement dépendante du système de preuve et de résolution de preuves. Par conséquent, centralisé ou non, le Sequencer n’a pas d’impact sur la sécurité du rollup.

La vivacité

D’autre part, la vivacité est, elle, plus dépendante du Sequencer. En effet, lorsqu’une transaction est réalisée, elle est envoyée au Sequencer. Celui-ci s’occupe de l’ordonner et de l’ajouter à un lot de transaction.

« La façon normale dont les utilisateurs interagissent avec Arbitrum est d’envoyer des transactions dans le séquenceur, donc on peut penser que si le Sequencer disparaissait ou était censuré, on perdrait de la vivacité. »

Néanmoins, il existe une solution de secours. Si le Sequencer venait à ne pas inclure une transaction pour une raison quelconque, l’utilisateur est en mesure de la publier directement sa transaction sur Ethereum.

Par conséquent, dans le pire des cas, elle sera incluse dans un délai de 24 heures. Une solution « certes loin d’être parfaite », mais qui permet d’assurer que « vos fonds ne peuvent pas être piégés ».

Le cas d’Optimism

Il est important de noter que ce raisonnement n’est pas limité à Arbitrum. En effet, ces arguments sont généralement applicables à la majorité des rollups de type Optimistic rollups.

Voyons cela pour OP Mainnet, le rollup d’Optimism. Comme Arbitrum, la sécurité y est garantie par le mécanisme de challenge. Ainsi, même si le Sequencer venait à agir de manière malveillante, il ne peut pas compromettre la sécurité des fonds.

Du côté de la vivacité, il en va de même. Ainsi, si le Sequencer venait à ne pas traiter une transaction, l’utilisateur est également en mesure de la publier directement sur Ethereum. Dans le cas d’OP Mainnet, son inclusion sera forcée dans un délai de 12 heures.

Le cas des zk-rollups

Jusqu’à présent, nous avons analysé le cas de rollups de type Optimistic. Néanmoins, la situation est un peu différente dans le cas des zk-Rollups et autres validity-rollups.

Dans cette famille, les deux principales solutions sont zkSync Era et Starknet. Dans les deux cas, la centralisation du Sequencer apporte quelques problèmes que l’on ne retrouve pas sur les cas étudiés précédemment.

Reprenons nos deux propriétés utilisées pour les optimistic rollups, à savoir sécurité et vivacité.

Dans un premier temps, l’aspect sécurité pour les zk-rollups est similaire à celle de ses alter ego optimistic. En effet, ces solutions utilisent des preuves de validités (qu’elles soient SNARKs ou STARKs) qui sont publiées sur la chaîne principale d’Ethereum.

Ainsi, même si le Sequencer venait à agir de manière malveillante, la sécurité des fonds ne serait pas impactée. En effet, leur sécurité est dépendante des preuves publiées sur le mainnet.

Dans un second temps, l’aspect vivacité dévie quant à lui dans le cadre des zk-rollups. En effet, ni Starknet, ni zkSync Era ne dispose actuellement de mécanisme permettant de forcer l’inclusion d’une transaction.

Ainsi, si le Sequencer venait à agir de manière malveillante, les utilisateurs pourraient se retrouver bloqués sur le rollup et dans l’incapacité de retirer leurs fonds.

Néanmoins, zkSync Era a annoncé sa volonté de mettre en place un mécanisme de « retrait d’urgence » qui permettrait aux utilisateurs de retirer leurs fonds vers Ethereum, même en cas de défaillance du Sequencer.

>> Binance vous offre 10% de réduction sur vos frais de trading, à vie ! (lien commercial) <<

L’importance de la décentralisation des Sequencers

Comme nous venons de le voir, la centralisation des Sequencer n’a pas forcément d’impact négatif sur le réseau, dans le sens où leur défaillance n’entraine pas forcément de situations catastrophiques pour les utilisateurs ou le réseau.

Néanmoins, il serait contre-productif de se contenter de cela. En effet, la décentralisation des Sequencers reste un sujet important et nécessaire à l’essor et la démocratisation des L2.

Résilience du réseau

Dans un premier temps, la décentralisation des Sequencers est centrale pour assurer la résilience du réseau. Par exemple, l’existence de plusieurs Sequencers sur un même réseau permet de s’assurer que si l’un d’eux venait à tomber en panne, ou à agir de manière malveillante, d’autres Sequencers seraient en mesure de prendre le relais.

Cela améliorerait également l’expérience utilisateur en réduisant les perturbations sur le réseau et les temps d’arrêt.

De surcroît, la multiplication des Sequencers permet également de diminuer la dépendance à des services centralisés comme Amazon AWS ainsi qu’améliorer la décentralisation géographique de ces éléments centraux aux L2.

Résistance à la censure

La décentralisation des Sequencers permet également d’assurer la résistance à la censure. Rappelons que la résistance à la censure est l’une des composantes fondatrices des cryptomonnaies et devrait rester au cœur des innovations de l’écosystème.

Une fois de plus, la présence de plusieurs Sequencers permettrait de contrecarrer les tentatives de censures qui pourraient émaner d’un Sequencer contrôlé par une entité malveillante.

Innovation et compétition

La décentralisation des Sequencers aurait également un impact positif sur l’innovation. En effet, si plusieurs entités opèrent leur Sequencer, celles-ci pourraient rivaliser en termes de performance, de sécurité ou de frais, ce qui pourrait conduire à une amélioration générale pour l’ensemble du réseau.

Conclusion

Vous l’aurez compris, la décentralisation des Sequencers est un vaste sujet, qui une fois de plus ne dispose pas de solutions parfaites.

Ainsi, bien qu’actuellement la centralisation des Sequencers ne pose pas de problèmes directs pour les utilisateurs, que ce soit en termes de sécurité ou de vivacité, elle n’en reste pas moins primordiale. Alors oui vos fonds sont sécurisés, mais cela n’est pas suffisant. Nous devons continuer à tendre vers des systèmes plus décentralisés à tous les niveaux.

Rejoignez le mouvement crypto, et inscrivez-vous vite sur la plateforme Binance. Économisez 10 % sur vos frais de trading en suivant ce lien (lien commercial).

Renaud H.

Ingénieur en software et en systèmes distribués de formation, passionné de cryptos depuis 2013. Touche à tout, entre mining et développement, je cherche toujours à en apprendre plus sur l’univers des cryptomonnaies et à partager le fruit de mes recherches à travers mes articles.

Recevez un condensé d'information chaque jour