Orakler kommer til unnsetning

Orakler kommer til unnsetning

Blockchain-orakler løser problemet med å levere informasjon fra omverdenen til blokkjeden. Men det er viktig for oss å vite hvilke vi kan stole på.

В artikkel om lanseringen av katalogen Bølger orakler vi skrev om betydningen av orakler for blockchain.

Desentraliserte applikasjoner har ikke tilgang til data utenfor blokkjeden. Derfor lages det små programmer – orakler – som får tilgang til nødvendige data fra omverdenen og registrerer dem på blokkjeden.

Basert på typen datakilde kan orakler deles inn i tre kategorier: programvare, maskinvare og menneskelig.

Programvare-orakler motta og behandle data fra Internett - som lufttemperatur, råvarepriser, tog- og flyforsinkelser. Informasjon kommer fra nettbaserte kilder som APIer, og oraklet trekker den ut og plasserer den på blokkjeden. Les om hvordan du lager et enkelt programvare-orakel her.

Maskinvare-orakler spor objekter i den virkelige verden ved hjelp av enheter og sensorer. For eksempel, et videokamera kalibrert til å krysse en linje registrerer biler som kjører inn i et bestemt område. Oraklet registrerer det faktum å krysse en linje i blokkjeden, og basert på disse dataene kan det desentraliserte applikasjonsskriptet for eksempel starte utstedelse av en bot og debitering av tokens fra bileierens konto.

Menneskelige orakler bruke data som er lagt inn av mennesker. De regnes som de mest progressive på grunn av deres uavhengige syn på utfallet av arrangementet.

Vi har nylig levert et verktøy som lar orakeldata skrives til blokkjeden i henhold til en gitt spesifikasjon. Det fungerer ekstremt enkelt: du trenger bare å registrere deg orakelkortved å fylle ut spesifikasjonen. Datatransaksjoner kan deretter publiseres i henhold til denne spesifikasjonen gjennom Waves Oracles-grensesnittet. Les mer om verktøyet på vår dokumentasjon.

Orakler kommer til unnsetning

Slike standardiserte verktøy og grensesnitt gjør livet enklere for både utviklere og brukere av blokkjedetjenester. Verktøyet vårt er spesielt nyttig for menneskelige orakler og kan for eksempel brukes til å registrere sertifikater eller opphavsrettigheter for alle objekter.

Men når du bruker orakler, oppstår spørsmålet om tillit til informasjonen mottatt fra dem. Er kilden pålitelig? Vil dataene bli mottatt i tide? I tillegg er det en risiko for at oraklet vil lure brukere ved bevisst å gi uriktige opplysninger til egen fordel.

Som et eksempel kan du vurdere et orakel som gir informasjon om sportsbegivenheter for en desentralisert spillebørs.

Arrangementet er hovedkampen i UFC 242-turneringen, Khabib Nurmagomedov vs. Dustin Poirier. Ifølge bookmakere er Nurmagomedov kampens klare favoritt. Du kan satse på hans seier med odds på 1,24, som tilsvarer en sannsynlighet på 76%. Oddsen for Poiriers seier var 4,26 (22 %), og oddsen for uavgjort ble estimert av bookmakere til 51,0 (2 %).

Orakler kommer til unnsetning

Skriptet godtar brukerspill på alle tre mulige utfall til det mottar informasjon fra oraklet om det faktiske resultatet av kampen. Dette er det eneste kriteriet for fordeling av gevinster.

Det er nå kjent at Nurmagomedov vant. La oss imidlertid forestille oss at den skruppelløse eieren av oraklet, som planla bedraget på forhånd, satset på utfallet med de gunstigste oddsene - uavgjort. Når innsatsbanken har nådd et stort volum, starter eieren av oraklet å registrere falsk informasjon i blokkjeden om det antatte trekningsresultatet av kampen. Det desentraliserte utvekslingsskriptet har ikke muligheten til å dobbeltsjekke nøyaktigheten til de mottatte dataene og distribuerer kun gevinster i samsvar med disse dataene.

Hvis den potensielle fortjenesten fra denne typen bedrag er høyere enn den anslåtte inntekten til et ærlig orakel, og risikoen for å gå til retten er lav, øker sannsynligheten for uærlige handlinger fra eieren av orakelet betydelig.

En mulig løsning på problemet er å be om data fra flere orakler og bringe de resulterende verdiene til enighet. Det finnes flere typer konsensus:

  • alle orakler ga samme informasjon
  • de fleste orakler ga samme informasjon (2 av 3, 3 av 4 osv.)
  • bringe orakeldata til gjennomsnittsverdien (alternativer er mulige der maksimums- og minimumsverdiene først forkastes)
  • alle orakler ga enhetlig informasjon med en forhåndsavtalt toleranse (for eksempel kan økonomiske sitater fra forskjellige kilder avvike med 0,00001, og å få en eksakt match er en umulig oppgave)
  • velg bare unike verdier fra de mottatte dataene

La oss gå tilbake til vår desentraliserte spillebørs. Når du bruker en "3 av 4"-konsensus, vil et orakel som rapporterer uavgjort ikke kunne påvirke utførelsen av skriptet, forutsatt at de tre andre oraklene ga pålitelig informasjon.
Men en useriøs bruker kan eie tre av de fire oraklene, og da vil han kunne gi et avgjørende flertall.

Når du kjemper for integriteten til orakler, kan du introdusere en vurdering for dem eller et bøtesystem for upålitelige data. Du kan også ta "gulrot"-ruten og tilby en belønning for autentisitet. Men ingen tiltak vil helt unngå for eksempel ratinginflasjon eller et urettferdig flertall.

Så er det verdt å finne opp komplekse tjenester, eller vil det være nok å ha et konsensusverktøy som lar deg, som på en supermarkedshylle, velge for eksempel fem orakler som gir de nødvendige dataene, angi typen konsensus og få resultatet?

For eksempel trenger en desentralisert applikasjon temperaturdata i grader Celsius. I orakelkatalogen finner vi fire orakler som gir slike data, setter konsensustypen til «gjennomsnittlig» og sender en forespørsel.

Anta at oraklene ga følgende verdier: 18, 17, 19 og 21 grader. En forskjell på tre grader kan være ganske kritisk for utførelsen av manuset. Tjenesten behandler resultatet og får en gjennomsnittlig temperaturverdi på 18.75 grader. Det desentraliserte applikasjonsskriptet vil motta dette nummeret og jobbe med det.

Orakler kommer til unnsetning

Til syvende og sist ligger beslutningen hos forbrukeren: om man skal stole på ett orakel og bruke dets data, eller bygge en konsensus av flere orakler valgt etter eget skjønn.

Dataorakler er uansett et ganske nytt felt. Det er på det stadiet hvor brukerne selv kan bestemme i hvilken retning det skal utvikle seg. Derfor ønsker vi å høre din mening. Er verktøyet ovenfor nødvendig for orakler? Hvordan ser du på fremtiden til dataorakler generelt? Del din mening i kommentarene og i vår offisielle gruppe i Telegram.

Kilde: www.habr.com

Legg til en kommentar