“Un‘oncia di azione vale quanto una tonnellata di teoria.” – Friedrich Engels
Fatto:
Come sicuramente avrete avuto modo di sapere, il software della prima DAO (DAO 1.0 o “The DAO”) è stato utilizzato, da parte di un individuo o un gruppo di individui di indubbia abilità tecnica, per sottrarre fondi dalla “cassa” della TheDAO.
Premesse:
Cos’ è Ethereum ?
Ethereum è una piattaforma nata con lo scopo di costruire e far eseguire, “sopra” la sua blockchain, smart contract. (per approfondimenti https://goo.gl/mt3Vfo )
E gli smart contract ?
Gli smart contract sono dei software che hanno lo scopo di verificare ed eseguire automaticamente, nel tempo, alcuni eventi predeterminati.
Ok, ho sentito parlare di DAO. Cosa sono ?
Le DAO (organizzazioni decentralizzate ed autonome) sono software – di tipo smart contract – che hanno lo scopo di offrire un sistema economico, democratico e trasparente per la gestione società di capitali, associazioni, organismi politici, ong. ecc.
Cosa è successo ?
– Tecnicamente
Da svariati mesi alcuni programmatori stanno implementando la prima versione del software dao (DAO 1.0). Si tratta di una business dao – un fondo di investimento – che ha come scopo quello di offrire a società di capitali – per ora – tradizionali un modo per raccogliere dei fondi per determinati progetti.
il 28 maggio 2016 è stata lanciata la piattaforma software. Venerdì 17 giugno è stata oggetto di una sottrazione di fondi grazie ad una linea di codice “pensata male” che ha permesso ad un soggetto sconosciuto di sottrarre fondi appartenenti alla DAO 1.0 stessa.
– Economicamente
La DAO 1.0 ha raccolto inizialmente circa 160.000.000 $ a cui ne sono stati sottratti approssimativamente 60.000.000 $
Cosa fare ora ?
Premettiamo prima che:
Un Soft Fork è una operazione che aggiorna le funzionalità di Ethereum mantenendo però la retrocompatibilità.
Un Hard Fork, invece, è un aggiornamento del protocollo che rende obsolete le vecchie versioni di Ethereum.
Le opzioni attuabili sono : Niente, Soft fork e/o Hard fork.
1 Niente: teoria del “code is law”
I più fedeli alla linea utopistica della blockchain sono dell’idea di lasciare tutto così com’è. Lasciare che il soggetto che ha sottratto i fondi possa gestire, nel prossimo futuro, gli ether (token alla base della piattaforma Ethereum) frutto della suddetta sottrazione. La loro linea è: “code is law”: è possibile per chiunque – e quindi anche per il suddetto soggetto – sfruttare una “svista” del software DAO 1.0 per qualsiasi fine, perfino quello di “distrarre” dei fondi dei partecipanti alla DAO per scopi presumibilmente “personali”.
2 Solo soft fork
Onde evitare che l’ attaccante possa continuare a drenare i fondi dalla DAO 1.0 verso la sua DAO e quindi per impedire l’ “emorragia” degli stessi, coloro che propongono di intraprendere questa via vogliono che questi vengano congelati, in modo tale che l’attaccante, in un prossimo futuro, non possa usufruirne (ad es. venderli su exchange).
3 Soft fork seguito da hard fork
Altri ancora vogliono che al soft fork succeda un hard fork.
L’hard fork è una modifica del codice della blockchain Ethereum che permette di eliminare per sempre le conseguenze derivanti da una linea di codice “pensata male” della DAO 1.0. E’ l’ultima e più drastica risorsa disponibile. I puristi blockchain sono assolutamente contrari a questa soluzione in quanto si creerebbe un precedente di “censura”, che vanificherebbe i principi alla base di qualsiasi smart contract (e delle blockchain in generale).
Considerazioni:
Ci troviamo davanti alla prima grande sfida “ecosistemica” di Ethereum.
Ad un approccio meramente superficiale qualcuno potrebbe sostenere che il programma DAO 1.0 è stato oggetto di una leggerezza a livello di programmazione e che Ethereum – nella sua fase attuale – è perfettamente funzionante e privo di anomalie.
Tuttavia durante la sottrazione di fondi dalla DAO 1.0 sono emersi particolari riguardo alla scrittura degli smart contracts che necessita di attenzione da parte dell’ecosistema Ethereum.
La DAO 1.0 è un primo prototipo delle DAO che verranno ed è stata pensata e creata in una fase beta di Ethereum.
Ciò che Ethereum ha dimostrato è che la sua funzione di esecuzione ed immodificabilità degli smart contracts funziona.
La metodologia di progettazione e scrittura delle DAO, invece deve essere rivista.
Fortunatamente, essendo Ethereum ancora agli albori, c’è spazio di manovra per apportare un limitato intervento umano, inserendo, al momento, la modalità manuale.
Conclusioni finali – “ Consensus is law”:
La blockchain – qualunque essa sia – è un software a consenso sociale democratico. Sono solo i miners ed i nodi della rete a decidere che strada intraprendere. Ricordiamo che chiunque può far girare un nodo o effettuare attività di mining.
In questo momento sta avvenendo una votazione all’interno delle pool di mining su quale strada intraprendere. Riportiamo i risultati parziali per comodità.
Potete controllare i risultati in tempo reale qui e qui
Se ci sarà un consenso forte questo “passo falso” sarà probabilmente ricordato, nel breve periodo, come un “peccato di gioventù” della piattaforma. Stay tuned !
Ethereum Italia
@ethereumita
Ancora nessun commento