Sērijas “Ethereum History” pirmajā daļā mēs runājām par tīkla pastāvēšanas sākuma gadiem, aprakstījām pirmo decentralizēto organizāciju – DAO – un tās sabrukumu, kas noveda pie ķēdes sadalīšanas un neatkarīgas organizācijas rašanās. Ethereum Classic blokķēde.

Ethereum vēsture (2. daļa)

Šodienas rakstā mēs atcerēsimies notikumus, kas ar tīklu notika pēc cietās dakšas, galvenajiem tīkla atjauninājumiem, dažām blokķēdes funkcijām un 2017. gada ICO uzplaukuma..

DDoS uzbrukuma pretestība

Strīdi, kas saistīti ar ķēdes sadalījumu un notikumiem ar DAO projektu, vēl nav atrisināti, kad 2016. gada 22. septembrī tīkls tika pakļauts DDoS uzbrukumam. Uzbrucēji tīklā spamoja ar tukšiem darījumiem, kas radīja problēmas, uzsākot darījumus un iekļaujot tos blokos. Ievainojamība tika atklāta “Go” protokola ieviešanā, un to izraisīja zemās gāzes izmaksas operācijas koda izpildei operāciju laikā. Uzbrucēju darījumi uzsāka ievades / izvades darbības vairāk nekā 50 tūkstošus reižu vienā blokā.

Šāda veida uzbrukumus sauc par “pakalpojumu atteikšanu”. Pēc liela skaita lētu operāciju veikšanas, bet ar augstām skaitļošanas prasībām klienta pusē, uzbrucēji varēja aizkavēt darījumus tīklā, palēninot virtuālo mašīnu Ethereum.

Lai palielinātu tīkla stabilitāti, 18. oktobrī tika veikta neplānota cietā dakša “Tangerine Whistle”. Svilpes mērķis bija palielināt dažu darbības kodu izpildes izmaksas līdz līmenim, kas maksimāli palielina iespējamā uzbrukuma izmaksas. Šīs izmaiņas padarīja uzbrukumus ekonomiski neizdevīgus, taču netraucēja tiem notikt.

Papildus ievainojamībai, kas saistīta ar darbības kodiem, uzbrucēji izmantoja citu, kas saistīts ar tukšu kontu pievienošanu.

Ethereum organizēšanas veids atšķiras no Bitcoin protokola. Mēs runājām par Bitcoin izmantoto modeli – UTXO – vienā no mūsu iepriekšējiem rakstiem. Ethereum tīkls izmanto “konta modeli”, kurā ir divu veidu konti: ārējie (pārvaldīti ar privātajām atslēgām) un līgumi (kontrolēti ar noteiktu kodu, kas norādīts attiecīgā līguma nosacījumos). Izmantojot ārējos kontus, darījumu var izveidot, izmantojot privāto atslēgu.

Kad tīkls uzbrūk, uzbrucēji veic tukšus kontus, atkārtoti pārskaitot nulli ETH. Tā kā kontos nebija ne viedā līguma koda, ne vērtības vai datu, ko nosūtīt, tie nebija noderīgi. Bet, tā kā darījumi tika veikti un rezultāts tika saglabāts blokķēdē, tie palielināja tā lielumu un papildus aizkavēja citus darījumus. Jauni uzbrukumi tika veikti no 8 miljoniem tukšu adrešu, un bloka ģenerēšanas laiks palielinājās par 1-2 sekundēm. 

22. novembrī izlaista vēl viena cietā dakša ar nosaukumu “Spurious Dragon”, kas sastāvēja no vairākiem atjauninājumiem, kas novērsa iepriekšējo uzbrukumu sekas, mainīja dažu darbības kodu izmaksas un no blokķēdes izņēma tukšos kontus..

ICO uzplaukums

2017. gads bija bezprecedenta kriptovalūtas satraukums, kas izraisīja jaunus ATH un pēc tam jauno dalībnieku vilšanos un visa kriptotirgus kritumu..

