Définition
Oracle TWAP on-chain : définition
Un oracle TWAP on-chain calcule un prix moyen pondéré par le temps (Time-Weighted Average Price) à partir de l'historique d'une pool d'échange décentralisée, ce qui rend la manipulation du prix sur un seul bloc beaucoup plus coûteuse.
Thème : Oracles et interopérabilité
Lire le prix instantané d'un AMM est dangereux : un attaquant peut déséquilibrer la pool dans une transaction, par exemple grâce à un flash loan, puis profiter de ce prix artificiel dans la même transaction. Le TWAP répond à ce problème. Certaines pools enregistrent en continu un accumulateur de prix, une somme qui croît avec le temps selon le prix en vigueur. En comparant sa valeur à deux moments, on obtient le prix moyen sur la période.
Pour fausser un TWAP calculé sur, par exemple, trente minutes, il faudrait maintenir un prix manipulé pendant une bonne partie de cette durée, en assumant les pertes face aux arbitragistes qui viendraient rééquilibrer la pool. Cet oracle a l'avantage d'être entièrement sur la chaîne, sans opérateur externe. Son inconvénient est le décalage : en cas de mouvement rapide, le prix moyen reste en retard sur le prix réel.
Un exemple concret
Un protocole de prêt fictif utilise le TWAP sur une heure d'une pool ETH/USDC. Un attaquant fait monter brutalement le prix de l'ETH dans la pool pendant un seul bloc. Le prix moyen sur l'heure ne bouge presque pas, et l'attaquant ne peut pas emprunter davantage. Il a en revanche perdu de l'argent face aux arbitragistes qui ont ramené le prix à son niveau.
Les risques à connaître
Un TWAP sur une pool peu liquide ou sur une période trop courte reste manipulable, surtout par un acteur capable d'influencer plusieurs blocs consécutifs. Le retard du prix moyen peut empêcher des liquidations nécessaires lors d'une chute rapide, laissant le protocole avec des créances non couvertes.
Questions fréquentes sur Oracle TWAP on-chain
Pourquoi utiliser un prix moyen plutôt que le prix actuel ?
Parce que le prix instantané d'une pool peut être manipulé en une seule transaction. Un prix moyen sur plusieurs minutes oblige un attaquant à maintenir la manipulation longtemps, ce qui la rend très coûteuse.
Un oracle TWAP peut-il être manipulé ?
Oui, si la pool est peu liquide ou la période trop courte. Sa résistance dépend directement de la profondeur de la pool et de la durée de la moyenne.