Ein Oracle löst, was Blockchain-Entwickler das "Oracle-Problem" nennen: Ein Smart Contract kann nur Daten sehen, die bereits auf seiner eigenen Chain liegen, doch die meisten nützlichen Contracts müssen auf etwas reagieren, das außerhalb davon geschieht, einen Aktienkurs, eine Flugverspätung, eine Wettermessung oder einen Transfer auf einem anderen Netzwerk. Ein Oracle ist die Middleware, die diese externen Informationen abruft, prüft und on-chain in einer Form bereitstellt, die jeder Validator eigenständig verifizieren kann, da ein Contract keine eigene HTTPS-Anfrage stellen kann, ohne den Netzwerkkonsens zu brechen.
Oracles arbeiten nach einem von zwei Hauptmustern. Push-Oracles veröffentlichen aktuelle Daten on-chain in festen Intervallen oder sobald ein Wert eine festgelegte Schwelle überschreitet, sodass sie bereits auf der Blockchain liegen, wenn ein Contract sie benötigt. Pull-Oracles signieren Daten stattdessen off-chain und lassen einen Contract sie bei Bedarf abrufen, was Kosten senkt bei Feeds, die weit häufiger aktualisiert als tatsächlich abgefragt werden. Quellen reichen von Software, APIs und Exchanges bis zu Hardwaresensoren, die reale Bedingungen wie Standort oder Temperatur melden.
Da ein einzelner Datenanbieter bestochen, gehackt werden oder ausfallen kann, setzen ernsthafte DeFi-Protokolle auf dezentrale Oracle-Netzwerke, die unabhängige Nodes kombinieren und deren Ergebnisse aggregieren, wodurch das Risiko sinkt, dass eine einzelne Quelle einen Preis bewegen kann. Chainlink ist das größte dieser Netzwerke und sichert zweistellige Milliardenbeträge in Kreditmärkten, Stablecoins und Derivaten ab, während Pyth und RedStone schnellere, pull-basierte Feeds für High-Frequency-Trading bieten. Ist ein Feed fehlerhaft oder manipuliert, sind die Folgen unmittelbar: Kreditplattformen haben durch falsche Preisdaten, die fehlerhafte Liquidationen auslösten, reale Verluste erlitten, weshalb die Zuverlässigkeit von Oracles als Kerninfrastruktur von DeFi behandelt wird und nicht als Nebensache.