Een oracle lost op wat blockchain-engineers het "oracle-probleem" noemen: een smart contract kan alleen data zien die al op zijn eigen chain staat, terwijl de meeste bruikbare contracten moeten reageren op iets wat daarbuiten gebeurt, een aandelenkoers, een vertraagde vlucht, een weersmeting, of een transfer op een ander netwerk. Een oracle is de middleware die deze externe informatie ophaalt, controleert en on-chain aflevert in een vorm die elke validator zelfstandig kan verifiëren, aangezien een contract niet simpelweg zelf een HTTPS-verzoek kan doen zonder de netwerkconsensus te breken.
Oracles werken volgens een van twee hoofdpatronen. Push-oracles publiceren nieuwe data on-chain op vaste intervallen of zodra een waarde een ingestelde drempel overschrijdt, zodat de data al klaarstaat op de blockchain wanneer een contract deze nodig heeft. Pull-oracles ondertekenen data juist off-chain en laten een contract deze op aanvraag ophalen, wat kosten bespaart bij feeds die veel vaker worden bijgewerkt dan ze daadwerkelijk worden geraadpleegd. Bronnen lopen uiteen van software, API's en exchanges tot hardwaresensoren die real-world omstandigheden zoals locatie of temperatuur rapporteren.
Omdat één dataleverancier omgekocht, gehackt of offline kan raken, vertrouwen serieuze DeFi-protocollen op gedecentraliseerde oracle-netwerken die onafhankelijke nodes combineren en hun resultaten aggregeren, waardoor het risico kleiner wordt dat één enkele bron een koers kan bewegen. Chainlink is de grootste hiervan en beveiligt tientallen miljarden dollars aan waarde binnen leenmarkten, stablecoins en derivaten, terwijl Pyth en RedStone snellere, pull-based feeds bieden die gebouwd zijn voor high-frequency trading. Wanneer een feed onjuist is of gemanipuleerd wordt, zijn de gevolgen direct: leenplatformen hebben echte verliezen geleden door foutieve prijsdata die verkeerde liquidaties in gang zette, wat verklaart waarom oracle-betrouwbaarheid wordt behandeld als kerninfrastructuur van DeFi en niet als een bijzaak.