Plokiahela oraaklite tutvustus
Avaleht
Artiklid
Plokiahela oraaklite tutvustus

Plokiahela oraaklite tutvustus

Keskmine
Avaldatud Jan 22, 2020Värskendatud Nov 28, 2023
7m

Panus kogukonda – autor: Vallery Mou


Mis on plokiahela oraakel?

Plokiahela oraaklid on kolmanda osapoole teenused, mis pakuvad nutilepinguid välise teabega. Need toimivad sildadena plokiahelate ja välismaailma vahel.

Plokiahelad ja nutilepingud ei pääse ligi ahelavälistele andmetele (andmetele, mis asuvad väljaspool võrku). Paljude lepinguliste kokkulepete puhul on aga lepingu täitmiseks hädavajalik saada asjakohast teavet välismaailmast.

Siinkohal tulevad mängu plokiahela oraaklid, mis loovad ühenduse ahelaväliste ja ahelas olevate andmete vahel. Oraaklid on plokiahela ökosüsteemis väga olulised, sest nad laiendavad nutilepingute tegevusulatust. Ilma plokiahela oraakliteta oleks nutilepingute kasutamine väga piiratud, kuna neil oleks juurdepääs ainult oma võrgustiku siseselt saadud andmetele. 

Oluline on märkida, et plokiahela oraakel ei ole andmeallikas ise, vaid pigem kiht, mis teeb päringuid, kontrollib ja autendib väliseid andmeallikaid ning seejärel edastab selle teabe. Oraaklite poolt edastataviad andmeid on mitmel kujul – hinnateave, makse edukas sooritamine või anduri poolt mõõdetud temperatuur. 

Välismaailmast andmete saamiseks tuleb käivitada nutileping ja kulutada võrguressursse. Mõned oraaklid on ka võimelised mitte ainult edastama teavet nutilepingutele, vaid ka seda välistesse allikatesse tagasi saatma.

On olemas palju erinevaid oraaklite tüüpe – plokiahela oraakli toimimine sõltub täielikult sellest, milleks see on loodud. See artikkel käsitleb mõnda neist disainidest.


Plokiahela oraakli näide

Oletame, et Alice ja Bob veavad kihla, kes võidab USA presidendivalimised. Alice usub, et vabariiklaste kandidaat võidab, samas kui Bob usub, et võitjaks saab demokraat. Nad lepivad kokku kihlveo tingimustes ja lukustavad oma vahendid nutilepingusse, mis vabastab kõik vahendid võitjale vastavalt valimistulemustele.

Kuna nutileping ei saa suhelda väliste andmetega, peab see sõltuma oraaklist, kes talle vajalikku teavet – antud juhul presidendivalimiste tulemusi – edastab. Pärast valimiste lõppu küsib oraakel usaldusväärselt API-lt, et teada saada, milline kandidaat võitis, ja edastab selle teabe nutilepingule. Seejärel saadab leping raha Alice'ile või Bobile, sõltuvalt tulemusest.

Ilma andmeid edastava oraaklita ei oleks olnud võimalik seda kihlvedu lahendada nii, et ükski osalejatest ei saaks sellega mängida. 


Millised on erinevad plokiahela oraaklite tüübid?

Plokiahela oraakleid võib klassifitseerida sõltuvalt mitmest erinevast omadusest. 

  • Allikas – kas andmed pärinevad tarkvarast või riistvarast?

  • Teabe suund – kas see on sissetulev või väljaminev?

  • Usaldus – kas see on tsentraliseeritud või detsentraliseeritud?

Üks oraakel võib kuuluda mitmesse kategooriasse. Näiteks oraakel, mis hangib teavet ettevõtte veebisaidilt, on tsentraliseeritud sissetuleva tarkvara oraakel.


Tarkvara oraaklid

Tarkvara oraaklid suhtlevad veebipõhiste teabeallikatega ja edastavad selle plokiahelasse. See teave võib pärineda veebipõhistest andmebaasidest, serveritest, veebisaitidest – põhimõtteliselt igast veebi andmeallikast.

Asjaolu, et tarkvara oraaklid on ühendatud internetti, ei võimalda neil mitte ainult edastada teavet nutilepingutele, vaid ka edastada seda teavet reaalajas. See muudab need üheks kõige levinumaks plokiahela oraaklite tüübiks. 

Tarkvara oraaklite tavaliselt pakutav teave võib hõlmata vahetuskursse, digitaalsete varade hindu või reaalajas lennuteavet.


Riistvara oraaklid

Mõned nutilepingud peavad liidestuma reaalmaailmaga. Riistvara oraaklid on loodud selleks, et saada füüsilisest maailmast teavet ja teha see nutilepingutele kättesaadavaks. Sellist teavet võivad edastada elektroonilised andurid, vöötkoodiskannerid ja muud teabe lugemisseadmed.

Riistvara oraakel sisuliselt „tõlgib“ reaalse maailma sündmused digitaalseteks väärtusteks, mida nutilepingute abil saab mõista.

Selle näiteks võib olla andur, mis kontrollib, kas kaupa vedav veoauto on saabunud laadimisplatsile. Kui ta seda teeb, edastab ta teabe nutilepingule, mis saab seejärel selle põhjal otsuseid teha.

Kui soovid sarnase teema kohta rohkem teada saada, loe artiklit Plokiahela kasutusjuhtumid: tarneahel.