Sākot ar 2017. gada augusta beigām, Ethereum platforma mitināja aptuveni 6 tūkstošus žetonu, un tikai 50 no tiem varēja lepoties ar 1 miljonu ASV dolāru + ikdienas likviditāti.

2017. gadā ar ICO piesaistīto līdzekļu skaits bija 40 reizes lielāks un sasniedza $ 3.8B. Lielākais projekts 2016. gadā, kas savāca 16,5 miljonus USD, bija Waves, savukārt 2017. gadā Hdac projekts piesaistīja 258 miljonus USD.

Ethereum vēsture (2. daļa)

ICO pieauguma maksimums notika 2017. gada decembrī, pēc kura tendence sāka samazināties. 17. decembrī Bitcoin sasniedza 20 000 USD. Bitcoin cenas krituma laikā visā 2018. gadā daudzi projekti beidza pastāvēt sliktas līdzekļu pārvaldības vai attīstības un ideju trūkuma dēļ. Daži iesācēji turēja līdzekļus Ethereum, kas noveda pie to vērtības samazināšanās lāču tirgus laikā un Ethereum krituma no 1400 līdz 100 ASV dolāriem.

Ethereum vēsture (2. daļa)

2017. gads bija nozīmīgs pavērsiens Ethereum platformas un kriptovalūtu attīstībā kopumā. Jāatzīmē, ka papildus milzīgam skaitam krāpniecisku projektu, kas parādījās ICO uzplaukuma laikā, daudzi aizraujoši un novatoriski ar blokķēdi saistīti projekti piesaistīja ievērojamu līdzekļu daudzumu. Papildus tam parādījās nedaudz Ethereum konkurentu, piemēram, EOS, Cardano un Tron.

Metropolis atjauninājums: Bizantija

Ethereum vēsture (2. daļa)

Ethereum ceļvedī, kas tika publicēts 2015. gadā, tika uzskaitīti plāni pāriet uz Proof of Stake (PoS) algoritmu. Viens no globālajiem atjauninājumiem un trešais posms kalnrūpniecības likvidēšanā bija Metropolis atjauninājums, kas tika sadalīts divās daļās: Bizantija un Konstantinopole.

2017. gada 25. septembrī Bizantijas cietā dakša notika Ropsten testa tīklā, un 16. oktobrī – tā parādījās Ethereum galvenajā tīklā. Hardfork iekļāva deviņus uzlabošanas protokolus (EIP). Viena no būtiskajām ieviestajām izmaiņām bija “grūtības bumbas” atlikšana, kuru mēs aprakstīsim tālāk.

Tīkla pāreju uz PoS bija paredzēts veikt Serenity atjaunināšanas laikā, taču, tā kā tehnoloģija tajā laikā bija vāja un zema uzticēšanās, izstrādātāji nolēma procesu atlikt. Pārejas laikā ir domāts, ka paralēli pastāv divas ķēdes ar dažādiem algoritmiem, un PoW algoritms uzņems kalnračus, kuri, iespējams, atsakās veikt pāreju, atbalstot veco ķēdi. Paredzot to, izstrādātāji ir uzlikuši tā saukto grūtības bumbu – eksponenciālu ieguves grūtību mehānisma palielināšanās, lai stimulētu pāreju uz jauno algoritmu.

Mākslīgais kalnrūpniecības sarežģītības pieaugums sākās Frontier tīkla pirmās palaišanas laikā 2015. gadā. Bet, tā kā Serenity posms vēl bija tālu, grūtību maiņa bija jāatliek. Priekšlaicīga grūtības bumbas aktivizēšana notika 2017. gada jūnijā, un no maija līdz oktobrim ieguves grūtības palielinājās desmit reizes. Vidējais laiks jaunu bloku atrašanai ir dubultojies, no 15 līdz 30 sekundēm.

