Robin Capital

Ethereum 2.0

Lohkoketjuteknologiasta ja kryptovaluutoista puhutaan usein harhaanjohtavasti synonyymeinä. Lohkoketjut ovat jaettuja, avoimia ja maailmanlaajuisia tietokantoja. Ne toimivat alustana seuraavan sukupolven Internet-sovelluksille ja niitä ylläpitävät maailmanlaajuiset online-yhteisöt. Kuten osake- ja optiopohjaisissa kannustinjärjestelmissä myös lohkoketjuissa on tarve luoda verkoston jäsenille taloudellinen kannustin ylläpitää tietokantaa rehellisesti. Tämän takia jokaisella avoimella lohkoketjulla tulee olla oma kryptovaluuttansa.

Kuka muistaa?

Internet koostuu protokollista ja niiden päälle rakennetuista sovelluksista. Protokolla on kommunikaatiostandardi tietokoneiden välillä ja sovellus on loppukäyttäjälle näkyvä käyttöliittymä. Olemassa olevat Internet-protokollat mahdollistavat ainoastaan informaation siirtämisen tietokoneiden välillä, mutta ne eivät kykene muistamaan aikaisemmin lähetettyjä viestejä.

Tämän seurauksena kolmas osapuoli (usein yritys) vastaa tiedon tallentamisesta omaan suljettuun tietokantaansa aina kun Internetissä pitää muistaa jotakin. Kyseessä voi olla pankki, joka pitää kirjaa kuinka paljon rahaa pankin asiakkaiden tileillä on, tai sosiaalisen median palvelu, joka tallentaa tietokantaansa käyttäjien välisen kanssakäymisen.

Lohkoketjut mahdollistavat tiedon tallentamisen avoimiin tietokantoihin ilman tarvetta kolmansille osapuolille. Ohjelmistokehittäjät voivat rakentaa sovelluksensa jaettujen, avointen ja maailmanlaajuisten tietokantojen päälle. Yksittäisen yrityksen sijaan lohkoketjuja ylläpitävät online-yhteisöt, joilla on taloudellinen kannustin ylläpitää lohkoketjun viestihistoriaa rehellisesti.

Merkittävimmät kehitykset informaatioteknologiassa ovat seurausta uusien ja uniikkien ominaisuuksien tuomisesta markkinoille. Ohjelmistokehittäjät hyödyntävät uusia ominaisuuksia rakentaakseen uudenlaisia sovelluksia, jotka mullistavat olemassa olevia toimialoja. Vastaavasta kehityskulusta on useita esimerkkejä historiassa: tietokoneet mahdollistivat tekstinkäsittely-, taulukkolaskenta- ja muut työpöytäsovellukset. Internet yhdisti tietokoneet maailmanlaajuiseksi kommunikaatioverkostoksi, josta syntyi sosiaalinen media, hakukonesovellukset, sähköposti jne. Älypuhelimet toivat tietokoneet taskuumme, ja kamera- ja GPS-ominaisuuksien myötä ne mahdollistivat Instagramin ja Uberin kaltaisten sovellusten läpilyönnin.

Ethereum on alusta uudenlaisille sovelluksille

Internet-sovellukset koostuvat kommunikaatiosääntöjen puitteissa lähetetyistä viesteistä ja sovelluksen muistiin tallennetusta viestihistoriasta. Ethereumin lohkoketjun voi mieltää maailmanlaajuiseksi virtuaalikoneeksi, joka korvaa kolmannet osapuolet tietojen käsittelijänä ja säilyttäjänä.

Koska Ethereum syrjäyttää yrityksen roolin Internet-sovellusten ylläpitäjänä, voidaan pankki- ja muunlaista yritystoimintaa harjoittaa vertaisverkossa. Vertaisverkon päälle on rakennettava kuluttajille suunnattuja käyttöliittymiä.

Perinteisiin yksittäisten yritysten tuottamiin palveluihin nähden lohkoketjujen päälle rakennetut protokollat tarjoavat ohjelmistokehittäjille työkalut uudenlaisten sovellusten rakentamiseen.

Ethereumin päälle rakennetaan useita rahoitus- ja finanssialan protokollia, joiden tarkoituksena on mahdollistaa kaikille avoin Internet-talous. Esimerkkeinä kyseisistä protokollista ovat:

  • MakerDAO. Vakuudelliset lainat.
  • Augur. Ennustemarkkinat.
  • **dYdX.**Osto- ja myyntioptiot.
  • UMA. Hinnanerosopimukset.

Rahoitus- ja finanssiprotokollien lisäksi ohjelmistokehittäjät ovat rakentaneet protokollia, jotka uudistavat ja avaavat markkinapaikkoja Internetin perusinfrastruktuurille mm. muistille, laskennalle, sisällönjakelulle ja verkkotunnuksille.

Ethereum alustana jatkaa kehitystään

Lohkoketjut ovat jaettuja, avoimia ja maailmanlaajuisia tietokantoja, jotka toimivat uudenlaisena alustana Internet-sovelluksille. Yksittäisten yritysten ylläpitämät tietokannat korvataan online-yhteisöjen ylläpitämillä tietokannoilla. Tietokannan nykytilan todentamiseksi jokaisen yhteisön jäsenen pitää pystyä itse prosessoimaan ja tallentamaan kaikki lohkoketjussa lähetetyt viestit. Tämä tekninen edellytys tekee lohkoketjujen skaalaamisen maailmanlajuiseen käyttöön haastavaksi.

