Pengertian Flash Loan dalam Kripto dan Bagaimana Cara Kerjanya

Volubit.id — Terus berkembangnya inovasi di jagat kripto menawarkan berbagai solusi baru yang sebelumnya mungkin tidak pernah terpikirkan. Salah satu dari banyak inovasi yang paling menarik dalam Decentralized Finance (DeFi) adalah flash loan.

Flash loan telah menjadi topik pembicaraan hangat di kalangan pengguna kripto, terutama bagi mereka yang tertarik dengan strategi arbitrase atau trading yang lebih kompleks. Lantas, apa sebenarnya Flash Loan itu, dan bagaimana cara kerjanya?

Pengertian Flash Loan

Flash loan adalah jenis pinjaman unik yang ditawarkan dalam ekosistem DeFi di mana pengguna dapat meminjam dana dalam jumlah besar tanpa perlu memberikan jaminan atau kolateral (uncollateralized loan).

Konsep ‘pinjaman kilat’ ini mungkin terdengar tidak masuk akal dalam dunia keuangan tradisional, tetapi dimungkinkan via blockchain.

Kunci dari flash loan adalah bahwa pinjaman tersebut harus dilunasi dalam satu transaksi tunggal, yaitu dalam satu blok transaksi pada blockchain.

Jika pinjaman tersebut tidak dilunasi dalam jangka waktu tersebut, maka seluruh transaksi dibatalkan, dan seolah-olah pinjaman itu tidak pernah terjadi.

Tak ada dana atau aset kripto yang tersangkut jika transaksi dibatalkan, kecuali gas fee yang harus dibatalkan dalam tahapan transaksi yang telah diselesaikan. Artinya, tak ada risiko kerugian inheren dalam logika flash loan–kecuali kamu apes karena protokol yang digunakan tiba-tiba mengalami eksploitasi saat melakukan pinjaman kilat.

Bagaimana Cara Kerjanya?

Cara kerja flash loan secara sepintas tampak menguntungkan dan sederhana, namun nyatanya, tidak sesederhana itu, Ferguso!

Flash Loan memanfaatkan fitur atomisitas pada blockchain. Fitur atomisitas dimungkinkan dirancang melalui bot yang menulis baris kode program smart contract untuk eksekusi flash loan.

Program smart contract tersebut akan memerintahkan serangkaian eksekusi transaksi dalam satu blok yang harus diselesaikan. Bila gagal, program akan membatalkan keseluruhan kontrak sehingga diasumsikan tidak ada transaksi yang terjadi sama sekali.

Instruksi program smart contract flash loan biasanya berisi perintah untuk melakukan perdagangan arbitrase. Perdagangan arbitrase sendiri merujuk pada perdagangan di dua platform berbeda agar mendapat keuntungan dari selisih harga aset di kedua platform. Misalnya, harga Bitcoin (BTC) di OKX mencapai $60.500 per keeping, sedangkan di Binance $61.000. Pedagang arbitrase akan mengambil keuntungan dengan membeli sejumlah BTC di OKX dan menjualnya Kembali di Binance untuk memperoleh profit dari selisih harga.

Dalam flash loan, transaksi beli dan jual tersebut akan disatukan dalam satu komando smart contract. Sehingga, sistem akan membaca aksi beli dan jual sebagai satu kesatuan transaksi, alih-alih dua transaksi terpisah. Selain aksi beli dan jual, biasanya komando flash loan berisi instruksi peminjaman dan pembayaran pinjaman. Sehingga bila ditotal, ada empat transaksi yang disatukan dengan urutan, peminjaman, pembelian aset, penjualan, dan pembayaran pinjaman.

Selain dengan bot kode program, flash loan juga dapat dilakukan melalui fitur dalam platform yang disediakan protokol. Adapun protokol terkenal yang menyediakan fitur flash loan ini termasuk Aave dan dYdX.

Contoh Flash Loan

Untuk memahami lebih jauh flash loan, mari kita lihat contoh sederhananya. Contohnya, seorang pengguna, sebut saja Ferguso, hendak melakukan perdagangan arbitrase dengan memanfaatkan fitur flash loan di platform lending Aave. Dia hendak memanfaatkan selisih harga ETH yang dijual $2.600 per keping di Uniswap dan $2.620 di Trader Joe.

