BlockPulseNews
Définition

Oracle : définition

Un oracle est un service qui transmet à une blockchain des informations venant de l'extérieur, comme le prix d'un actif, un résultat sportif ou une donnée météo, pour que les smart contracts puissent les utiliser. C'est un point critique de sécurité.

Thème : Oracles et interopérabilité

Oracle : comment ça marche ?

Une blockchain ne peut pas consulter internet : ses smart contracts ne voient que les données présentes sur la chaîne. Or beaucoup d'applications ont besoin d'informations extérieures. Un protocole de prêt doit connaître le prix des garanties pour savoir quand liquider un emprunteur, une assurance doit savoir si un événement a eu lieu. L'oracle fait ce lien : il récupère l'information, la met en forme et la publie sur la chaîne via une transaction.

Ce rôle crée un problème appelé le problème de l'oracle : si la donnée transmise est fausse, le smart contract exécute fidèlement des décisions fondées sur une erreur. Pour limiter ce risque, les oracles décentralisés agrègent les rapports de nombreux opérateurs indépendants, d'autres calculent des prix moyens sur une période, et les protocoles ajoutent des garde-fous comme des vérifications d'ancienneté ou des bornes de variation.

Un exemple concret

Une plateforme de prêt fictive accepte des ETH en garantie. Toutes les quelques minutes, un oracle publie le prix de l'ETH en dollars. Lorsque le prix chute et que la garantie de Fanny ne couvre plus suffisamment son emprunt, le contrat le constate grâce à cette donnée et permet la liquidation de sa position. Sans oracle, le contrat ignorerait totalement l'évolution du prix.

Les risques à connaître

Un oracle manipulé ou défaillant peut entraîner des liquidations injustifiées ou permettre à un attaquant d'emprunter bien plus que sa garantie. De nombreux piratages de protocoles DeFi ont exploité des oracles fragiles, notamment ceux qui s'appuient sur le prix instantané d'une seule pool peu liquide. Un prix périmé est un autre danger fréquent.

À ne pas confondre avec

  • Oracle décentralisé : L'oracle décentralisé est un type d'oracle qui agrège plusieurs sources indépendantes, alors que le terme oracle désigne tout mécanisme apportant des données externes, y compris un opérateur unique.
  • Bridge : Un bridge transfère des actifs ou des messages entre blockchains, alors qu'un oracle apporte des données du monde extérieur vers une blockchain.

Questions fréquentes sur Oracle

Pourquoi les blockchains ont-elles besoin d'oracles ?

Parce qu'elles ne peuvent pas accéder d'elles-mêmes à des données extérieures. Les oracles fournissent aux smart contracts des informations comme les prix, indispensables à de nombreuses applications.

Qu'est-ce qu'une attaque par manipulation d'oracle ?

C'est une attaque où l'on fausse la donnée lue par un protocole, souvent en déplaçant temporairement un prix, pour emprunter trop ou déclencher des liquidations à son avantage.

Termes liés

Dans le même thème : Oracles et interopérabilité

Tous les termes du thème Oracles et interopérabilité →

À lire

L'actualité : Oracles et interopérabilité

Les derniers articles de BlockPulseNews sur ce sujet.

Approfondir avec l'Académie : Les Oracles Un module gratuit, en leçons courtes et quiz, pour maîtriser ce thème pas à pas.
Découvrir le module

Les autres termes en O

← Tout le lexique crypto de A à Z