Di DeFi, penyetoran, peminjaman, dan penukaran semuanya dilakukan otomatis oleh smart contract—tanpa pemeriksaan manual dan tanpa layanan pelanggan yang bisa mengembalikan uang yang salah transfer. Jika kontraknya ditulis dengan benar, kontrak itu menjadi aturan yang paling andal; jika ada kesalahan, celah keamanannya pun akan “dijalankan” dengan sama telitinya.
Koin yang disebutkan dalam artikel: $ETH tercatat di 2500.87 (24 jam +2.6%).
Kode adalah aturan, begitu pula celah keamanan:
Setelah smart contract diterapkan ke blockchain, kontrak tersebut akan berjalan otomatis sesuai kode. Ini menghadirkan transparansi dan kepastian: siapa pun bisa membaca kodenya, dan aturan dalam kontrak yang tidak dapat diubah tidak akan berubah hanya karena seseorang berubah pikiran.
Sebaliknya, begitu celah dalam kode ditemukan dan dieksploitasi, dana bisa dipindahkan hanya dalam beberapa transaksi dan akan sangat sulit untuk mendapatkannya kembali. The DAO pada 2016 adalah salah satu contohnya: kontraknya diserang melalui celah reentrancy. Ethereum kemudian menanganinya dengan hard fork, sementara rantai asli yang tidak ikut bercabang berlanjut sebagai Ethereum Classic (ETC).
Apa sebenarnya yang diaudit?
Audit keamanan adalah pemeriksaan yang dilakukan oleh tim keamanan pihak ketiga terhadap versi kode tertentu pada waktu tertentu. Laporan audit biasanya mencantumkan masalah yang ditemukan, tingkat keparahannya, serta apakah pihak proyek sudah memperbaikinya.
Hal yang umum diperiksa meliputi celah reentrancy, kesalahan kontrol akses, masalah presisi perhitungan, dan kemungkinan manipulasi oracle. Audit membantu menemukan dan mengurangi celah umum semacam ini, tetapi dibatasi oleh waktu, tenaga, dan cakupan audit.
Mengapa masalah tetap bisa terjadi meski sudah diaudit?
Pertama, audit hanya mencakup kode dalam ruang lingkup yang ditentukan. Kontrak di luar cakupan dan fitur yang ditambahkan kemudian tidak termasuk di dalamnya. Jika kode diubah setelah audit, atau versi yang benar-benar diterapkan berbeda dari versi yang diaudit, kesimpulan audit tidak bisa langsung diterapkan.
Kedua, beberapa risiko tidak berasal dari kode itu sendiri: oracle atau protokol lain yang diandalkan protokol mengalami masalah, kunci admin yang memiliki wewenang untuk melakukan peningkatan dicuri, atau antarmuka situs web dimanipulasi untuk mengarahkan pengguna agar menandatangani transaksi berbahaya—semuanya dapat menimbulkan kerugian.
Apa yang bisa dilakukan pengguna biasa?
Saat membaca laporan audit, perhatikan tanggal, cakupan, dan masalah yang belum diperbaiki. Jangan hanya melihat tulisan “sudah diaudit”. Periksa juga apakah kontrak bisa ditingkatkan secara sepihak dan apakah wewenang untuk meningkatkannya dikendalikan dengan multisig dan timelock.
Protokol yang sudah berjalan lama dan teruji oleh banyak dana biasanya dianggap lebih andal, tetapi bukan berarti bebas dari celah. Karena itu, di DeFi, gunakan hanya dana yang sanggup Anda tanggung jika hilang. Sebarkan dana dalam jumlah besar ke berbagai protokol, dan cabut izin untuk protokol yang tidak lagi digunakan.
Sebagai penutup:
Audit adalah titik awal keamanan, bukan titik akhir. Menganggap risiko smart contract sebagai biaya yang harus dihadapi saat berpartisipasi di DeFi lebih realistis daripada percaya begitu saja pada tulisan “sudah diaudit”. Setiap potensi keuntungan selalu disertai risiko. Pikirkan baik-baik berapa besar kerugian terburuk yang sanggup Anda tanggung.
Mau dengar topik apa berikutnya? DeFi atau yang lain?
Ini bukan saran investasi. Jangan ikuti begitu saja.