Oracles

Les oracles sont des services tiers qui fournissent aux smart contracts des données externes, leur permettant d'interagir avec le monde réel.

Les oracles agissent comme des ponts entre les blockchains et les sources de données externes. Les smart contracts, fonctionnant sur les blockchains, ne peuvent pas accéder nativement aux informations hors chaîne telles que les flux de prix, les données météorologiques ou les réponses d'API. Les oracles résolvent ce problème en récupérant et en vérifiant les données externes, puis en les relayant aux smart contracts. Cela permet aux smart contracts de s'exécuter en fonction d'événements et d'informations du monde réel.

Il existe différents types d'oracles, notamment les oracles logiciels (récupérant les données des API), les oracles matériels (utilisant des capteurs) et les oracles humains (s'appuyant sur l'intervention humaine). La sécurité et la fiabilité d'un oracle sont cruciales, car les oracles compromis peuvent conduire à des données incorrectes et à des pertes financières importantes pour les utilisateurs de smart contracts.

🛡️ Trust Score

100%

✅ Faits techniques vérifiés

  • Oracles provide smart contracts with access to external data.
  • Blockchains cannot natively fetch off-chain data due to their deterministic nature.
  • The 'Oracle Problem' refers to the trust and decentralization challenges of external data.
  • Decentralized Oracle Networks (DONs) use multiple sources to ensure reliability.
  • Push-based oracles update on-chain data at regular intervals.
  • Pull-based oracles update on-chain data only when requested by a transaction.
        graph LR
  Center["Oracles"]:::main
  Pre_smart_contract["smart-contract"]:::pre --> Center
  click Pre_smart_contract "/terms/smart-contract"
  Pre_blockchain["blockchain"]:::pre --> Center
  click Pre_blockchain "/terms/blockchain"
  Rel_decentralized_finance_defi["decentralized-finance-defi"]:::related -.-> Center
  click Rel_decentralized_finance_defi "/terms/decentralized-finance-defi"
  Rel_chainlink["chainlink"]:::related -.-> Center
  click Rel_chainlink "/terms/chainlink"
  Rel_inter_blockchain_communication_ibc["inter-blockchain-communication-ibc"]:::related -.-> Center
  click Rel_inter_blockchain_communication_ibc "/terms/inter-blockchain-communication-ibc"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Explique-moi comme si j'avais 5 ans

🔌 C'est comme un traducteur qui lit les infos à la télé et les explique à un ordinateur qui ne comprend que le code.

🤓 Expert Deep Dive

La sécurité des oracles repose sur l'agrégation de données. Des réseaux comme Chainlink utilisent des nœuds indépendants pour éviter un point de défaillance unique. Les oracles 'hardware' utilisent des capteurs physiques (ex: logistique).

🔗 Termes associés

📚 Sources