Neajunsurile blockchain-urilor existente: Ethereum

a 4-a postare într-o serie despre rațiunea din spatele Themelio

(Eric (Yuhao Dong)) (31 august 2020)

Un computer distribuit cu încredere endogenă

Când Ethereum a fost lansat pentru prima dată în 2015, a urmărit să fie un blockchain radical diferit de Bitcoin. În loc să implementeze o singură aplicație, Ethereum își propune să fie echivalentul unui sistem de operare pentru aplicații de încredere endogenă sau „dApps” (aplicații descentralizate). Această funcționalitate este alimentată de un limbaj complet Turing (EVM) pentru programele încorporate în blockchain sau „contracte inteligente”, care pot accesa și stoca stări arbitrare în blockchain. Ethereum este efectiv un „computer mondial” pe care oricine îl poate folosi fără încredere.

În anii următori, s-au dezvoltat o mare varietate de aplicații Ethereum, inclusiv criptomonede noi precum Dai , platforme de pariuri descentralizate precum Augur și chiar colecții virtuale precum cryptokitties. Cel mai interesant, a apărut un ecosistem de finanțare descentralizată în lanț (DeFi), cu piețe de capital din ce în ce mai lichide accesibile oricui are o conexiune de rețea. Securitatea tuturor acestor aplicații depinde de încrederea endogenă pe care Ethereum o oferă.

Din păcate, această încredere este oarecum deplasată. Încrederea endogenă a lui Ethereum suferă de probleme similare, poate mai grave, în comparație cu cea a Bitcoin.

Complexitatea dăunează încrederii

În cartea albă / a>, creatorul Vitalik Buterin a articulat viziunea Ethereum ca o platformă „simplă” cu „fără caracteristici” bazată pe un limbaj simplu de contract inteligent (EVM) pe care „orice programator mediu îl poate implementa”. Cu toate acestea, astăzi Ethereum este un sistem extrem de complex, cu o implementare de referință de aproape un milion de linii de cod. O astfel de complexitate necesită întreținere constantă și schimbări frecvente. Cu toate acestea, orice actualizare a protocolului de rupere a consensului (sau „hard furks”) în blockchains implică o înlocuire a încrederii endogene cu încrederea în dezvoltatorul de protocol extern. Începând cu august 2020, următorul tabel listează de fiecare dată când protocolul Ethereum a fost „greu forțat”.

După cum s-a evidențiat mai sus, modelul Ethereum al unui sistem de operare complex dApp necesită eludarea frecventă a încrederii endogene.

Mai alarmant, dezvoltatorii și comunitatea Ethereum pur și simplu nu au o puternică credința în importanța încrederii endogene. De fapt, Vlad Zamfir, un dezvoltator de bază Ethereum, a scris o (cunoscută postare de blog) care argumentează împotriva „legii lui Szabo”, care este ideea că blockchain-urile nu ar trebui actualizate decât din motive critice, non-controversate. În același post, Zamfir afirmă, de asemenea, că intervenția externă într-un blockchain este o formă legitimă de „lege criptografică”.

În mod surprinzător, combinația dintre complexitatea protocolului și indiferența socială față de încrederea endogenă a dus la încălcări grave ale încredere endogenă care a perturbat semnificativ ecosistemul. Cel mai cunoscut exemplu în acest sens este „DAO bailout” din 2016.

Un studiu de caz: DAO bailout

Pe 17 iunie 2016, o vulnerabilitate în alimentarea contractelor inteligente DAO, una dintre cele mai populare aplicații Ethereum din acel moment, a fost exploatată cu răutate. Atacatorul a sustras din contract o sumă fără precedent de peste 3,6 milioane ETH – aproape 5\% din totalul ETH existent.

Comunitatea Ethereum a izbucnit într-o dezbatere aprinsă despre ce să facă cu privire la atac. În cele din urmă, la 15 iulie 2016 a avut loc o scurtă votare în monedă în lanț. 87\% au votat în favoarea unei forțe dure pentru a inversa atacul și a rambursa investitorii din DAO, deși doar 5,5\% din totalul ETH restante s-au dovedit la Votul. Patru zile mai târziu, a fost lansată o nouă versiune a Ethereum care a executat hard-hard-ul.

Această furcă DAO foarte controversată a subvertizat complet imuabilitatea, o proprietate crucială de securitate a blockchain-ului. O parte a comunității Ethereum a continuat să recunoască istoricul tranzacțiilor inițiale Ethereum, formând un blockchain separat cunoscut sub numele de Ethereum Classic. La fel ca și în cazul furcii Bitcoin din Bitcoin în Bitcoin și Bitcoin Cash din 2017, utilizatorii au ajuns să decidă în afara benzii în ce furcă să aibă încredere, în timp ce dezvoltatorii de aplicații au trebuit să facă față terenului de sub aplicațiile lor brusc în două.