Ethereum-kulttuurin elvyttäminen? Mitä taikajuomia Monadilla on?

1. Kaatunut Ethereum-kylä

Olipa kerran Ethereum kylässä, jossa asui joukko vihreitä Pepe-sammakoita. Tämä oli aikoinaan yksi vilkkaimmista valtakunnista, jossa korkea hajautus ja vahva turvallisuus synnyttivät vauraan talouden.

Näiden periaatteiden mukaisesti kyläläiset järjestivät säännölliset vaalit, joissa he nimittivät johtajat, jotka valvoivat 12 sekunnin välein tapahtumia tallentavien lohkojen tuottamista. Tällä tavoin he hoitivat ahkerasti kylän kukoistavaa taloutta.

Nyt Ethereumin entinen loisto on alkanut hiipua, kun meemivirukset ovat levinneet ja kylän voima on heikentynyt. Katujen yllä häämöttävät varjot, ja vihreät Pepe-sammakot kävelevät raskaasti ja päämäärättömästi läpi aution, hämärästi valaistun kylän.

Jotkut vihreät Pepe-sammakot haluavat kuitenkin yhä palauttaa Ethereumin menetetyn loiston. He kannattavat ”L2 Reformia”, liikettä, jonka tarkoituksena on elvyttää kylä. Heidän ponnistelujensa ansiosta Ethereum alkaa taas kukoistaa ja saavuttaa taloudellisen elinvoimaisuuden, jota aiemmin pidettiin mahdottomana.

L2-uudistuksella on kuitenkin myös rajoituksensa. Läheiset kylät, kuten Solana ja Sui, vaikka ne ovatkin nuoria ja täynnä epävakautta, kehittyvät nopeasti ennennäkemättömien tieteellisten vallankumousten kautta. Niiden innovaatiot tekevät monimutkaisista rahaliikenteestä saumatonta, kun taas Ethereum kamppailee uudistuksista huolimatta edelleen. Näin ollen Pepe-sammakoiden keskuudessa liikkuu huhuja mahdollisuudesta siirtyä näihin naapurikyliin.

Sitten eräänä kohtalokkaana päivänä Ethereumin kylään ilmestyi violetti Pepe-velho.

2. Purppura-Pepe-velhon saapuminen

Purppuranpunaiseen kaapuun pukeutunut Pepe-velho katseli surullisena Ethereum-kylän menetettyä loistoa ja oli päättänyt perustaa uuden valtakunnan nimeltä Monad.

Eräänä päivänä hän ilmestyi vihreiden Pepe-sammakoiden eteen ja ilmoitti suuresta suunnitelmastaan luoda Monad-kylä. Hän kokosi vihreät Pepe-sammakot keskusaukiolle ja alkoi kuunnella niiden ajatuksia.

Green Pepe Frog 1 käytti puheenvuoron: ”Toivon, että elämä Monadissa on samanlaista kuin Ethereumissa. Vaikka Ethereumilta puuttuu Solanan tai Suin skaalautuvuus, en ole koskaan harkinnut lähtöä, koska niiden kulttuurit eroavat suuresti meidän kulttuuristamme.”

Green Pepe Frog 2 lisäsi: ”Saman elämäntavan ja kulttuurin säilyttäminen on tärkeää, mutta toivon myös yhtä tehokasta järjestelmää kuin muissa kylissä. Vaikka Ethereum on turvallinen, se ei riitä yrityksille, jotka tavoittelevat nopeutta ja ketteryyttä.”

Velho muisti heidän toiveensa ja lupasi luoda Monadin, jossa olisi Ethereumin kulttuuriset ominaisuudet ja Solanan ja Suin skaalautuvuus. Hän pohti voimakkaita loitsuja, joita tarvittiin tämän unelman toteuttamiseen – Ethereumin perinteiden kanssa yhteensopiva kylä, joka pystyi vastaamaan uuden aikakauden tehokkuuden edistymiseen.

Sitten hän kertoi näkemyksensä innokkaille Pepe-sammakoille ja herätti niiden toivon todellisesta kodista, joka voisi tarjota molempien maailmojen parhaat puolet.

3. Salainen loitsu 1: Viivästetty toteutus (Delayed Execution)

Yksi Ethereum-kylän skaalautuvuuden rajoituksista on kunkin transaktion käsittely konsensusprosessin aikana, joka on välttämätön vaihe jokaisen uuden lohkon luomisessa.

Ethereumissa lohkoa ehdottavan johtajan on laskettava kaikki lohkoon kuuluvat transaktiot etukäteen varmistaakseen jokaisen transaktion oikeellisuuden. Lisäksi lohkon vastaanottavien validoivien solmujen on myös laskettava kaikki transaktiot varmistaakseen lohkon laillisuuden ja äänestyksen.

Koska konsensusprosessi edellyttää laskentaa ja viestintää kyläläisten välillä, tapahtumien käsittelyyn varattu aika on hyvin rajallinen, mikä johtaa lopulta rajoitettuun skaalautuvuuteen.