Tahapan yang dilakukan adalah 1) meminjam 1 juta USDT dari Aave; 2) menukarnya dengan 384,6 ETH di Uniswap, lalu; 3) menukarnya kembali dengan 1.007.652 USDT di Trader Joe; 4) membayar pinjaman 1 juta USDT di Aave. Dengan strategi ini, Ferguso mengantongi keuntungan 7.652 USDT. Lumayan bukan?

Contoh nyatanya, pada 2020 silam, seorang pengguna berhasil meraup keuntungan $16.182 hanya dalam hitungan detik di blok 10566089 melalui flash loan dYdX.

Pertama-tama, dia meminjam 2.048.000 USDC dari dYdX. Setelah itu, dia menukar 2.048.000 USDC ini menjadi 2.028.367 DAI di Curve y pool. Lalu, DAI tersebut ditukar lagi menjadi 2.064.182 USDC di SUSD pool Curve. Terakhir, dia mengembalikan pinjaman awal sebesar 2.048.000 USDC ke dYdX. Total gas fee yang dibayarkan lebih dari $400.

Keuntungan ini bisa didapat karena adanya perbedaan nilai stablecoin di berbagai platform. Meskipun perbedaannya kecil, saat meminjam dalam jumlah besar dan melakukan arbitrase, keuntungannya bisa sangat signifikan.

Pada Juli 2022, seorang pengguna meminjam 1.499.999 DAI dari dYdX. Seluruh DAI tersebut dikirimkan ke kontrak 1inch. Dari sana, 1.499.999 DAI disetorkan ke MakerDAO dan dikonversi menjadi 1.499.999 USDC. Token USDC ini kemudian dikirim kembali ke kontrak 1inch dan ditukarkan menjadi 150.033 USDT melalui Balancer dan Aave. USDT tersebut selanjutnya ditukar kembali menjadi 1.500.119 USDC di DoDo, yang kemudian dikonversi kembali menjadi 1.500.119 DAI di MakerDAO. Secara keseluruhan, dia menghasilkan keuntungan bersih sebesar 113,4 DAI (setelah gas fee sekitar $30) dari seluruh rangkaian transaksi di blok 15217281 tersebut.

Pada Juni 2023, ada contoh kasus yang unik. Flash loan $200 juta DAI dari MakerDAO hanya menghasilkan keuntungan $3,24. Pengguna flash loan ini menjadikan pinjaman dari MakerDO sebagai kolateral untuk meminjam $2.300 dalam Wrapped Ether (WETH) dari Aave sebelum membeli token Threshold Network di Curve. Setelah menjual token tersebut di Balancer, bot menghasilkan keuntungan sekitar $33. Namun setelah dipotong gas fee, keuntungannya menyusut tajam.

Berdasarkan contoh-contoh yang ada, terlihat bahwa gas fee transaksi harus menjadi faktor yang dipertimbangkan sebelum melakukan flash loan. Pasalnya, strategi flash loan sejauh ini banyak digunakan di Ethereum yang dikenal sebagai blockchain yang bikin kantong bolong.

Potensi profitabilitas flash loan juga semakin menipis lantaran semakin banyaknya bot kode program yang bisa digunakan sehingga ada lebih banyak pengguna yang menggunakan strategi ini. Meskipun demikian, tetap saja strategi ini terbilang sangat kompleks, berisiko, dan tidak disarankan untuk pemula.

Flash Loan Attack

Dalam banyak kasus, pinjaman kilat sering dianggap memberi dampak negatif bagi protokol DeFi. Karenanya, dikenal pula istilah flash loan attack yakni serangan flash loan yang sengaja dilakukan untuk manipulasi, termasuk trading arbitrase.

