Anda tidak dapat memiliki perangkat lunak tanpa bug. Setiap bagian utama kode tunduk pada debugging ekstensif, yang merupakan bagian tak terhindarkan dari proses pengembangan. Tetapi ketika kode itu mengontrol aset digital senilai jutaan dolar, memastikannya bebas dari kesalahan kritis tidak hanya diinginkan – itu sangat penting. Karena hack Bancor minggu ini dan serentetan kegagalan kontrak pintar yang lebih kecil tahun ini telah ditunjukkan, membuat kode bebas bug hampir tidak mungkin.
Bug Memiliki Biaya Banyak Orang Banyak Crypto
Cryptocurrency, bahkan yang tidak mengizinkan kontrak cerdas, rentan terhadap bug. Bahkan bitcoin, tolok ukur dimana koin lain diukur, telah memiliki bagiannya, seperti bug yang meluap pada tahun 2010 yang menciptakan 180 miliar bitcoin di blok 74638. Itu cepat diperbaiki meskipun tanpa ada yang mendapatkan atau kehilangan koin. Pengguna Ethereum tidak selalu beruntung. Insiden seperti DAO, Parity, dan terakhir Bancor, yang kerugian $ 12,5 juta telah dikaitkan dengan backdoor yang diizinkan dalam kontrak cerdas mereka, telah mendorong jumlah crypto yang hilang karena kesalahan pengkodean mencapai $ 1 miliar.
Sebagai turing blockchain yang lengkap, Ethereum Virtual Machine dapat digunakan untuk memberlakukan kontrak cerdas yang menggunakan logika yang sangat canggih. Masalahnya adalah, semakin rumit logika itu, semakin besar kemungkinan terjadinya bug yang dapat dieksploitasi. Kesolidan, bahasa utama yang digunakan untuk mengkode kontrak cerdas Ethereum, sangat sulit untuk dikuasai. Blok blockchain cerdas yang diaktifkan sejak saat itu telah muncul untuk menghilangkan kesalahan semacam itu. Hal ini memerlukan pindah dari Soliditas, dan sering dari kelengkapan turing, mendukung sistem yang lebih ketat dengan sedikit margin untuk kesalahan.
Bagaimana Blockchain Baru Mendekati Kontrak Pintar
Di Blockchain Expo di Amsterdam, news.Bitcoin.com berbicara dengan Jordan Andrews, Smart Contracts Lead di Stratis. Platform mereka menggunakan C #, yang telah disukai karena menyediakan akses ke “begitu banyak alat seperti decompilers, editor hebat, pengujian kohesif dan penyebaran debugging suite di Visual Studio. Apa artinya ini adalah Anda dapat mendekompilasi setiap kontrak dari bytecode ke C # yang nyata, ”jelas Jordan. Dia membandingkan ini dengan Soliditas yang ada di “tahap perkembangan yang rumit, di mana Anda tidak dapat benar-benar mendekompilasi banyak kontrak dengan baik. Fakta bahwa Anda dapat mengaudit hanya sekitar 1% dari kontrak pada Ethereum adalah masalah, karena pada dasarnya, decompilers tidak berfungsi. ”
Sementara Stratis sebagian besar fokus pada adopsi perusahaan, blockchain lain sedang menembaki Ethereum, tetapi belum mencapai keadaan siap di mana mereka dapat meletakkan sarung tangan di platform kontrak cerdas de facto cryptoverse. Tezos akan menggunakan verifikasi formal untuk kontrak cerdasnya dalam bentuk Michelson, bahasa pemrograman sederhana yang memberi hadiah keamanan atas multi-fungsi. Akibatnya, para pengkode harus membuat program sewenang-wenang, yang pada gilirannya berarti lebih sulit bagi mereka untuk memperkenalkan kesalahan fatal.
Stellar menyediakan kemampuan kontrak cerdas terbatas untuk mencakup hal-hal seperti multi-sig, batching, dan batas waktu. Kontrak pintar Cardano harus diverifikasi secara resmi untuk memastikan mereka bebas dari bug dan menjalankan menggunakan mesin virtual yang disebut IELE. Kontrak pintar EOS dikerahkan sebagai Rakitan Web pra-dikompilasi menggunakan C / C ++. Seperti Cardano dan Tezos, EOS masih berada pada tahap awal pengembangannya, dengan hanya segelintir pengembang yang membangun protokolnya. Ethereum, dalam perbandingan, dapat menghitung 35.000 pengembang Soliditas, dan dengan demikian tetap merupakan blockchain kontrak pintar terkemuka di web.
Verifikasi Formal Akan Mengurangi Kesalahan
Stratis ‘Jordan Andrews yakin bahwa peningkatan adopsi verifikasi formal akan membuat kontrak cerdas menjadi kurang rentan: “Saya pikir ekosistem untuk kedua [Stratis] dan Soliditas akan melihat begitu banyak perbaikan. Satu hal yang banyak muncul sekarang adalah verifikasi formal, gagasan bahwa Anda dapat memverifikasi bahwa kontrak akan berperilaku. Ini jelas hal yang besar … Stratis akan memiliki potensi untuk melakukan itu, dan aku tahu bahwa mereka juga memeriksanya dengan Ethereum. ”
Karena teknologi blockchain menembus setiap industri, peran kontrak pintar dalam pengambilan keputusan akan meningkat secara dramatis. Dalam prosesnya, kode komputer akan berubah dari mengendalikan ratusan juta hingga miliaran dolar aset digital. Menghilangkan bug sangat penting jika kontrak cerdas menjadi bagian dari bisnis sehari-hari. Sebelum itu terjadi, kesalahan mahal yang disebabkan oleh kekurangan lebih lanjut tidak dapat dihindari. Bug kontrak Ethereum yang pintar sudah ada di luar sana. Ini hanya kasus yang menemukan mereka pertama: whitehat atau hitam.
Apakah Anda pikir bug kontrak cerdas akan sepenuhnya diberantas? Beri tahu kami di bagian komentar di bawah ini.
[vc_row][vc_column width=”3/3″][vc_message message_box_color=”white” icon_fontawesome=”fa fa-phone” css=”.vc_custom_1530797943316{margin-top: -25px !important;}”]Hubungi Kami Whatsapp�| Join group Telegram�| Email [email protected][/vc_message]
Gambar milik Shutterstock, dan Stratis.
Sumber : The Billion-Dollar Quest to Eliminate Smart Contract Bugs