Tämän ongelman ratkaisemiseksi purppurainen Pepe-velho otti käyttöön uuden loitsun nimeltä ”Viivästetty teloitus”. Tämä loitsu erottaa ”konsensusprosessin” (kyläläisten transaktioiden tilaaminen) ”toteutusprosessista” (transaktioiden tulosten laskeminen).

Yksinkertaisesti sanottuna sen sijaan, että konsensus ja toteutus saavutettaisiin samanaikaisesti jokaisessa lohkossa, konsensus saavutetaan lohkossa N, kun taas toteutus tapahtuu lohkossa N-1 (jossa transaktioiden järjestys on jo vahvistettu).

Kun koko lohkon suoritusaika sallitaan, tämä menetelmä lisää merkittävästi samassa ajassa käsiteltävien tapahtumien määrää.

Edistynyt loitsu: Merkle Root

Ethereumissa solmut laskevat ennen konsensuksen saavuttamista varmistaakseen lohkon pätevyyden. Monadin viivästetyssä suoritusjärjestelmässä konsensus ja suoritus on kuitenkin erotettu toisistaan. Tämä avaa pahantahtoisille solmuille mahdollisuuden jättää huomiotta aiemmin saavutetut konsensustapahtumat tai muuttaa laskentatiloja mielivaltaisesti.

Tämän estämiseksi Monad sulauttaa Merkle-juuren (lohkon N-10 laskettu tulos) lohkon N ehdotukseen. Jos yli kaksi kolmasosaa solmuista pääsee yksimielisyyteen lohkosta N, se merkitsee yksimielisyyttä lohkon N-10 laskennasta.

Jos jonkin solmun laskentatulos lohkossa N-10 ei vastaa lohkossa N olevaa Merkle-juurta, kyseinen solmu poistetaan konsensuksesta alkaen lohkosta N. Merkle-juuren 10 lohkon viiveellä varmistetaan, että laskentavirheet havaitaan ajoissa.

On syytä huomata, että Monadin estoaika on 1 sekunti, mutta se ei tarkoita, että Monadin lopullisuus vaatisi 10 sekuntia. Monadin MonadBFT-järjestelmän ansiosta voidaan saavuttaa yhden lohkon finaalisuus, jolloin finaalisuus saadaan aikaan 1 sekunnissa.

4. Salainen loitsu 2: Transaktioiden hässianalyysi

Nokkela violetti Pepe-velho mietti, miten kylän johtajat voisivat nopeasti lähettää lohkoehdotuksia muille solmuille.

Ethereumissa tyypillinen lähestymistapa on paketoida koko lohkoehdotus (mukaan lukien kaikki transaktiot) ja lähettää se verkon kautta.

Pepe-velho kuitenkin tajusi, että jos Monad ottaisi tämän menetelmän käyttöön, lukuisia transaktioita sisältävien lohkoehdotusten lähettäminen olisi pelottava ja työläs tehtävä.

Tämän ongelman ratkaisemiseksi Purple Pepe -velho otti käyttöön ”transaktiohashien” käsitteen. Koska kaikki kyläläisten lähettämät transaktiot olivat jo levinneet verkon kautta, jokainen solmu säilytti Monad-kylän transaktioiden tietueita omassa muistivarastossaan.

Tämä merkitsi sitä, että johtajan ei enää tarvinnut lähettää täydellistä luetteloa transaktioista jokaisessa lohkoehdotuksessa. Sen sijaan johtaja saattoi yksinkertaisesti viitata transaktioihin lähettämällä niiden hash-arvot.

Monadin lohkoehdotukset sisältäisivät siis vain kunkin transaktion hash-arvot. Saatuaan nämä hash-arvot muut solmut voisivat helposti verrata niitä omiin transaktiotietoihinsa.

5. Salainen loitsu 3: MonadBFT

Monad-kylässä kunkin lohkon sisällä tapahtuvien transaktioiden järjestystä ja lohkojen luomiseen liittyvää konsensusta ohjaa MonadBFT, joka on HotStuffiin perustuva tehokas konsensusmekanismi. Tämä vaiheittainen BFT-algoritmi (Byzantine Fault Tolerance) mahdollistaa konsensuksen saavuttamisen kahdessa vaiheessa.

Lohkon johtajan rooli valitaan satunnaisesti kunkin osallistujan panososuuden perusteella. Monadissa lohkojen rakentamisen tehokkuus on korkeampi kuin Ethereum villageissa, koska jokainen lohkoehdotus N lähetetään yhdessä edellisen lohkon N-1 Quorum Certificate (QC) -sertifikaatin kanssa, mikä osoittaa, että yli kaksi kolmasosaa solmuista on vahvistanut kyseisen lohkon.

