Definitie
Een oracle is de brug die externe data naar een smart contract brengt, zodat blockchain-afspraken op informatie van buiten kunnen reageren.
Samengevat in 10 seconden
Een oracle is een dienst die data van buiten de blockchain (zoals een koers, een rentestand of een uitslag) aanlevert aan een smart contract, dat daar zelf niet bij kan. Zonder oracle kent een contract alleen wat al op de keten staat. Met een oracle kan het reageren op de echte wereld.
Oracles samengevat
- Een oracle koppelt een smart contract aan informatie die buiten de blockchain leeft
- Het contract zelf kan geen website of databank bevragen — de oracle doet dat namens hem
- De betrouwbaarheid van de oracle bepaalt de betrouwbaarheid van het hele contract
- Manipulatie of fouten in de aangeleverde data heten samen het "oracle-probleem"
Wat een oracle voor een smart contract doet
Een smart contract is een stukje code dat automatisch uitvoert wat erin staat zodra de voorwaarden kloppen. Het draait afgeschermd op de blockchain en kent uitsluitend de gegevens die al op die keten staan. De buitenwereld — een aandelenkoers, het weer, de uitslag van een wedstrijd — blijft buiten beeld.
Daar komt de oracle in beeld. Die haalt de gevraagde informatie op en zet ze in een vorm die het contract kan lezen. Pas dan kan een contract bijvoorbeeld zeggen: "is de prijs van deze munt onder een grens gezakt, voer dan deze actie uit." De oracle is dus geen databron op zichzelf, maar de koerier die de bron en het contract verbindt.
Hoe data van buiten op de blockchain komt
De gang van data verloopt in stappen. Een contract stelt een vraag, de oracle verzamelt het antwoord bij één of meer bronnen, controleert het en schrijft het naar de keten. Het contract leest die waarde en handelt ernaar.
De zwakke plek zit in dat schrijven naar de keten. Alles wat eenmaal op de blockchain staat, geldt daar als waar — ook als de oracle een verkeerd cijfer doorgaf. Een contract kan niet zelf nagaan of een koers klopt. Levert de oracle een foute of gemanipuleerde waarde, dan voert het contract trouw de verkeerde actie uit. Dat is precies waarom de keuze en opzet van de oracle zo zwaar wegen.
Welke soorten oracles er zijn
Oracles worden langs een paar assen ingedeeld. De belangrijkste zijn de richting van de data, het type bron en de mate van spreiding over meerdere partijen.
| Indeling | Variant | Wat het inhoudt |
|---|---|---|
| Richting | Inbound | Brengt externe data náár het contract (bv. een koers) |
| Richting | Outbound | Stuurt een signaal vanaf de keten náár buiten |
| Bron | Software-oracle | Haalt data van websites, API's en databanken |
| Bron | Hardware-oracle | Leest fysieke sensoren, scanners of meters uit |
| Spreiding | Gecentraliseerd | Eén partij levert de data aan |
| Spreiding | Gedecentraliseerd | Meerdere onafhankelijke bronnen samen |
Een gecentraliseerde oracle is eenvoudiger, maar zet alles op één partij: valt die uit of liegt die, dan klopt de uitkomst niet. Een gedecentraliseerde opzet verdeelt de taak over meerdere aanbieders en combineert hun antwoorden, zodat één foute bron minder snel de uitkomst bepaalt. Die spreiding kost meer, maar verkleint het vertrouwen dat je in één enkele schakel moet stellen.
Waarvoor protocollen en beleggers oracles gebruiken
De grootste toepassing zit in DeFi, de wereld van financiële diensten op de blockchain. Leenplatforms gebruiken een prijsfeed-oracle om te bepalen hoeveel onderpand een lening waard is en wanneer die geliquideerd moet worden. Een stablecoin die zijn waarde aan de euro of dollar koppelt, leunt eveneens op koersdata van een oracle.
Buiten financiën zijn er meer voorbeelden. Een verzekeringscontract dat automatisch uitkeert bij vertraagde vlucht heeft een oracle nodig die de vluchtstatus aanlevert. Een weddenschapscontract heeft de uitslag nodig. Telkens geldt hetzelfde patroon: het contract regelt de afhandeling, de oracle levert het feit waarop die afhandeling rust.
Een concreet geval maakt het tastbaar. Stel, een leenprotocol accepteert een cryptomunt als onderpand en eist dat de lening nooit meer dan een vast deel van die waarde mag zijn. Een prijsfeed-oracle ververst de koers van dat onderpand. Zakt de koers en raakt de grens overschreden, dan triggert het contract automatisch een verkoop van het onderpand. Geeft de oracle een verkeerde, te lage koers door, dan kan een gezonde positie onterecht worden geliquideerd.
Het oracle-probleem en manipulatie
Het oracle-probleem is de kern van de discussie. Een blockchain kan transacties vertrouwd en zonder tussenpersoon vastleggen, maar dat vertrouwen reikt niet verder dan de keten zelf. Op het moment dat een contract data van buiten nodig heeft, komt het vertrouwen weer bij een externe partij te liggen. De keten is dan zo betrouwbaar als de zwakste oracle.
Manipulatie is een reëel gevaar. Een aanvaller die de prijs op een dunne markt kort kan opdrijven of indrukken, kan een oracle een vertekende waarde laten doorgeven en zo een contract uitbuiten. Gedecentraliseerde oracles, meerdere bronnen en tijdgemiddelde koersen zijn de gangbare manieren om dat moeilijker te maken, zonder het risico ooit helemaal weg te nemen.
Risico's van oracles voor je belegging
Beleg je in een crypto-token of DeFi-protocol, dan erf je het oracle-risico van dat protocol mee. Een storing, een vertraagde feed of een gemanipuleerde koers kan tot onterechte liquidaties of verkeerde uitbetalingen leiden, ook als jouw eigen positie gezond is. De vraag hoeveel en welke oracles een protocol gebruikt, zegt iets over hoe kwetsbaar het is voor die fout.
Crypto-activa vallen in de EU onder de MiCA-verordening, met de AFM en DNB als toezichthouders in Nederland en de FSMA in België; de FSMA verplicht bovendien een risicowaarschuwing bij crypto-reclame. Deze uitleg is educatief en bedoeld om het begrip te verhelderen — het is geen beleggingsadvies (AFM/MAR).
Veelgestelde vragen over oracles
Omdat een contract alleen data kent die al op de blockchain staat. Een koers, een weerbericht of een uitslag leeft buiten de keten, en de oracle is de enige manier om die binnen te halen.
Nee. De blockchain bewaart en verwerkt transacties; de oracle is een aparte dienst die externe informatie aanlevert. Een fout in de oracle verandert niets aan de keten, maar wél aan wat het contract ermee doet.
Dat is de spanning dat een blockchain vertrouwen zonder tussenpersoon biedt, maar voor externe data alsnog op een externe partij moet leunen. Het vertrouwen verschuift daarmee naar de oracle.
Nee, alleen lastiger. Door meerdere onafhankelijke bronnen te combineren weegt één foute waarde minder zwaar, maar volledig uitsluiten van manipulatie doet ook die opzet niet.
Kennischeck
Test je kennis
Beantwoord 5 korte vragen om deze les af te ronden.
Je hebt minstens 4 goede antwoorden nodig.
Bronnen
- www.afm.nl/nl-nl/consumenten — **AFM — consumenteninformatie over beleggen**