„Blockchain“ programuotojai supranta, kaip svarbu patikrinti savo kodavimą, prieš atlikdami nuolatinius pakeitimus savo platformoje. Deja, niekas nėra tobulas, o kriptografavimo programavimo klaidos gali ir pasitaikyti. Kai įvyksta „blockchain“ kodavimo klaidų, tai gali paveikti didelę kriptografinės bendruomenės dalį.
Viena maža kriptografavimo programavimo klaida gali prarasti milijonus lėšų. Kai ruošiatės mokytis, jūsų kodo klaida gali prilygti „blockchain“ nelaimei. Šios toli siekiančios pasekmės yra dar viena priežastis, kodėl jūsų projektas tampa atviro kodo. Atvirojo kodo projektai gauna papildomą saugumą, nes daugybė kūrėjų tikrina kodą, ar nėra klaidų. Be to, net atvirojo kodo projektuose yra programavimo klaidų. Skirkime šiek tiek laiko išnagrinėti penkias didžiausias istorijoje kripto programavimo klaidas.
Contents
„Ethereum“ ir „Parity“ piniginės fiasko
Įsivaizduokite, kad programuojate protingą sutartį ir staiga netyčia įgavote tūkstančių žmonių kelių parašų piniginių kontrolę. Ką tu darytum? Eiti apsipirkti „Lambo“? Ar galėtum eiti dideliu keliu kaip 199 ir pabandykite anuliuoti kodavimą, kad grąžintumėte pinigines jų teisėtiems savininkams?
Jūs girdėjote teisingai; „devops199“ ištrynė kodą, kuris jam netyčia suteikė prieigą prie tūkstančių „Parity“ kelių parašų piniginių. Deja, panaikinus kodą, neribotam laikui įšaldytos ir visos piniginės tose piniginėse. Iš viso žlugus buvo prarasta 300 milijonų dolerių vertės „Ethereum“.
„Parity“ piniginė per pagrindinį puslapį
Ironiška, bet ši kriptografavimo programavimo katastrofą sukėlusi klaida nebuvo tas pats kodas, dėl kurio įsilaužėlis anksčiau mėnesį pavogė 32 milijonus dolerių. Hakeris pasinaudojo kelių parašų piniginės protokolo trūkumu. „Parity“ kūrėjų komanda stengėsi ištaisyti defektą, kad įsilaužėlis daugiau nevogtų. Pažvelgus, įsilaužimo padariniai nebuvo prastesni nei amžinai užšaldyti 300 milijonų dolerių vertės Ethereum.
Devyniasdešimt du milijardai Bitcoin
Bitcoin kūrėjas Jeffas Garzikas pastebėjo kažką keisto, peržiūrėdamas Bitcoin kodavimą 2010 m. rugpjūčio 8 d. Jis ėmėsi bitcointalk įspėti kitus kūrėjus apie rimtą problemą, su kuria jis susidūrė. Ką Garzikas pastebėjo, buvo tai, kad vieno iš blokų vertė buvo 92 milijardai bitkoinų. Atsižvelgiant į tai, kad kada nors sukurta tik 21 000 000 bitkoinų, tai yra rimta kodavimo klaida.
Klaida buvo tokia reikšminga, kad kūrėjai nusprendė paspausti atstatymo mygtuką. Jie tai padarė atsukdami blokų grandinę į bloką prieš tą, kuriame buvo 92 milijardai bitkoinų. Šis pakartotinis paleidimas reiškė, kad visi sandoriai, atlikti po įsilaužimo, bet prieš pataisymą, buvo anuliuoti.
Vėliau paaiškėjo, kad hakeris rado klaidą, kuri jiems leido išnaudoti skaičiaus perpildymo klaida. Šio tipo klaida įvyksta, kai sistema iš naujo paleidžia savo skaičiavimo protokolus, užuot tęsusi chronologiškai. Kai taip atsitinka, tai gali turėti įvairiausių neigiamų padarinių tinklui. Šiuo atveju tai sukėlė 92 milijardus bitkoinų. Kalbėti viešai, Wladimir Van Der Laan, Pagrindinis „Bitcoin“ kūrėjas incidentą pavadino „blogiausiu“.
„REX ICO“ incidentas
REX platforma nekilnojamojo turto sektoriui atneša „blockchain“ technologijos pranašumus. Ši platforma sukuria decentralizuotą „peer-to-peer blockchain multiple listing service“ (MLS). Nepaisant to, kad įvyko bent viena didelė kriptografavimo programavimo klaida, platforma ir toliau mato vis didesnę sėkmę.
REX paskelbė antraštes 2017 m. Rugpjūčio mėn., Kai kūrėjai per pradinį monetų aukojimą (ICO) eteryje prarado 1,3 mln. USD. Klaida atsirado, kai vienas iš kūrėjų programuodamas ICO išmaniąsias sutartis įvedė neteisingą „Javascript“ šešiakampę eilutę. Dėl šios klaidos ICO dalyvių lėšos buvo siunčiamos neaktyviu „blockchain“ adresu.
Laimei tiems, kurie prarado lėšas, REX jau surinko 13 milijonų JAV dolerių rizikos kapitalo finansavimą ir galėjo visiems išleisti REX žetonus, kuriuos jie buvo skolingi. Ne visiems taip pasiseka, kai įvyksta kriptografavimo programavimo klaidos.
„Binance“ sustabdo prekybą
Kai esate vienas didžiausių mainų pasaulyje, bet kokios kodavimo klaidos gali būti žalingos tūkstančiams šifravimo vartotojų. Šių metų vasario mėn, Binansas beveik dviem dienoms sustabdė prekybą dėl kodavimo klaidos. Prekybos embargo originalas turėjo trukti tik 24 valandas, tačiau „Binance“ pratęsė prekybos įšaldymą dėl „nenumatytų sulėtėjimų“.
Atsižvelgiant į didžiulį kriptografinių įsilaužimų skaičių, patiriamą per pastaruosius kelerius metus, nenuostabu, kad kriptografijos prekeiviai labai įtarė mainus. Daugelis tikėjo, kad mainai buvo nulaužti ir kad jie saugo tiesą nuo visuomenės. Rūpestis išaugo toks didelis, kad net Johnas McAfee nukreipė į „Twitter“, kad perspėtų tuos, kurie gali nukentėti.
Zhao Chengpeng per „Twitter“
Reaguodamas į didėjančius visuomenės neramumus, „Binance“ generalinis direktorius, Zhao Chengpeng, paskelbė kodavimo klaidos ekraną. Jis taip pat pažadėjo kas dvi valandas atnaujinti savo socialinės žiniasklaidos paskyrą, kol problema bus išspręsta. Galų gale kūrėjai ištaisė programavimo klaidą niekam tiesiogiai neprarandant lėšų.
„Bitcoin Upgrade Nightmare“
Kaip ir visą programinę įrangą, Bitcoin kodavimą reikia kartkartėmis atnaujinti. Šie atnaujinimai yra būtini, kad blokų grandinė veiktų sklandžiai. Kai kažkas nesiseka su „Bitcoin“ atnaujinimu, tai gali būti katastrofiška.
Puikus „Bitcoin“ naujoviško košmaro pavyzdys įvyko 2013 m. Kovo mėn. „Bitcoin“ planavo atnaujinti versiją nuo 0.7 iki 0.8. Versija 0.8 padidino „Bitcoin“ bloko dydį. Kai atnaujinimas buvo baigtas, prasidėjo košmaras.
Kūrėjai suprato, kad dėl atnaujinimo tinklas nesuderinamas su dabartine „Bitcoin“ versija. Šis naujinimas padalijo „blockchain“ į dvi atskiras. Šis padalijimas yra panašus į kietą šakę, tačiau įvyko ilgai prieš „Bitcoin Cash“.
Bitcoineriai pradėjo įspėti kūrėjus apie iškilusias problemas susidūrė su atnaujinimu. Galų gale bendruomenė nusprendė, kad geriausia dar kartą paspausti mygtuką „Paleisti iš naujo“. „Bitcoin“ grįžo į 0.7 versiją, tačiau, kaip jūs tikriausiai žinote, tai nesibaigė bloko dydžio diskusijomis „Bitcoin“ bendruomenėje.
Kripto programavimo klaidos – būkite budrūs
Nors „blockchain“ technologija leidžia atnaujinti dabartines sistemas, ji nėra tobula. Šios populiariausios šifravimo kodavimo klaidos pabrėžia sunkumus, su kuriais šiandien susiduria „blockchain“ kūrėjai. Dauguma kripto naudotojų niekada nenustoja galvoti apie talentingus vyrus ir moteris, dėl kurių kripto erdvė veikia. Dabar, kai apžvelgėte kriptografavimo programavimo klaidų pasekmes, tikrai įvertinsite, kai viskas veiks pagal planą.