MegaETH : Qu’est-ce que c’est, comment ça fonctionne et comment en acheter ?

article megaeth

L’écosystème des cryptomonnaies cherche constamment à améliorer les performances de ses infrastructures. Avec l’avènement d’Ethereum, des problèmes de temps de traitement et de frais sont devenus évidents. 

Pour contourner ces limites, des solutions de Layer 2 sont apparues pour améliorer l'accessibilité et les performances de l'écosystème EVM. Malgré leurs avancées, ces solutions peinent à soutenir des applications décentralisées aussi sophistiquées et réactives que celles du web traditionnel (Web 2).

MegaETH se distingue en proposant une blockchain en temps réel pour surmonter ces défis. Dans cet article, nous explorerons comment ce projet pourrait rendre Ethereum grand à nouveau.

Qu’est-ce que MegaETH ? 

MegaETH est une blockchain compatible avec l'EVM (Ethereum Virtual Machine), offrant pour la première fois des performances en temps réel équivalentes à celles du Web2 dans le secteur de la crypto

L’ambition de ce projet est de maximiser les performances des layers 2 d’Ethereum en exploitant les limites matérielles actuelles, tout en réduisant l'écart entre les blockchains et les serveurs de cloud computing traditionnels.

MegaETH se différencie par plusieurs spécificités uniques, notamment un débit de transactions élevé, une capacité de calcul abondante et des temps de réponse de l'ordre de 1 milliseconde à 10ms par bloc, même sous une charge importante.

Finalement, grâce à cette nouvelle blockchain, les développeurs peuvent créer et composer les applications les plus exigeantes sans aucune limitation.

Jusqu'à présent les différents Layer 1 & et Layer 2 de l'écosystème crypto proposait une production de blocs de l'ordre de 250 ms (comme le Layer 3 XAI d'Arbitrum) à 400ms par bloc tout au mieux.

Dans la plupart des blockchains L1/L2, chaque nœud effectue des tâches identiques sans spécialisation. Chaque nœud participe à un protocole distribué pour parvenir à un consensus et exécute ensuite chaque transaction localement. Cette configuration impose un compromis fondamental entre performance et décentralisation. Chaque L1 doit décider dans quelle mesure elle peut augmenter les exigences matérielles des utilisateurs pour faire fonctionner un nœud, sans compromettre les propriétés fondamentales d'une blockchain telles que la sécurité et la résistance à la censure.

Vous l'aurez compris, les autres projets sont limités par le fait que l'information doit circuler sur différents serveurs à travers le globe. De plus, les informations de chaque transaction doivent être exécutées sur chaque machine, et tout cela prend du temps, il était donc difficile jusque là de réduire la latence en dessous des 100 à 200ms par bloc.

En déléguant la sécurité et la résistance à la censure sur d'autres couches de base comme Ethereum et EigenDA, les Layer 2 comme MegaETH & Layer N peuvent explorer un vaste espace de conception pour mettre en œuvre des optimisations de performance agressives.

Note intéressante : les applications qui exigent des taux de mise à jour élevés (tickrate ou update rate) ou des boucles de rétroaction rapides ne sont pas réalisables avec un blocktime long.

Les applications décentralisées sophistiquées entièrement on-chain comme des mondes autonomes nécessitent des taux de rafraîchissement élevés (par exemple, des intervalles de blocs inférieurs à 100 millisecondes) pour simuler des combats, de la physique ou des images en temps réel.

En outre, le trading à haute fréquence totalement on-chain ne serait pas possible si les ordres ne pouvaient pas être passés ou annulés en moins de 10 millisecondes.

Latence d'exécution sur les principaux exchanges centralisés

La latence d'exécution des ordres sur les exchanges centralisés comme Binance est un facteur crucial pour de nombreux traders, en particulier ceux qui pratiquent le trading à haute fréquence.

