🤖 NOUVEAU : « Quicknode » : un guide pratique sur l'IA 10 recettes éprouvées pour le codage en IA agents.
Voir les recettes     Ordre des transactions sur la blockchain et MEV : risques et avantages | QuicknodeCertifié SOC 2 Type II · ISO 27001
Réponses>En savoir plus sur le MEV et l'ordre des transactions>Comment fonctionne l'ordre des transactions Fonctionnement de l'ordre des transactions
// Tags
Ordre des transactionsmempool
En bref : L’ordonnancement des transactions est le processus par lequel une blockchain détermine quelles transactions en attente seront incluses dans le bloc suivant et dans quel ordre. Cet ordonnancement influe directement sur les transactions qui aboutissent, celles qui échouent et le montant que chaque participant reçoit. Sur la plupart des blockchains, l’entité qui produit le bloc dispose d’un pouvoir discrétionnaire total sur l’ordre des transactions. Historiquement, les transactions étaient classées par prix du gaz, le plus offrant passant en premier. Aujourd’hui, le processus est bien plus complexe : il implique des frais de base, des frais de priorité, l’ flow d’ordres privés, des créateurs de blocs spécialisés et des mécanismes d’enchères qui ont transformé la construction des blocs en un marché sophistiqué.
L'explication simple
Lorsque vous soumettez une transaction à une blockchain, celle-ci est placée dans le mempool, une zone d'attente publique où toutes les transactions en attente attendent d'être incluses dans un bloc. Le mempool n'est pas une file d'attente. Il n'y a aucune garantie que les transactions soient traitées selon le principe du « premier arrivé, premier servi ». Au contraire, le producteur de blocs (un validateur sur les chaînes de type « Proof of Stake », un mineur sur les chaînes de type « Proof of Work ») sélectionne les transactions à inclure et les organise dans l'ordre de son choix.
Ce fonctionnement diffère fondamentalement de celui des systèmes traditionnels. Lorsque vous passez un ordre sur une place boursière, celle-ci applique des règles strictes en matière de priorité temporelle : les ordres qui arrivent en premier sont exécutés en premier. Sur une blockchain, le producteur de blocs fait office de place boursière et peut réorganiser les transactions comme il l’entend. La seule contrainte est que chaque transaction doit être valide compte tenu de l’état généré par les transactions qui la précèdent dans le même bloc.
Pourquoi l'ordre des transactions est-il si important ? Parce que dans la DeFi, l'ordre des transactions au sein d'un bloc peut déterminer les prix, les liquidations et les résultats des opérations d'arbitrage. Si deux personnes tentent d'acheter le même token à partir du même pool de liquidité, celle dont la transaction s'exécute en premier obtient un meilleur prix. La transaction de la deuxième personne s'exécute quant à elle sur un pool moins liquide et à un prix plus élevé. La différence entre être le premier et le deuxième peut représenter des milliers, voire des millions de dollars.
Le modèle traditionnel : classement en fonction du prix de l'essence
Avant la mise à jour EIP-1559 d’ Ethereum(août 2021), l’ordre des transactions était simple : les utilisateurs fixaient un prix du gaz pour leur transaction, et les producteurs de blocs triaient le mempool par prix du gaz, en commençant par le plus élevé. Si vous vouliez que votre transaction soit traitée avant celle d’un autre utilisateur, vous deviez payer un prix du gaz plus élevé. Cela créait un système d’enchères simple mais impitoyable, appelé « Priority Gas Auction » (PGA).
Les PGA étaient en proie au chaos pendant les périodes de forte demande. Les chasseurs de MEV, se disputant les opportunités d’arbitrage ou de liquidation, surenchérissaient rapidement les uns sur les autres, augmentant leurs prix de gaz en temps réel. Une seule opportunité de MEV rentable pouvait déclencher des dizaines de transactions concurrentes, chacune avec des prix du gaz de plus en plus élevés, consommant ainsi de l’espace de bloc et faisant grimper les coûts pour tous les autres utilisateurs du réseau. Les utilisateurs qui tentaient d’effectuer un simple transfert de jetons voyaient leurs coûts de gaz monter en flèche, car les bots faisaient grimper le prix de l’espace de bloc dans le but de réaliser des profits grâce au MEV.
Le modèle PGA impliquait également que l'ordre des transactions était entièrement déterminé par la volonté de payer. Il n'y avait aucune notion d'équité, aucune prise en compte du moment où une transaction était soumise, ni aucun mécanisme visant à protéger les utilisateurs réguliers contre le risque de se faire surenchérir par des bots sophistiqués, dotés d'un suivi plus rapide du mempool et de réserves de capital plus importantes.
L'EIP-1559 et le modèle de frais en deux parties
EthereumLa mise à jour EIP-1559 a remplacé le prix unique du gaz par une structure tarifaire à deux composantes : des frais de base et des frais de priorité (pourboire). Les frais de base sont fixés de manière algorithmique par le protocole en fonction du taux de remplissage du bloc précédent. Lorsque les blocs sont remplis à plus de 50 %, les frais de base augmentent. Lorsqu’ils sont remplis à moins de 50 %, ils diminuent. Les frais de base sont brûlés (retirés de la circulation), ce qui signifie qu’ils ne reviennent pas aux validateurs.
Les frais de priorité correspondent au montant qu'un utilisateur verse directement au validateur afin de l'inciter à inclure sa transaction. Dans un système où chaque transaction est soumise aux mêmes frais de base, les frais de priorité deviennent le facteur déterminant pour l'ordre de traitement. Les transactions dont les frais de priorité sont les plus élevés sont traitées en premier.
Ce modèle a amélioré la prévisibilité des frais pour les utilisateurs (le frais de base s'ajuste en douceur plutôt que de connaître des pics imprévisibles) et a réduit l'efficacité des PGA (puisque les bots concurrents ne peuvent plus faire grimper le prix global du gaz pour tout le monde, mais uniquement leur propre frais de priorité). Cependant, il n'a pas éliminé l'extraction de valeur basée sur l'ordre des transactions. Les validateurs (ou les « builders » à qui ils délèguent) contrôlent toujours la séquence des transactions au sein d'un bloc, et le frais de priorité continue de créer une enchère pour le positionnement.
Construction modulaire moderne : séparation entre le promoteur et le constructeur
Aujourd'hui, l'ordre des transactions sur Ethereum est régit par un système appelé « Proposer-Builder Separation » (PBS), mis en œuvre via MEV-Boost et l'écosystème Flashbots. Le PBS divise le processus de production des blocs en deux rôles : les « builders », qui assemblent le contenu du bloc, et les « proposers » (validateurs), qui valident le bloc final.
Le processus fonctionne comme suit. Les utilisateurs soumettent leurs transactions au mempool public ou directement aux « builders » via des canaux privés. Les « MEV searchers » surveillent le mempool et constituent des « bundles », c’est-à -dire des groupes ordonnés de transactions conçus pour exploiter des opportunités MEV spécifiques (arbitrage, liquidation, « sandwich »). Les « builders » collectent ces lots ainsi que les transactions habituelles des utilisateurs, les assemblent en un bloc complet ordonné de manière à maximiser la valeur totale, puis soumettent leur bloc sous forme d’offre à un relais. Le relais valide le bloc et transmet l’offre la plus élevée au proposant. Le proposant sélectionne l’offre gagnante (généralement celle qui lui rapporte le plus), signe l’en-tête du bloc, puis le relais publie le bloc complet sur le réseau.
Plus de 90 % des blocs de l'Ethereum sont désormais produits via ce pipeline PBS. Le système a professionnalisé le traitement des transactions à un degré qui aurait été inimaginable aux débuts du réseau. La création de blocs est devenue une activité concurrentielle et à forte intensité capitalistique, dans laquelle une poignée de créateurs produisent la majorité des blocs grâce à leur capacité à extraire et à distribuer efficacement la MEV.
Commande privée Flow
L'une des évolutions les plus marquantes en matière d'ordonnancement des transactions est l'essor des ordres privés flow. Au lieu de diffuser leurs transactions dans le mempool public (où elles sont visibles par les bots pratiquant le « front-running »), les utilisateurs peuvent les soumettre directement aux « builders » via des canaux privés. Des services tels que Flashbots Protect, MEV Blocker et les relais de transactions privés acceptent les transactions des utilisateurs et les transmettent aux « builders » sans les exposer au mempool public.
Les ordres privés flow protègent les utilisateurs contre les attaques de type « sandwich » (puisque les bots ne peuvent pas voir la transaction pour la devancer), mais créent une nouvelle dynamique sur le marché de la construction de blocs. Les constructeurs ayant accès à des ordres privés exclusifs flow bénéficient d’un avantage concurrentiel, car ils peuvent construire des blocs plus rentables que ceux qui se limitent aux transactions publiques du mempool. Cela a conduit à une concentration de la construction de blocs entre les mains d’un petit nombre de constructeurs disposant des meilleures relations en matière d’ flow s d’ordres, ce qui soulève des inquiétudes quant à la centralisation d’un système conçu pour être décentralisé.
Ordre des transactions sur d'autres chaînes
Solana gère l'ordre des transactions différemment en raison de son architecture. Il n'y a pas de mempool traditionnel. Les transactions sont envoyées directement au leader actuel (le validateur chargé de produire le bloc du slot en cours). C'est le leader qui détermine l'ordre, et le protocole Gulf Stream de Solana transfère les transactions à l'avance au futur leader. Cela réduit certains vecteurs d'attaque MEV (comme le « mempool sniping » traditionnel), mais confère au leader un pouvoir considérable sur l'ordre des transactions pendant son slot.
Les rollups de couche 2 tels que Arbitrum, Base et Optimism utilisent actuellement des séquenceurs centralisés qui classent les transactions selon le principe du « premier arrivé, premier servi ». Le séquenceur reçoit les transactions, les classe par ordre d’arrivée et les regroupe en lots avant de les soumettre à la couche 1 d’ Ethereum . Ce modèle réduit le MEV lié à l’ordre des transactions par rapport à la couche 1 d’ Ethereum , mais concentre le pouvoir de classement des transactions entre les mains d’une seule entité. Les efforts visant à décentraliser les séquenceurs, notamment par le biais de réseaux de séquencement partagés et de mécanismes de rotation des séquenceurs, constituent des axes de développement actifs.
Comment l'ordre des transactions génère-t-il du MEV ?
Comme c’est le producteur de blocs qui choisit l’ordre des transactions, cet ordre devient lui-même une source de profit. Le réordonnancement, l’insertion ou la censure de transactions permettent de capter une valeur qui, autrement, reviendrait aux utilisateurs ordinaires ; cette valeur captée est appelée MEV. Un « searcher » qui repère un swap important dans le mempool peut placer un ordre d’achat juste avant celui-ci et un ordre de vente juste après afin de tirer profit de l’impact sur le cours. La raison profonde pour laquelle cela est possible est d’ordre structurel : tant que quelqu’un contrôle l’ordre des transactions et que celles-ci sont visibles avant leur exécution, cette opportunité existe, ce qui explique précisément l’existence du MEV.
En quoi l'ordre des transactions diffère-t-il d'une blockchain à l'autre ?
Chaque chaîne confie le pouvoir de passation des ordres à un acteur différent, ce qui influe sur le niveau d’exposition des utilisateurs au MEV. Le modèle « Ethereum » fait appel à des «builders» et des «proposers», le modèle « Solana » confie le contrôle au leader actuel, et la plupart des rollups s’appuient sur un seul séquenceur. Le tableau ci-dessous compare ces trois modèles.
Chaîne | Mécanisme de commande | Exposition au MEV |
|---|
Ethereum L1 | Classement des entrepreneurs par valeur totale via PBS | Élevé ; les attaques par arbitrage et de type « sandwich » sont courantes |
Solana | Commandes en tête de liste, pas de mempool public | Moins de « sniping » dans le mempool, mais le leader contrôle toujours l'ordre |
Rollups L2 (Arbitrum, Base) | Séquenceur centralisé, selon le principe du « premier arrivé, premier servi » | Réduction du MEV lié au réordonnancement, mais le séquenceur est considéré comme fiable |
Quels sont les principaux types d'extraction de valeur basée sur les commandes ?
Toutes les formes d'extraction de valeur fondées sur le classement ne sont pas néfastes. Certaines contribuent à l'efficacité des marchés, tandis que d'autres se font directement au détriment de l'utilisateur soumis à ce classement. Le tableau ci-dessous résume les catégories les plus courantes recherchées par les utilisateurs.
Type MEV | Fonctionnalités | Qui est concerné ? |
|---|
Arbitrage | Profits tirés des écarts de prix entre les pools ou les places de marché | Globalement sans conséquence ; harmonise les prix |
Liquidation | Rembourse les prêts insuffisamment garantis en échange d'une prime | Les emprunteurs « near nt » leur seuil |
Sandwich | Les « front-runs » et les « back-runs » : un échange de victimes | Les traders sur le mempool public |
Retour en arrière | Insère une transaction juste après une cible | Variable ; souvent bénin |
Est-il possible de protéger les transactions contre un ordre d'exécution préjudiciable ?
Oui, dans une large mesure. La défense la plus simple consiste à empêcher une transaction d’entrer dans le mempool public en la faisant transiter par un service privé d’ flow , de sorte que les bots pratiquant le « front-running » ne la voient jamais avant son exécution. La définition de limites de slippage strictes permet également de plafonner le montant qu’un « sandwich » peut extraire. Ces approches, associées à la recherche sur le « fair-ordering » et aux mempools chiffrés, s’inscrivent dans un ensemble plus large de stratégies d’atténuation du MEV visant à protéger les utilisateurs sans sacrifier l’ouverture du réseau.
Foire aux questions
L'ordre des transactions correspond-il au principe du « premier arrivé, premier servi » ?
En général, non. Sur la plupart des blockchains, le producteur de blocs peut organiser les transactions incluses dans n’importe quel ordre valide ; l’heure d’arrivée ne garantit donc pas l’ordre d’exécution. Certains séquenceurs de couche 2 classent aujourd’hui les transactions par ordre d’arrivée, mais il s’agit là d’une caractéristique propre à ces systèmes spécifiques, et non des blockchains en général.
Est-ce qu'une commission plus élevée garantit que ma transaction sera traitée en priorité ?
Cela améliore vos chances, mais ne garantit pas une place dans la liste. Des frais de priorité plus élevés augmentent les chances d'être inclus et d'être placé plus tôt, mais les organisateurs optimisent la valeur totale de l'ensemble du bloc ; ainsi, un lot qui rapporte globalement davantage peut tout de même être classé avant votre transaction individuelle.
L'ordre des transactions a-t-il un rapport avec la finalité ?
Ces deux notions sont liées mais distinctes. L'ordonnancement détermine l'ordre au sein d'un bloc, tandis que la finalité détermine à quel moment ce bloc ne peut plus être annulé. Une transaction peut être ordonnée et incluse dans un bloc tout en pouvant encore être annulée si le bloc est réorganisé avant d'avoir atteint la finalité.
L'ordre des transactions peut-il changer après la création d'un bloc ?
Au sein d'un même bloc, non ; l'ordre est figé une fois le bloc signé. En revanche, le bloc lui-même peut être remplacé lors d'une réorganisation de la chaîne, ce qui peut entraîner la suppression ou le réordonnancement de transactions par rapport à la chaîne canonique jusqu'à ce que la finalité soit atteinte.
Les solutions de couche 2 permettent-elles d'éliminer le MEV ?
Pas tout à fait. Un séquenceur centralisé qui classe les transactions par ordre d'arrivée réduit le MEV lié au réordonnancement, courant sur la couche 1 d'Ethereum , mais il concentre le pouvoir de classement entre les mains d'un seul opérateur et n'élimine pas toutes les formes d'extraction. La décentralisation des séquenceurs est un domaine de recherche actif visant à remédier à ce problème.
Le rĂ´le d'Quicknode
L'ordre des transactions a une incidence sur toutes les applications qui soumettent ou surveillent des transactions sur une blockchain. L'API Core de Quicknode offre aux développeurs l'accès RPC à faible latence dont ils ont besoin pour soumettre des transactions avec une estimation précise des frais et un timing exact. Les temps de réponse rapides garantissent que les transactions de votre application parviennent au réseau avec un délai minimal, ce qui est particulièrement important dans les environnements concurrentiels où chaque milliseconde détermine le positionnement des transactions.
Pour les applications qui doivent surveiller l'ordre dans lequel les transactions sont classées et intégrées, Quicknode Streams fournit des données de blocs en temps réel avec une livraison garantie et un traitement par ordre de finalité. En diffusant en continu les données de transactions filtrées en fonction de vos contrats et de vos adresses, vous pouvez analyser les schémas d’ordonnancement, détecter les activités MEV affectant vos utilisateurs et mettre en place des systèmes qui réagissent en temps réel à la dynamique au niveau des blocs. L’infrastructure de Quicknode garantit à votre application la vitesse, la fiabilité et l’accès aux données nécessaires pour naviguer dans les réalités complexes de l’ordonnancement moderne des transactions.
Pour en savoir plus