Banyak contoh flash loan attack ini yang sudah terjadi dan menimbulkan kerugian yang tidak sedikit bagi protokol. Pada tahun 2020, serangan flash loan besar pertama menimpa protokol lending bZx atau Fulcrum. Pelaku memanfaatkan flash loan 1.000 ETH dari dYdX untuk membuka posisi short ETH/WBTC di bZx menggunakan token wBTC. Setelah meminjam 1.000 ETH di dYdX, ia menyetor 5.500 ETH ke Compound sebagai jaminan untuk meminjam 112 WBTC.

Ia lantas menggunakan 1.300 ETH dari dYdX untuk mengambil posisi short dengan leverage 5x terhadap WBTC melalui bZx sehingga total eksposur terhadap pasangan ETH-WBTC menjadi 6.500 ETH. Selanjutnya dia memanfaatkan fitur margin trading untuk menukar 5.637,62 ETH dari eksposur dengan 51,34 WBTC menggunakan KyberSwap. Proses ini menyebabkan lonjakan harga WBTC di Uniswap menjadi tiga kali lipat dari harga normal.

Setelah harga WBTC melonjak tinggi di Uniswap, dia menjual 112 WBTC dari Compound tadi di Uniswap dengan harga yang sangat tinggi, dan berhasil mengumpulkan 6.871 ETH. Ditambahkan 3.200 ETH sisa dari dYdX, secara total ia berhasil mengumpulkan 10.071,41 ETH, plus kolateral 5.500 ETH dan utang 112 WBTC di Compound. Sementara posisi shortnya di bZx dibiarkan dilikuidasi. Secara total, keuntungan yang diperoleh mencapai sekitar 1.271 ETH atau setara sekitar $370.000 pada saat itu. Sementara bZx mengalami kerugian $620.000 karena lonjakan harga WBTC.

Pada Oktober 2021, Cream Finance mengalami serangan besar yang menempatkannya sebagai salah satu peretasan DeFi terbesar dengan kerugian lebih dari $130 juta. Penyerang memanfaatkan perbedaan harga aset dengan meminjamkan (lending) dan meminjam (borrowing) dana secara berulang menggunakan dua alamat wallet.

Wallet pertama meminjam 500 juta DAI dari MakerDAO dan menukarnya menjadi yDAI d Curve, lalu yUSD di Yearn. Token yUSD ini kemudian disimpan dalam vault Yearn untuk mendapatkan token yUSDVault. Token ini digunakan sebagai jaminan di Cream untuk mencetak token crYUSD senilai $500 juta.

Kemudian, wallet kedua digunakan untuk meminjam $2 miliar dalam bentuk ETH dari Aave, yang juga ditukar menjadi yUSD dan kemudian disimpan kembali untuk mencetak lebih banyak crYUSD. Dengan melakukan ini berulang kali, peretas berhasil mengumpulkan crYUSD senilai $1,5 miliar dan yUSDVault senilai $500 juta.

Setelah itu, peretas memanipulasi harga token yUSDVault sehingga nilai token tersebut menjadi dua kali lipat. Dengan jaminan yang kini bernilai jauh lebih tinggi, mereka menarik aset senilai $2 miliar untuk membayar kembali pinjaman, dan menggunakan sisa $1 miliar untuk menguras aset dari Cream Finance senilai $130 juta.

Selain trading arbitrase, flash loan attack ini juga kerap dilakukan untuk melakukan manipulasi voting proposal governance protokol. Pada 17 April 2022, Beanstalk Farms mengalami serangan yang menghasilkan kerugian lebih dari $182 juta. Peretas mengambil pinjaman dari Aave senilai sekitar $1 miliar dalam bentuk USDC, USDT, dan DAI serta menggunakan dana tersebut untuk memborong token governance Beanstalk Farms, STALK. Token ini memberi hak voting bagi pemiliknya dalam menentukan setiap proposal pengembangan protokol.

Setelah mengumpulkan cukup banyak token untuk mengendalikan pemungutan suara, peretas membuat proposal ‘BIP18’ yang mengarahkan agar aset di pool Beanstalk ditransfer ke wallet miliknya. Peretas sendiri berhasil mengantongi keuntungan sekitar $80 juta dari aksinya ini.

Leave a Reply

Your email address will not be published. Required fields are marked *