Nykyään Ethereumin lohkoketju prosessoi päivittäin noin miljoona transaktiota. Viimeaikainen avointen finanssiprotokollien suosio on puskenut Ethereumin prosessointikyvyn äärirajoilleen.

Ethereum 2.0 on uusi versio Ethereumin lohkoketjusta, mikä pitää sisällään merkittäviä päivityksiä skaalautuvuushaasteiden ratkaisemiseksi. Vaadittavat päivitykset olivat tiedossa jo Ethereumin konseptivaiheessa vuonna 2013. Uuden version implementointi on ollut tutkimuksen kohteena viimeisen muutaman vuoden ajan.

Ethereumin päivitys 2.0-versioon toteutetaan kolmessa vaiheessa. Nykyisten arvioiden mukaan ensimmäinen vaihe toteutetaan tammikuussa 2020 ja muut vaiheet vuoden 2021-puoliväliin mennessä.

Vaihe 1: Proof-of-Stake

Päivityksen ensimmäisessä vaiheessa Ethereumin (ja myös Bitcoinin) nykyversion käyttämä Proof-of-Work konsensusmekanismi korvataan Proof-of-Stake konsensuksella. Käytännössä tämä tarkoittaa, että lohkoketjun tietoturva taataan sähkönkulutuksen sijaan Ethereumin oman ETH-valuutan avulla.

Lohkoketjun ylläpitämiseksi online-yhteisön jäsenten tulee päästä yhteisymmärrykseen (konsensukseen) tietokannan nykytilasta. Konsensusmekanismit nojaavat taloudellisiin kannustinjärjestelmiin. Lohkoketjun jäsenet kilpailevat oikeudesta päivittää yhteistä tietokantaa. Osallistuakseen kilpailuun jokaisen jäsenen tulee pystyä todistamaan sitoneensa tietyn määrän resursseja lohkoketjun hyväksi. Resurssien sitominen luo taloudellisen kannustimen päivittää tietokantaa rehellisesti. Rehellisestä päivittämisestä jäseniä palkitaan lohkoketjun oma kryptovaluutalla. Epärehellinen päivittäminen johtaa sidottujen resurssien menettämiseen.

Proof-of-Work konsensusmekanismissa sidottu resurssi on laskentateho. Proof-of-Stake mallissa kyseinen resurssi on lohkoketjun oma kryptovaluutta. Proof-of-Stake tarjoaa varmemmat taloudelliset kannustimet tietokannan rehelliseen päivittämiseen, koska epärehellistä tahoa pystytään rankaisemaan taloudellisesti helpommin kuin Proof-of-Work mallissa. Tämän lisäksi, Proof-of-Stake konsensus ei edellytä sähkönkulutusta ja poistaa louhintaan liittyvät suurtuotannon edut.

Vaihe 2: Sharding

Päivityksen toinen vaihe, Sharding, on Ethereumin ensisijainen vastaus skaalautuvuushaasteisiin. Sharding-termi viittaa tietokannan päivitystyön jakamista pienempiin osiin. Yksittäiseltä jäseneltä edellytetty resurssimäärä pienenee, koska jatkossa päivitystyö koskee vain tiettyä osaa lohkoketjusta. Osat varmistuvat omasta nykytilastaan, jonka jälkeen tieto nykytilasta päivitetään lohkoketjun globaaliin tietokantaan, joka koostuu kaikkien eri osien nykytilojen summasta.

Proof-of-Stake on edellytys Sharding-metodille, koska se mahdollistaa validaattoreiden satunnaisen määräämisen tiettyyn lohkoketjun osaan, kun taas Proof-of-Work järjestelmissä yksittäistä jäsentä ei voi pakottaa validoimaan vain tiettyä lohkoketjun osaa.

Sharding mahdollistaa rinnakkaisen prosessoinnin Ethereumin lohkoketjussa. Sen sijaan, että kaikki jäsenet päivittävät yhtä tietokantaa, jäsenet hajautetaan päivittämään 1024-rinnakkaista tietokantaa. Tämä mahdollistaa tehokkaan lineaarisen skaalauksen, jonka tuloksena Ethereumin prosessointikyky kasvaa n. 1000-kertaisesti.

Vaihe 3: eWASM

Päivityksen viimeisessä vaiheessa Ethereum 2.0:n virtuaalikoneen prosessori “käynnistetään” ja lohkoketju on valmiina käyttöön. Proof-of-Stake mahdollistaa konsensuksen lohkoketjun jäsenten välillä, Sharding puolestaan skaalautuvan tietokantastruktuurin. Kolmannessa vaiheessa Ethereumin nykyinen virtuaalikone EVM (Ethereum Virtual Machine) korvataan eWASM (Ethereum-flavored WebAssembly) virtuaalikoneella. eWASM on rakennettu noudattamaan WebAssembly-standardia, joka alunperin kehitettiin parantamaan web-sovellusten tehokkuutta.

eWASM mahdollistaa ohjelmistokehittäjille tuttujen C/C++/Rust/Go ohjelmointikielien käytön ja sitä kautta tehokkaampien ja luotettavampien sovellusten rakentamisen. Kyseisten ohjelmointikielien käyttöönotto mahdollistaa tuttujen ohjelmistokirjastojen hyödyntämisen Ethereumin ympäristössä, mikä helpottaa uusia ohjelmistokehittäjiä rakentamaan Ethereumin päälle.