Oraakkeliongelma
Ymmärrä, miksi älysopimukset eivät voi käyttää ketjun ulkopuolista dataa suoraan ja millaisia haasteita tämä aiheuttaa DApp-sovellusten toiminnalle.
Oraakkeliongelma on ilmainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti CoddyKitissä. Tämä on oppitunti 1/3. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.
Mitä ketjun ulkopuolinen data on?
Tervetuloa! Web3:ssa DAppit tarvitsevat usein tietoja, joita ei ole tallennettu suoraan lohkoketjuun. Tätä kutsutaan ketjun ulkopuoliseksi dataksi.
Ajatelkaa esimerkiksi osakkeiden ajantasaisia hintoja, reaaliaikaisia säätietoja tai urheiluottelun lopputulosta. Tämä data on olemassa lohkoketjun verkon ulkopuolisessa ”todellisessa maailmassa”.
Lohkoketjut elävät kuplassa
Lohkoketjut on suunniteltu eristetyiksi ja itsenäisiksi ympäristöiksi. Tämä on ratkaisevan tärkeää niiden turvallisuuden ja luotettavuuden kannalta.
Jokaisen verkon solmun on oltava täysin samaa mieltä lohkoketjun täsmällisestä tilasta. Jos älysopimus voisi hakea ulkoisia tietoja suoraan, eri solmut saattaisivat saada erilaisia tuloksia, mikä rikkoisi konsensuksen.
Oraakkeliongelman määritelmä
Oraakkeliongelmalla tarkoitetaan haastetta, joka liittyy ulkoisen, ketjun ulkopuolisen datan tuomiseen lohkoketjuun turvallisesti ja luotettavasti.
Älysopimukset eivät suunnittelunsa vuoksi voi suoraan ”nähdä” tai ”hakea” tietoja internetistä. Ne toimivat deterministisessä, suljetussa järjestelmässä.
Älysopimukset eivät voi selata verkkoa
Miksi älysopimus ei voi vain tehdä API-kutsua tavallisen verkkosovelluksen tapaan?
- Deterministisyys: Kaikkien transaktioiden on tuotettava sama tulos kaikissa solmuissa. Ulkoinen API-kutsu saattaa palauttaa eri aikoina erilaisia tietoja.
- Turvallisuus: Ulkoisten lähteiden suora kutsuminen tuo mukanaan haavoittuvuuksia ja mahdollisia hyökkäysvektoreita.
- Konsensus: Miten kaikki solmut voisivat varmistaa, että ulkoinen data todella vastasi APIn palauttamaa tietoa?
DAppien rajoitukset ilman oraakkeleita
Monet tehokkaat DAppit tarvitsevat toimiakseen tietoja todellisesta maailmasta. Ilman tapaa saada näitä tietoja niiden hyödyllisyys on hyvin rajallinen.
Kuvitelkaa hajautetun rahoituksen (DeFi) lainausalusta, joka tarvitsee omaisuuserien ajantasaiset hinnat, tai vakuutus-DApp, joka perustuu todellisen maailman tapahtumiin, kuten säähän tai lentojen viivästymisiin.
Luottamuksen ongelma
Jos DApp luottaa yhteen lähteeseen ulkoisen datan toimittajana, kyseisestä lähteestä tulee keskitetty yksittäinen vikaantumispiste.
Tämä heikentää hajauttamisen perusperiaatetta. Datan toimittaja voi olla haitallinen, joutua hakkeroiduksi tai yksinkertaisesti siirtyä offline-tilaan, mikä vaarantaa koko DAppin.
Oraakkelit: datasilta
Oraakkelit ratkaisevat oraakkeliongelman. Oraakkeli on kolmannen osapuolen palvelu, joka etsii ja varmistaa tietoja todellisesta maailmasta ja lähettää ne sitten älysopimukselle.
Se toimii turvallisena siltana, jonka ansiosta älysopimukset voivat olla vuorovaikutuksessa ulkomaailman kanssa rikkomatta determinististä luonnettaan.
Datan luotettavuuden varmistaminen
Vaikka oraakkelit ratkaisevat ”saavutettavuusongelman”, ne tuovat mukanaan uuden haasteen: miten voimme luottaa itse oraakkeliin?
Oraakkelin toimittaman datan on oltava täsmällistä, muuttumatonta ja saatavilla. Jos oraakkeli toimittaa virheellistä dataa, älysopimus suoritetaan kyseisen virheellisen datan perusteella.
Tarve tosielämän esimerkille
Tarkastellaan yksinkertaista hajautettua vedonlyönti-DAppia:
- Käyttäjät lyövät vetoa jalkapallo-ottelun lopputuloksesta.
- Älysopimuksen on tiedettävä lopputulos.
- Se ei voi käyttää suoraan ESPN:ää tai muita urheilusivustoja.
- Oraakkeli tarvitaan toimittamaan lopputulos sopimukselle, jotta voitot voidaan maksaa.
Pikatarkistus: oraakkeliongelma
Mikä seuraavista on tärkein syy siihen, etteivät älysopimukset voi käyttää suoraan todellisen maailman tietoja perinteisen verkkosovelluksen tapaan?
Kertaus: oraakkeliongelma
Olette oppineet Web3-kehityksen keskeisestä oraakkeliongelmasta:
- Lohkoketjut ovat eristettyjä ja deterministisiä.
- Älysopimukset eivät voi käyttää suoraan ketjun ulkopuolista dataa.
- Monet DAppit tarvitsevat toimiakseen tietoja todellisesta maailmasta.
- Oraakkelit toimivat siltoina, mutta tuovat mukanaan uusia luottamukseen liittyviä haasteita.
Seuraavaksi tutustumme siihen, miten Chainlinkin kaltaiset hajautetut oraakkeliverkostot tarjoavat ratkaisuja tähän ongelmaan!
Opi Web3:n ja DApp-sovellusten kehityksen perusteet tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 29
- Oppitunnit
- 105
Usein kysytyt kysymykset
Onko oppitunti ”Oraakkeliongelma” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolun 3 oppituntia, myös oppitunnin “Oraakkeliongelma”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.
Mitä opin oppitunnilla ”Oraakkeliongelma”?
Ymmärrä, miksi älysopimukset eivät voi käyttää ketjun ulkopuolista dataa suoraan ja millaisia haasteita tämä aiheuttaa DApp-sovellusten toiminnalle. Harjoittelet Web3:n ja DApp-sovellusten kehityksen perusteet-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Web3:n ja DApp-sovellusten kehityksen perusteet-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/3.
Kuinka kauan ”Oraakkeliongelma”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunnilla?
Kyllä. Jokainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Oraakkeliongelma
- Chainlinkin perusteet
- Ketjun ulkopuolisen datan noutaminen