Ethereum vēsture (2. daļa)

Bizantijas cietā dakša atlika ieguves grūtību pieaugumu un samazināja atlīdzību no 5 līdz 3 ETH.

Papildus ražošanas palēnināšanās problēmas risināšanai tika pievienoti arī zk-SNARK. zk-SNARK ir kriptogrāfijas elementi, kurus izstrādājusi anonīmās ZCash kriptovalūtas komanda. Tie ļauj veikt privātus darījumus un nodrošina mijiedarbību starp Ethereum un Zcash blokiem. Ir paplašinātas arī Ethereum virtuālās mašīnas iespējas, optimizētas gāzes izmaksas, palielināts bloku izveides ātrums un veiktas izmaiņas viedo līgumu darbībā.

Metropoles atjauninājums: Konstantinopole

Sākotnēji Metropolis cieto dakšiņu bija paredzēts turēt vienā posmā, taču, ņemot vērā situāciju ar pieaugošajām grūtībām un dažām EIP, kas paredzētas, lai vienkāršotu nākamās protokola versijas, kas vēl nav gatavas, tā bija jāsadala divos posmos.

Metropolis otrais posms – Konstantinopoles cietā dakša – notika 2019. gada 28. februārī. Šis atjauninājums sastāvēja no 5 EIP un ietvēra šādas izmaiņas: tīkla mērogošanas uzlabojumi, bloku izveides ātruma palielināšana, risinājumi viedo līgumu darbības uzlabošanai un samazināt gāzes izmaksas, optimizācija un apstākļu radīšana Casper protokola aktivizēšanai, kuras mērķis ir pāreja uz hibrīdu PoW / PoS konsensa algoritmu, kā arī cits risinājums, lai aizkavētu kalnrūpniecības sarežģītību..

Bija vajadzīga vēl 12 mēnešus “grūtības bumbas” atlikšana, jo līdzīgs risinājums Bizantijas cietajā dakšā bija pietiekams tikai četriem mēnešiem, nevis plānotajiem 18 mēnešiem. Tīkla grūtības pārsniedza 3000TH, tiklīdz tas notika 2018. gada martā, sasniedzot maksimumu 3500TH augustā, kad jaunu bloku izveide ilga apmēram 14-15 sekundes. 

Ethereum vēsture (2. daļa)

2018. gada decembrī grūtības samazinājās līdz 2000TH, bet tas bija saistīts ar vairāku kalnraču slēgšanu un ETH cenu kritumu no $ 800 līdz $ 100, pēc tam grūtības atkal sāka pieaugt.

Konstantinopoles jauninājums samazināja tīkla grūtības līdz 2000TH, un emisijas apjoms samazinājās no 3 līdz 2 ETH uz vienību.

Vēl viena tīkla jaunināšana, saukta par Sanktpēterburgu, tika veikta vienlaikus ar Konstantinopoli. Tās mērķis bija noņemt vienu EIP no Ethereum testnet. Konstantinopoles atjauninājums, kas bija paredzēts, lai gaismu redzētu 2018. gada rudenī, tika nepārtraukti atlikts šī EIP ievainojamības dēļ.

Šo ievainojamību atklāja ChainSecurity viedo līgumu audita uzņēmums, un tas ļāva uzbrucējiem nozagt lietotāju līdzekļus. Šo ievainojamību sauc par “atkārtotu uzbrukumu”, un tā jau ir notikusi Ethereum vēsturē – uzbrukums DAO, par kuru mēs runājām šīs sērijas pirmajā daļā.

Nākamajā rakstā mēs runāsim par pēdējo lielāko tīkla atjauninājumu, pirms sākat pakāpenisku pāreju uz Ethereum 2.0, aprakstīsim šīs pārejas galvenos posmus un atgādināsim par neaizmirstamākajiem Ethereum notikumiem 2019. un 2020. gadā..