Sissetulevad ja väljaminevad oraaklid

Sissetulevad oraaklid edastavad teavet välistest allikatest nutilepingutele, samas kui väljaminevad oraaklid saadavad teavet nutilepingutest välismaailma. 

Üks näide sissetuleva oraakli kohta on see, mis ütleb nutilepingule, millist temperatuuri mõõdab andur. Väljapoole suunatud oraakli näitena võib vaadelda nutilukuga. Kui raha deponeeritakse aadressile, saadab nutileping selle teabe väljamineva oraakli kaudu mehhanismile, mis avab nutiluku.


Tsentraliseeritud vs detsentraliseeritud oraaklid

Tsentraliseeritud oraaklit kontrollib üksainus üksus ja see on ainus nutilepingu jaoks teabe pakkuja. Ainult ühe teabeallika kasutamine võib olla riskantne – lepingu tõhusus sõltub täielikult oraaklit kontrollivast üksusest. Samuti mõjutab mis tahes pahatahtlik sekkumine halva tegija poolt otseselt nutilepingut. Peamine probleem tsentraliseeritud oraaklite puhul on ainsa tõrkepunkti olemasolu, mis muudab lepingud vähem vastupidavaks haavatavuste ja rünnakute suhtes.

Detsentraliseeritud oraaklitel on mõned samad eesmärgid kui avalikel plokiahelatel – vastaspoole riski vältimine. Nad suurendavad nutilepingutele esitatud teabe usaldusväärsust, kuna ei tugine ühele tõeallikale. Nutileping küsib andmete kehtivuse ja täpsuse määramiseks mitme oraakli käest – seetõttu võib detsentraliseeritud oraakleid nimetada ka konsensuse oraakliteks.

Mõned plokiahelaprojektid pakuvad teistele plokiahelatele detsentraliseeritud oraakliteenuseid. Detsentraliseeritud oraaklid võivad olla kasulikud ka ennustusturgudel, kus teatava tulemuse kehtivust saab kontrollida sotsiaalse konsensuse abil.

Kuigi detsentraliseeritud oraaklite eesmärk on saavutada usaldusetust, on oluline märkida, et nii nagu usaldusetud plokiahelavõrgud, ei kõrvalda ka detsentraliseeritud oraaklid usaldust täielikult, vaid pigem jagavad seda paljude osalejate vahel.


Lepingupõhised oraaklid

Lepingupõhine oraakel on oraakel, mis on mõeldud kasutamiseks ühe nutilepingu jaoks. See tähendab, et kui soovitakse kasutada mitmeid nutilepinguid, tuleb välja töötada proportsionaalne arv lepingupõhiseid oraakleid.

Seda tüüpi oraaklit peetakse väga aeganõudvaks ja kulukaks üleval pidada. Ettevõtted, kes soovivad saada andmeid erinevatest allikatest, võivad leida, et selline lähenemisviis on väga ebapraktiline. Teisest küljest, kuna lepingupõhiseid oraakleid saab kujundada nullist konkreetse kasutusjuhtumi jaoks, on arendajatel suur paindlikkus nende kohandamisel konkreetsetele nõuetele.


Inimoraaklid

Mõnikord võivad oraaklitena tegutseda ka isikud, kellel on eriteadmised mõnes konkreetses valdkonnas. Nad saavad uurida ja kontrollida erinevatest allikatest saadud teabe autentsust ning tõlkida see teave nutilepingutesse. Kuna inimoraaklid saavad oma identiteeti krüptograafiaabil kontrollida, on võimalus, et pettur võltsib oma identiteeti ja esitab rikutud andmeid, suhteliselt väike.


Oraakli probleem

Kuna nutilepingud täidavad otsuseid oraaklite esitatud andmete põhjal, on nad terve plokiahela ökosüsteemi jaoks võtmetähtsusega. Peamine väljakutse oraaklite kavandamisel on see, et kui oraakel on ohustatud, on ohustatud ka sellele tuginev nutileping. Seda nimetatakse sageli oraakliprobleemiks. 

Kuna oraaklid ei ole osa peamisest plokiahela konsensusest, ei saa nad kahjuks osa turvamehhanismidest, mida võivad pakkuda avalikud plokiahelad. Usalduskonflikt kolmanda osapoole oraaklite ja nutilepingute usaldusetu täitmise vahel on endiselt enamasti lahendamata küsimus.

Ohuks võivad olla ka „man-in-the-middle“ rünnakud, mille puhul pahatahtlik tegutseja pääseb ligi oraaklite ja lepinguvahelisele andmevoole ning muudab või võltsib andmeid.  


Lõppmärkused

Usaldusväärne mehhanism, mis hõlbustab nutilepingute ja välismaailma vahelist suhtlust, on plokiahelate ülemaailmseks kasutuselevõtuks hädavajalik. Ilma plokiahela oraakliteta peaksid nutilepingud tuginema ainult oma võrgus juba olemasolevale teabele, mis piiraks märkimisväärselt nende võimalusi.

Detsentraliseeritud oraaklitel on potentsiaali võtta kasutusele kaitsemehhanismid, mis võivad kõrvaldada plokiahela ökosüsteemist palju süsteemseid riske. Plokiahela oraaklid on endiselt üks üliolulisi ehitusplokke, mida tuleb rakendada turvaliselt, usaldusväärselt ja usaldusetult, et plokiahela ökosüsteem saaks kasvada.