Prosessi etenee seuraavasti:

  1. Johtaja N lähettää lohkoa N koskevan ehdotuksen ja lohkon N-1 QC:n.
  2. Valvojat tarkistavat lohkon N ja lähettävät äänensä johtajalle N+1.
  3. Johtaja N+1 jakaa lohkoa N+1 koskevan ehdotuksen ja lohkon N QC:n.

Vaikka QC N:n avulla validoijat eivät kuitenkaan voi välittömästi vahvistaa lohkoa N, koska lohkoketjun luonne ei takaa, että kaikki osallistujat ovat verkossa ja synkronoitu.

Jotta lohko N olisi täysin suojattu, validoijien on lähetettävä ”kyllä”-äänensä lohkolle N+1, joka sisältää QC N:n, johtajalle N+2. Kun johtaja N+2 tuottaa QC N+1:n, se vahvistaa kierroksen N+1 onnistuneen loppuunsaattamisen ja viimeistelee näin lohkon N.

Näin violetti Pepe-velho johdattaa taitavalla taikuudella Monadin kylän uuteen aikakauteen.

6. Salainen loitsu 4: Rinnakkaistoteutus

Monadissa lila Pepe-velho suunnitteli suuren määrän kylätransaktioita käsittelemään uuden loitsun, joka käsittelee transaktioita rinnakkain eikä sarjamaisesti kuten Ethereum-kylässä.

Viivästetyssä suorituksessa suoritus alkaa vasta, kun lohkon transaktiojärjestyksestä on päästy yhteisymmärrykseen. Monad village koostuu monista taitavista suorittajista, joista kukin vastaa transaktioiden käsittelystä, laskee itsenäisesti niiden syötteet ja tuotokset ja luo odotuslistan.

Nämä syötteet ja tuotokset eivät muuta välittömästi kylän tilaa, vaan ne odottavat keskeytetyssä maagisessa tilassa valmiina toimitettavaksi konsensuksen määräämässä järjestyksessä. Kun tuotokset toimitetaan, ne yhdistetään nykyiseen tilaan, jolloin syntyy saumaton ja järjestyksessä oleva maaginen kudos.

Asiaan liittyy kuitenkin eräs käänne. Rinnakkaiskäsittely tuo mukanaan transaktiokonfliktien mahdollisuuden, jotka ovat harvinaisia järjestäytyneessä Ethereum-kylässä mutta muodostavat uuden haasteen Monadissa.

Jos esimerkiksi yksi transaktio (transaktio b) osoittaa, että kyläläinen A lahjoittaa 1 ETH:n kyläläiselle B, kun taas toinen transaktio (transaktio c) osoittaa B:n käyttävän kyseisen ETH:n kylän majatalossa, heidän järjestyksensä muuttuu kriittiseksi. Jos transaktio c yritetään suorittaa ennen transaktiota b, se epäonnistuu. Tällaisessa tapauksessa ristiriitaiset transaktiot järjestetään uudelleen, ja transaktio c odottaa, että transaktio b on valmis, ennen kuin se suoritetaan.

Monadissa rinnakkaisen suorituksen ydin on siis järjestyksessä: tulokset lasketaan rinnakkain, mutta tilapäivitykset yhdistetään täsmälleen vaaditussa järjestyksessä.

7. Salainen loitsu 5: MonadDb

Purppura-Pepen velhon luovat ideat eivät jääneet tähän. Hän loi MonadDb:n, Monad-kylän oman tietokannan, joka on suunniteltu erityisesti lohkoketjun tilan tallentamiseen. Ethereum luottaa monimutkaiseen Merkle Patricia Trie -tietokantaan, joka tunnetaan kestävyydestään mutta myös tehottomuudestaan ulkoisten asiakkaiden kannalta.

MonadDb suunniteltiin kylän rinnakkaista suorittamista silmällä pitäen, ja se tukee useita lukuja ja kirjoituksia samanaikaisesti suurella tarkkuudella. Toisin kuin perinteiset tietokannat, jotka vaativat jokaisen tehtävän suorittamista loppuun ennen seuraavaan siirtymistä, MonadDb käyttää asynkronista I/O-taikaa, jolloin tehtävät voivat limittyä saumattomasti toisiinsa ja tasoittaa tietä todelliselle rinnakkaiselle transaktiokäsittelylle.

8. Tule käymään Monadin kylässä!

Purppuranpunainen Pepe-velho on luonut Monadin kylän erilaisten ihmeellisten loitsujen ja monimutkaisen taikuuden avulla. Täällä Ethereumin luotettavat tilit, kryptografia, transaktiomuodot, kielet ja lompakot sulautuvat vaivattomasti yhteen Solanan ja Suin skaalautuvuuden kanssa. Nyt Monad kukoistaa ja pyrkii saavuttamaan unelmansa 10 000 transaktion käsittelystä sekunnissa.

Syntyykö viisaudesta ja toivosta, pystyykö Monad village pelastamaan meemivirusten vaivaaman maailman ja auttamaan Ethereumia saamaan takaisin loistonsa? Vain aika näyttää.