onsdag 27. juli 2016

Drama i Ethereum-leiren

Sommaren har vore innhaldsrik for den som er interessert i utviklinga innan krypto-valuta og blokk-kjeder. Mest drama har det vore innan Ethereum, den alternative blokk-kjeda som er mest populær etter Bitcoin. Det var etableringa av den autonome organisasjonen The DAO som starta det heile, og eg har skrive om det i eit eige innlegg. Eg avslutta innlegget om The DAO med ein advarsel om å endra Ethereum-koden berre for å redda midlane i The DAO. Men så var det akkurat det som vart gjort.

Konsensus vart til splitting
Først vart ein såkalla "soft fork" føreslått; dvs. ei endring i koden som ikkje ville endra reglane for konsensus. Då ville blokk-kjeda kunna halda fram utan splitting. Men så vart det oppdaga ein svakheit i løysinga og den vart forkasta. Neste forslag var ein "hard fork"; ei endring som i praksis vil laga ein ny blokk-kjede med nye reglar. Dei fleste som stemde i saka stemde for å gjennomføra endringa og endringa i blokk 1,920,000 den 20. juli såg ut til å gå smertefritt. Det var rekna med at alle ville gå over til den nye blokk-kjeda fordi dei elles risikerte å mista verdiane sine. Men så skjedde det spesielle at den gamle kjeda, den som ikkje har godkjent endringa i Ethereum-koden og som slik sett har "godteke" The DAO-tappinga, heldt fram med ganske mange brukarar. Sidan dei fleste gravarane hadde implementert den nye koden, var den gamle kjeda sårbar i starten, men etter kvart sette fleire gravarar inn ressursar på kjeda som fekk namnet Ethereum Classic, og den vart i første omgang redda frå eit 51 %-angrep.

Bonus på 5-10 % for alle ether-eigarar
Ein interessant bi-effekt av splittinga er at dei som eigde ether før splittinga fekk ein bonus sidan valutaen blir godkjent både i den gamle og den nye blokk-kjeda. Etter splittinga av blokk-kjeda fekk den gamle valutaen, Ethereum Classic, ein verdi på 5-10 % av den nye. Det betyr ein bonus på 5-10 % for dei ether-eigarane som valde å ta ut gevinsten.

Men fare for "replay"-angrep
Splittinga i to konkurrerande kjeder skaper utfordringar på fleire område. Det opnar for mulege "replay"-angrep der ein kan utnytta forvirringa som ligg i at begge kjedene godkjenner tidlegare transaksjonar og vil også godta nye transaksjonar. Denne utnyttinga bli kalla "replay" - detaljert forklaring på teknologien bak finn du i denne Reddit-artikkelen og i denne Medium-artikkelen.

Konsensus-basert teknologi og politikk
Historia om The DAO og den etterfølgjande diskusjonen og splittinga i Ethereum-leiren har vist at også kode er politikk. Vilkårslause blokk-kjeder, som Bitcoin og Ethereum, er i særleg grad prega av politikk og politiske diskusjonar. Det ligg i korta sidan teknologien er konsensus-basert. Dersom det ikkje er konsensus, blir det diskusjon og då kan også problema oppstå. Så langt har både Bitcoin og Ethereum vist at dei er i dårleg stand til å handtera denne delen av teknologi-utviklinga. Det må seiast at Bitcoin likevel viser betre styring, sjølv om diskusjonen om skalering har ført til mykje uro.

Manglar klare retningslinjer frå start
Fleire etterlyser klarare mandat og vedtekter for dei nye teknologiane. Slik det no er, må problema løysast etter kvart som dei oppstår, utan at ein kan finna noko støtte i eit opprinneleg konsensus-basert mandat. Ikkje alt kan avtalast på førehand, men ei så viktig sak som å føreta ein "hard fork" for å redda eit prosjekt frå å tapa mykje pengar, burde vore knesett som prinsipp alt i etaleringa. Er det ok å gripa inn for å redda eit prestisjeprosjekt, eller er det betre å la vera og la prinsippet om ei uforanderleg ("immutable") blokk-kjede vega tyngst? 

Ingen kommentarer: