Blockchain oracle-i su entiteti koji povezuju blockchainove sa eksternim sistemima, omogućavajući pametnim ugovorima da se izvršavaju u zavisnosti od ulaza i izlaza iz stvarnog sveta.
Oracle-i daju Web 3.0 ekosistemu metod za povezivanje sa postojećim izvorima podataka, legacy sistemima i sofisticiranim računanjima. DON-ovi omogućavaju implementaciju hibridnih pametnih ugovora, u kojima su on-chain kod i off-chain infrastruktura spregnuti radi pružanja složenih decentralizovanih aplikacija (dApp-ova) koje reaguju na događaje iz stvarnog sveta i komuniciraju sa tradicionalnim sistemima.
Recimo da Lucy i Mark žele da se kladе na ishod sportskog događaja. Ukupnih $60 drži se u eskrouму putem pametnog ugovora, pri čemu Lucy kladi $30 na tim A, a Mark $30 na tim B. Kako pametni ugovor zna da li da da novac Lucy ili Marku nakon što utakmica završi? Objašnjenje je da zahteva oracle metod za dobijanje preciznih rezultata utakmice off-chain i njihovo bezbedno slanje na blockchain.
Blockchain oracle dilema ističe ključni nedostatak pametnih ugovora: oni nisu u stanju da komuniciraju sa podacima i sistemima izvan blockchain konteksta. Eksterni resursi se nazivaju "off-chain", dok se podaci trenutno zabeleženi na blockchainu nazivaju "on-chain". Blockchainovi postižu svoje najkorisnije kvalitete time što su namerno odvojeni od eksternih sistema, kao što su visoki konsenzus o autentičnosti korisničkih transakcija, izbegavanje napada dvostruke potrošnje i ublažavanje zastoja mreže. Da bi se bezbedno komuniciralo sa off-chain uslugama sa blockchaina, mora biti instaliran dodatni deo infrastrukture poznat kao oracle.
Budući da velika većina slučajeva upotrebe pametnih ugovora, kao što je DeFi, zahteva znanje o podacima i događajima iz stvarnog sveta koji se odvijaju off-chain, rešavanje oracle problema je od kritičnog značaja. Kao rezultat toga, oracle-i proširuju vrste digitalnih sporazuma koje blockchainovi mogu omogućiti pružanjem univerzalnog pristupa off-chain resursima uz održavanje blockchain bezbednosti. Određivanje cena sredstava u bankarstvu, vremenski podaci u osiguranju, nepredvidivost u gamingu, IoT senzori u lancu snabdevanja, verifikacija identiteta u vladama i mnogi drugi sektori imaju koristi od integracije oracle-a sa pametnim ugovorima.
Budući da podaci koje oracle-i daju blockchainovima direktno utiču na ishode pametnih ugovora, od suštinskog je značaja da oracle mehanizam bude validan ako sporazum treba da se izvrši kao što je planirano.
Jedinstven punkt otkaza se uvodi blockchain oracle sistemima koji koriste centralizovani entitet za prenošenje podataka pametnom ugovoru, negirajući fundamentalni cilj decentralizovane blockchain aplikacije. Ako jedan oracle prestane da radi, pametni ugovor ili neće imati pristup podacima koji su mu potrebni za funkcionisanje, ili će funkcionisati pogrešno zbog zastarelih podataka.
Što je gore, ako je jedan oracle kompromitovan, podaci dati on-chain mogu biti značajno netačni, uzrokujući da pametni ugovori izvršavaju pogrešno. Ovo je poznato kao problem "smeće unutra, smeće napolje", u kome pogrešni ulazi rezultiraju lošim izlazima. Pored toga, budući da su blockchain transakcije automatizovane i neopozive, odluka pametnog ugovora zasnovana na netačnim podacima ne može biti poništena, što implicira da korisnička sredstva mogu biti izgubljena zauvek. Kao rezultat toga, aplikacije pametnih ugovora ne mogu koristiti centralizovane oracle-e.