Peristiwa bobolnya smart contract DAO yang menyebabkan 3,5 juta ETH disalahgunakan tentunya masih membawa dampak bagi ekosistem Ethereum dan DAO (Decentralized Autonomous Organization), termasuk para investor yang telah membeli token DAO maupun ETH. Harga ETH telah jatuh 25% sejak hacking ini diekspos ke publik. Beberapa rencana telah dibuat oleh para pengembang ETH termasuk Vitalik Buterin sang pendiri Ethereum, di antaranya rencana soft fork dan hard fork untuk membatalkan transaksi yang tidak diinginkan tersebut. Rencana-rencana ini masih mendapat pertentangan di kalangan Ethereum sendiri dengan mempertimbangkan setiap dampak yang dapat ditimbulkan oleh eksekusi rencana-rencana tersebut.
Beberapa pilihan
Pihak DAO menyarankan beberapa pilihan yang dapat Anda ambil untuk menyelamatkan token DAO yang Anda miliki.
- Menunggu hingga situasi membaik.
- Menjual token DAO di pasar.
- Menunggu hard fork dilakukan. Tidak ada jaminan bahwa hard fork akan terjadi.
- Memilih yes untuk split, dan setelah itu melakukan splitDAO().
DAO tampaknya tidak akan berlanjut, sebab diyakini bahwa DAO yang baru akan tetap memiliki permasalahan yang sama dan celah keamanan yang sama. Permasalahan itu diyakini merupakan faktor manusia, sebagaimana diutarakan oleh Dor Konforty, CEO Synereo. Meskipun kejadian tersebut menimbulkan kerugian besar, namun ada pelajaran yang dapat dipetik dari kejadian tersebut, termasuk risiko ketiadaan manusia dalam lingkungan yang serba otomatis bukan berarti menghilangkan potensi terjadinya kesalahan.
Analisis
Vitalik Buterin dalam artikelnya “Thinking About Smart Contract Security” menyebut bahwa telah terjadi beberapa kali peristiwa yang terkait keamanan pada ekosistem Ethereum sebelum ini, yang dapat dikategorikan ke dalam beberapa faktor penyebab peristiwa tersebut. DAO sendiri ada pada kategori re-entrance yang melibatkan looping atas pemanggilan script yang berulang-ulang, sebagaimana juga dijelaskan oleh Robert Graham dari Errata Security. Ia menekankan bahwa keamanan script tentu saja bergantung pada kualitas pemrograman yang dilakukan oleh pengembang.
Vitalik menyebutkan beberapa langkah untuk diperhatikan para pengembang smart contract agar kejadian seperti ini tidak terulang di masa depan.
- Pembuatan lingkungan pengembangan perangkat lunak yang memadai.
- Standardisasi komponen.
- Ujicoba atas peralatan pengembangan smart contract.
- Standardisasi kode pemrograman dan perbaikan Solidity.
- Libatkan ahli keamanan pada smart contract yang bernilai jutaan dolar.
Sumber gambar: blog.ethereum.org