Le délai moyen d'exécution des ordres sur un exchange centralisé comme Binance est d'environ 37,2 millisecondes. Plus précisément : 0,1% des ordres sont exécutés en 10 millisecondes & 1% des ordres sont exécutés en 20 millisecondes (données publiées par l'exchange Deribit en 2018).

Comparatif du délai d'exécution des ordres – Source Deribit (le rapport a été supprimé depuis)

Importance de la faible latence : dans un marché aussi volatil que celui des cryptomonnaies, chaque milliseconde compte. Une exécution rapide permet aux traders de saisir des opportunités fugaces et d'optimiser leurs stratégies. Les traders algorithmiques et institutionnels sont particulièrement sensibles à la latence. Une faible latence leur permet d'exécuter un grand nombre de transactions en un temps très court.

Même pour les traders particuliers, une faible latence améliore la réactivité de la plateforme et la sensation de contrôle sur leurs opérations. De plus, une exécution rapide limite le risque de glissement de prix (slippage) entre le moment où l'ordre est passé et celui où il est exécuté.

Le temps réel débloque de nombreuses possibilités

Dans le secteur du jeu vidéo en ligne, c'est la même chose : beaucoup de jeux en ligne à succès tournent sur des serveurs avec un tickrate (taux de rafraîchissement) de l'ordre de 10 à 128 informations par seconde (Hz), soit une information toutes les ~8 à 100 millisecondes (ms).

Avec un temps de génération de blocs de l'ordre de 1 à 10 ms, il serait totalement envisageable de stocker les informations d'une partie en ligne de jeux comme Call of Duty, Counter-Strike ou Valorant sur la blockchain.

Autre exemple : imaginez un jeu en ligne massivement multijoueur où les joueurs sont mélangés avec des intelligences artificielles dont les dialogues s'adaptent en temps réel en fonction des interactions, il serait totalement envisageable de brancher ces intelligences artificielles à des smart contracts couplés à des agents autonomes et de créer une économie on-chain par ce biais. La latence deviendrait tellement basse que les joueurs auraient le sentiment que tout se passe en temps réel sous leurs yeux.

Quelle est l’utilité d’avoir un nouveau Layer 2 ?  

L'utilité de créer un nouveau Layer 2 comme MegaETH réside dans sa capacité à combler le fossé de performance entre les blockchains actuelles et les systèmes Web2 traditionnels. Bien que la création de L2 soit devenue plus simple, la multiplication des chaînes ne résout pas automatiquement les limitations de performance.

En effet, comme le démontre le tableau fourni par Paradigm, les chaînes compatibles EVM actuelles sont limitées en performances, même les plus rapides comme opBNB avec 100 MGas/s. Malgré sa capacité à traiter environ 650 échanges Uniswap ou 3 700 transferts ERC-20 par seconde, ce chiffre reste modeste comparé aux systèmes Web2 modernes, capables de dépasser un million de transactions par seconde. 

On notera que, sur le tableau du dessus, la quasi totalité des projets EVM utilisent le nouveau client d'exécution Reth (Rust Ethereum), créé par l'entreprise Paradigm. Seul Arbitrum utilise une version modifiée du client d'exécution Geth (Go Ethereum), une implémentation d'Ethereum sur le langage Go. Le client logiciel Reth semble être supérieur en quasi tout point comparé aux autres clients d'exécution d'Ethereum alors qu'il n'a été lancé que récemment.

Le calcul des mégagas par seconde (mg/s) se fait de la manière suivante : le gaz par seconde est déterminé en divisant l'utilisation cible de gaz par bloc (Target Gas ou Gas Limit) par le temps de bloc (BlockTime)

Chaque blockchain compatible EVM définit une limite de gas par bloc et un temps de bloc. Par exemple le Layer 1 Ethereum produit un bloc toutes les 12 secondes et sa limite de gas est de 15 à 30 millions. Ethereum oscille donc entre 1,25 et 2,5 mg/s actuellement.

Cette métrique permet de mesurer la quantité de travail de calculs qu'un réseau blockchain peut traiter chaque seconde. Le mégagas par seconde (mg/s) a plus de sens que les transactions par seconde (TPS) sur des réseaux compatibles EVM pour évaluer les capacités d'un Layer 1 ou Layer 2.


MegaETH offre des performances comparables aux serveurs de bases de données modernes, permettant ainsi le développement d'applications blockchain véritablement compétitives avec leurs homologues centralisés. Le projet MegaETH vise la possibilité d'atteindre rapidement plus de 1000 mg/s pour chaque rollup déployé sur son infrastructure en imposant du matériel haut de gamme pour le serveur de son séquenceur tout en appliquant de nombreuses optimisations dans le code informatique de son logiciel pour pousser les performances à l'extrême.

Avec plus de 1000mg/s, MegaETH pourrait facilement dépasser les 1000 transactions par seconde (TPS) en temps réel pour chaque rollup déployé. Plus tard, le projet devrait sans doute offrir la possibilité aux applications d'être hébergées sur plusieurs rollups en parallèle afin de multiplier leurs capacités de traitement en fonction de la demande, c'est en tout cas dans la roadmap du client d'exécution Reth de Paradigm à l'horizon 2025.

Finalement, MegaETH cible les DApps exigeantes, telles que les marchés prédictifs, les DEX entièrement on-chain comme GTE (incubé par MegaETH), les paris sportifs en direct ou encore des produits algorithmiques

Comment fonctionne MegaETH ? 

MegaETH se définit comme étant une blockchain en temps réel, c'est-à-dire une blockchain capable de traiter les transactions dès qu’elles arrivent et de publier les mises à jour qui en résultent en temps réel. Par conséquent, elle doit prendre en charge un débit de transaction élevé et avoir une capacité de calcul importante afin de maintenir une finalité en temps réel, même pendant une forte demande des utilisateurs. 

Pour relever ces défis techniques, MegaETH, en tant que layer 2, offre une flexibilité dans sa conception, car ses nœuds ne sont soumis à aucune exigence matérielle universelle.

MegaETH introduit une approche novatrice dans l'architecture des layers 2 en adoptant un modèle hybride pour ses nœuds et en découplant la tâche d'exécution des transactions. Cette conception se distingue par trois rôles spécialisés :

  1. Séquenceur : il ordonne et exécute les transactions. MegaETH n'utilise qu'un seul séquenceur actif pour simplifier le processus.
  1. Nœuds complets : ils mettent à jour l'état de la blockchain via les preuves fournies par les prouveurs mais sans exécuter les transactions eux-mêmes.
  1. Prouveurs : ils valident les blocs de manière asynchrone, permettant une vérification efficace.

Comme explicité dans le schéma ci-dessus, le séquenceur et EigenDA sont complémentaires. Le séquenceur s'occupe du traitement des transactions et de leur exécution, tandis qu'EigenDA garantit que les données de ces transactions sont stockées de manière fiable et restent disponibles pour une validation future (MegaETH est donc un AVS Eigen Layer)

En fin de compte, la solution Data Availability (DA) modulaire et l'optimisation des interactions entre ces différents composants confère à MegaETH toute sa pertinence dans sa quête de performance.

Quel est l'intérêt de spécialiser les nœuds ?

Dans les faits, cette spécialisation permet d'optimiser les performances en adaptant le matériel aux besoins spécifiques de chaque rôle, c'est-à-dire aux besoins des nœuds complets, des prouveurs et du séquenceur

Ainsi, le séquenceur, qui gère l'exécution des transactions, nécessite des serveurs haut de gamme pour des performances optimales. En revanche, les nœuds complets, chargés de vérifier les preuves, peuvent fonctionner sur des configurations plus modestes, car leur tâche demande moins de ressources.

Ce tableau est une projection fournie par MegaETH sur les exigences pour les différents nœuds. 

MegaETH adopte une stratégie transparente en matière de ressources matérielles, contrairement à certaines blockchains concurrentes. Ainsi, cette véritable innovation vise à optimiser l'efficacité et la capacité d'expansion du réseau

Sauver Ethereum en résolvant ses inefficacités d’implémentations 

Contrairement à l'idée que l'EVM limite les performances des Layers 2, MegaETH, via revm (EVM basé sur Rust que MegaETH utilise), atteint environ 14 000 TPS sur des blocs Ethereum récents dans une configuration de synchronisation historique et 1000 TPS sur une synchronisation en temps réel. 

Pour des performances en temps réel, MegaETH s'attaque à trois inefficacités majeures

  • la latence d'accès à l'état de la blockchain
  • l'absence d'exécution parallèle des transactions
  • la surcharge de l'interpréteur

La réduction de la latence d’accès à l’état de la blockchain

Comme explicité précédemment, le nœud séquenceur de MegaETH est spécialisé et équipé de suffisamment de mémoire RAM pour stocker l’intégralité de l’état de blockchain (100 Go pour Ethereum en 2024) sur la RAM, éliminant ainsi les lenteurs associées aux SSD

Cette approche que l’on nomme le calcul en mémoire réduit le temps d'accès à l'état de la blockchain d'un facteur 1000 comparé aux autres blockchains qui utilisent des SSD, offrant ainsi une amélioration significative des performances globales du réseau.

L'exécution parallèle des transactions 

MegaETH adopte une approche différente des projets qui mettent en avant l'utilisation de moteurs d'exécution parallèle des transactions comme Aptos (Block-STM), Sui ou encore Monad. Plutôt que de s'appuyer sur la technologie BlockSTOM d'Aptos, l’équipe considère qu’elle ne répond pas pleinement à ses objectifs ambitieux en termes de performances.

En effet, MegaETH fait face à deux challenges

  • Générer des blocs à une fréquence élevée 
  • Le moteur d'exécution parallèle doit traiter les transactions en fonction de leurs priorités 

Pour atteindre cet objectif, MegaETH utilise un algorithme de construction de blocs basé sur un flux de données à faible latence, associé à un protocole de gestion de priorité des transactions.

Ainsi, grâce à cette prise de position avant-gardiste, MegaETH est le premier moteur d'exécution EVM capable de traiter les transactions en temps réel dès leur arrivée et de permettre aux transactions critiques d'être traitées sans délai.

Optimisations diverses de la blockchain favorisant sa performance 

La compilation just-in-time (JIT) améliore l'exécution des smart contracts sur MegaETH en convertissant le code en instructions machine juste avant son exécution. Cela accélère le traitement, réduit les délais et permet de gérer des transactions complexes plus efficacement. 

Grâce à la compilation JIT, MegaETH offre des performances rapides et une meilleure expérience utilisateur, contribuant à atteindre l'objectif de 100 000 TPS.

Le principal frein des blockchains EVM vient des opérations d'entrée/sortie (I/O) sur disque dur, qui ralentissent le système. Ces opérations, comme la gestion des contrats et des soldes, sont gourmandes en ressources.

MegaETH contourne ce problème en utilisant un nouvel arbre d'état (Merkle Patricia Trie), plus rapide et moins dépendant du disque, comme passer d'une rue embouteillée à une autoroute fluide. Ce changement améliore considérablement la performance tout en restant compatible avec l'EVM.

  • MegaETH assure des performances élevées grâce à une synchronisation en temps réel efficace. Il utilise un protocole peer-to-peer qui compresse les données, permettant à tous les nœuds, même ceux avec une connexion lente, de rester à jour rapidement. 

Cela permet un traitement instantané des transactions et garantit une performance optimale du réseau.

Équipe, levée de fonds & token 

Le projet est porté par trois co-fondateurs au parcours impressionnant : Lei Yang (CTO), diplômé du MIT en informatique, Yilong Li (CEO), diplômé de l'Université de Stanford en informatique et Shuyao Kong (CBO), diplômée d'Harvard avec une expérience chez ConsenSys, l'entreprise à l'origine d'Ethereum.


Une levée de fonds en seed a récemment permis de récolter 20 millions de dollars. Parmi les investisseurs, on compte des fonds tels que Dragonfly Capital et Figment Capital. Du côté des business angels, des figures majeures de l'écosystème crypto, comme Vitalik Buterin et Cobie, ont également participé.

À ce stade, aucune information officielle ne confirme l'existence d'un jeton associé à ce projet. Cependant, compte tenu de ses caractéristiques, il est raisonnable de supposer qu'un jeton MegaETH pourrait être lancé à l'avenir.

Ainsi, on peut envisager plusieurs utilités potentielles pour un tel jeton :

  • Gouvernance : le jeton pourrait permettre aux détenteurs de participer aux décisions concernant l'évolution et la gestion du réseau MegaETH.
  • Sécurisation du réseau : les utilisateurs pourraient staker leurs jetons pour valider les transactions et contribuer à la sécurité du réseau.
  • Paiement des frais : le jeton pourrait être utilisé pour payer les frais de transaction sur le réseau MegaETH.

Il faut savoir que le lancement du réseau MegaETH devrait se faire en plusieurs étapes : 

  1. Le réseau de test public est prévu pour fin Q3, début Q4 
  2. Le réseau principal (mainnet) devrait voir le jour fin 2024, début 2025

La décision concernant un jeton natif pourrait être clarifiée à l’approche de ces dates de lancement.  

Conclusion 

En tant que pionnière de la blockchain modulaire avec une exécution EVM en temps réel, MegaETH présente une promesse séduisante. Avec des transactions ultra-rapides, des frais bas et une parfaite compatibilité avec l'EVM, elle bénéficie également d'une connexion native à Ethereum, facilitant l'accès à une vaste base d'utilisateurs et de liquidités.

Son soutien au langage de programmation Solidity renforce son attrait, mais face à des concurrents comme Monad, MegaETH doit continuer à innover pour se distinguer. 

Néanmoins, on peut affirmer que MegaETH a le potentiel de redonner un nouvel élan à Ethereum.

Liens utiles pour en savoir plus sur MegaETH & Reth

🔗 MegaETH Research

🔗 Paradigm : How to Raise the Gas Limit

🔗 Paradigm : Releasing Reth!

🔗 Paradigm : Announcing Reth Beta!

🔗 Paradigm : Reth’s path to 1 gigagas per second, and beyond

🔗 Analyse fondamentale Eigen Layer & EigenDA

📺 Mega ETH vs Monad: The Battle To Shape Ethereum's Future