sekmadienis, birželio 24, 2018

Blockchain

Biškį gal jau atvėso susidomėjimas per paskutinius kelis mėnesius - buvo žlugusių ICO, bitcoinas nebekainuoja $20K - bet dar nemirė. Tai, kaip ir žadėjau, papasakosiu apie blockchainą. Nuobodžius pagrindus, bottom of the things. 
Blockchainas yra computer science duomenų struktūra - CS'istai (ir matematikai) žino visokius ten grafus, linked listus, hash table'us, tai čia dar vienas tos rūšies. Bet tos visos likusios kažkodėl netraukia tokios margos publikos kaip kriptovaliutų atveju. Blockchainas yra, ko gero, vienintelė duomenų struktūra, sukėlusi hype ir aukso karštinę.
Ji nėra labai sudėtinga. Turime blokus, kiekvienas jų viduje turi kokia tais naudingą informaciją-kriptovaliutų atveju tranzakcijų sąrašą, prieš tai buvusio bloko kontrolinį skaičių, ir bloko sukūrimo laiką. Viskas. Prieš tai buvęs blokas gali būti vienas ir tik vienas, vadinasi, blokai išsirikiuoja į grandinę laike, iš čia turime chain.
Jeigu šitoje vietoje sustotumėm, tai turėtumėm ne blockchain, o kažką, kas leidžia lengvai patikrinti, ar informacija grandinėje nebuvo pakeista - jeigu buvo, pasikeičia bloko kontrolinis skaičius, o kadangi jis nurodytas sekančiame bloke, tai pasikeičia ir to sekančio, ir taip toliau iki pat grandinės pabaigos. Tai yra gera savybė ir buvo naudojama seniai iki blockchaino.
Bet blockchainas čia nesustojo ir įdomybės prasideda taisyklėse, kas ir kaip turi teisę kurti naujus blokus, bei kriptovaliutų pritaikyme - kada tranzakcija laikoma įvykdyta. Bitcoin sukūrėjas (ir kiti iki jo, bet anie nerado patenkinamo sprendimo) norėjo, kad būtų visiškai decentralizuoti elektroniniai pinigai, kur niekas niekuo neturi pasitikėti, ir negalėtų būt jokio veikėjo, galinčio bet ką padaryti su
svetimais pinigais - užšaldyt ar atšaukt tranzakciją. Dėl to negali būt ir jokios "centrinio banko" institucijos, leidžiančios pinigus, ar patvirtinančios tranzakcijas.
Tam sugalvojo blokų kūrimo loteriją - "Proof of Work" solidžiau skamba, bet "loterija" tiksliau apibūdina. Joje gali dalyvauti bet kas norintis, laimima bitcoine vidutiniškai kas dešimt minučių, bet kad dalyvauti, reikia, grubiai sakant, spėlioti spėlioti ir galbūt atspėti sunkiai atspėjamą skaičių. Kad būtų paskata dalyvauti loterijoje, laimėtojas į naująjį bloką įrašo vieną tranzakciją, kurioje sau sukuria tam tikrą kiekį bitkoinų - tai yra miningas.
Dar ta loterija turi savybę, kad jos sunkumas automatiškai keičiasi pagal dalyvių skaičių, kad būtų vienas laimėtojas per vidutiniškai dešimt minučių. Jei dalyvių mažėja, skaičių darosi atspėt lengviau, jei daugėja - sunkiau.
Tranzakcijos nėra formaliai patvirtinamos, o tik įrašomos į bloką. Kuo senesnis tas blokas, t.y. kuo daugiau naujų blokų buvo sukurta ant viršaus, tuo ramiau dėl tos tranzakcijos. Vartotojo reikalas, nuo kelių blokų jis laikys ją patvirtinta.
Loterija turėtų saugoti tinklą nuo atakų. Norint atakuoti, reikia sukurti daug naujų blokų nuo atakuojamo iki bent vienu daugiau, nei yra dabar tinkle. Tam reikia atspėt ne vieną, o daug skaičių, ir dar sutilpt į dešimt minučių.
Planas buvo gražus, bet gyvenime buvo biškį kitaip. Kai bitkoiną pasidarė galima parduot už realius pinigus, greit minintojų prisidaugino gyvas velnias, loterijos sunkumas automatiškai šovė į astronomines aukštumas, elektros sunaudojimas-švaistymas loterijos skaičių spėliojimui-pasidarė palyginamas su kokios mažesnės valstybės visu sunaudojimu. Be to, miningas turi masto ekonomijų, taigi labai greit centralizavosi, ir jei didžiausi minintojai sugalvotų patys atakuot tinklą, iš principo galėtų.
Po to prasidėjo popkorno generavimas ir šou biznis. Pirmiausia, bitkoinas pradėjo praeidinėti finansinio ir securities reguliavimo naudos pamokas - kaip kažkas pasakė, replayina ant fast forward visą finansinių scamų istoriją su vagystėm apgavystėm, nesaugiais ir nesąžiningais exchange'ais ir taip toliau. Tada prasidėjo hype'as, kad blockchainas kriptovaliutose tėra pirmas pritaikymas, ir mes jį dabar pritaikysim visur kitur, autorių teisų apsaugoje, medicininėms istorijoms, elektroniniam balsavimui - visiškai bet kur. Tada prasidėjo smartkontraktų ir ICO hype'as. Daugiausiai nesąmonių generuoja pastarasis, bet man labiausiai patinka blockchain pritaikymas nekriptovaliutom - eina metai po metų, bet nėra NEI VIENO veikiančio pritaikymo, tik pažadai jau tuoj tuoj nuskristi į kitą galaktiką.
Geriausiai Sorry for Your Loss ir ICO absurdus aprašo David Gerard, o jo knyga Attack of the 50ft Blockchain yra išvis linksmų istorijų rinkinys, ne tai kaip šitas tekstas - fringe economics, konspiracijos, someone is wrong on in the internet, fail'as po fail'o, pirkit ir skaitykit.