Cryptocurrency hadir berkat kehebatan teknologi blockchain yang memungkinkan adanya transaksi tanpa pihak ketiga seperti bank ataupun pemerintahan. Namun demikian, teknologi yang canggih ini pun tak lepas dari risiko permasalahan yang kerap disebut double spending. Pada dasarnya, istilah tersebut merujuk pada sebuah permasalahan ketika seseorang melakukan transaksi cryptocurrency dengan mengirimkan sejumlah koin yang sama ke dua alamat wallet yang berbeda sekaligus. Lantas mengapa double spending merupakan sebuah masalah yang besar? Apa risiko yang dibawa double spending ke dalam sistem blockchain? Dan bagaimana caranya hal tersebut bisa dihindari dalam sistem blockchain? Mari pelajari selengkapnya di artikel ini.
Apa itu Blockchain?
Mari kita mulai dengan mengingat kembali tentang apa itu blockchain. Blockchain merupakan sebuah buku besar digital yang terdesentralisasi yang berfungsi dalam menyimpan catatan transaksi. Teknologi ini menjamin rasa saling percaya dan konsensus bersama di antara semua mitra yang terlibat dalam jaringannya. Revolusi yang dibawa oleh blockchain di dunia maya telah menciptakan cara yang aman dan kuat untuk menyimpan, mengelola, memproses, dan mencatat informasi dan transaksi digital yang seringkali dinilai sangat sensitif. Hal yang paling membuat teknologi ini tergolong inovatif adalah banyaknya komputer yang bekerja dalam satu waktu untuk mengerjakan transaksi yang terjadi di dalamnya.
Cryptocurrency seperti Bitcoin merupakan salah satu dari banyaknya blockchain yang ada di luar sana. Identitas digital, kontrak, logistik, dan semakin banyak entitas dapat memanfaatkan penggunaan blockchain.
Apa itu Double Spending?
Bicara tentang cryptocurrency, sangatlah penting untuk memastikan bahwa unit tertentu tidak dapat digandakan. Hal ini dikarenakan informasi digital dapat direproduksi dengan mudah oleh individu yang paham teknologi serta akrab dengan jaringan blockchain, sehingga ia bisa membuat perintah komputasi yang diperlukan untuk mengutak-atiknya. Seperti yang telah dibahas di atas, double spending atau kerap disebut pembelanjaan ganda pada dasarnya adalah kejadian saat dana yang sama dikirim ke dua penerima secara bersamaan. Hal ini terjadi ketika jaringan blockchain terganggu dan termasuk dalam pencurian cryptocurrency. Orang yang tidak bertanggung jawab kemudian akan mengirimkan salinan transaksi agar terlihat asli, atau bahkan menghapus transaksi sama sekali agar seolah-olah tidak pernah terjadi.
Tanpa tindakan pencegahan yang tepat untuk menyelesaikan masalah seperti itu, seluruh jaringan akan menjadi tidak stabil dan rusak secara fundamental. Pengguna tidak memiliki protokol untuk memverifikasi apakah dana yang mereka terima juga tidak digunakan di tempat lain. Oleh karena itu, agar cryptocurrency berfungsi dengan baik, harus ada mekanisme ketat yang mencegah perilaku semacam ini.
Cara Kerja Double Spending
Double spending berpotensi menghancurkan dan memberikan risiko besar terhadap sebuah teknologi blockchain. Seluruh konsep dari double spending tidaklah sesuai dengan sistem kerja blockchain. Oleh karena itu, kemungkinan double spending pada akhirnya akan merusak kepercayaan pengguna pada cryptocurrency.
Analogi yang biasa digunakan untuk permasalahan double spending dikenal sebagai Byzantine Generals Problem. Analogi ini menyoroti tantangan yang harus dihadapi banyak pihak ketika mereka tidak saling percaya dan harus berpartisipasi dalam usaha patungan yang mana membutuhkan kerja sama agar dapat berhasil. Analogi ini menjelaskan masalah ketidaksepakatan dalam sistem desentralisasi. Dalam analogi ini, ketika semua jenderal memimpin serangan terkoordinasi dengan pasukannya, mereka akan meraih kemenangan. Namun, begitu seorang jenderal merusak atau menyerang jenderal lain, seluruh pertempuran, akan disusupi dan akhirnya hilang, demikian pula dengan blockchain.
Akibatnya, cryptocurrency harus menggunakan Byzantine Fault Tolerance (BFT) ke dalam protokol mereka. Protokol ini menyiratkan bahwa sistem komputer harus tetap berfungsi hingga tingkat yang memuaskan meskipun ada kesalahan, kerusakan, atau peserta berperilaku bertentangan dengan rencana yang ditentukan atau menipu sistem.
Contoh Double Spending
Sekarang setelah kita memahami dasar double spending, mari kita lihat tiga cara populer yang dilakukan scammers untuk melakukan double spending.
- 51% Attacks (Majority Attack)
51% attack pada jaringan blockchain terjadi ketika satu individu atau organisasi mengendalikan sebagian besar tingkat hash, menyebabkan potensi gangguan jaringan. Ketika ini terjadi, “penyerang” mencapai kekuatan penambangan yang cukup untuk menghilangkan atau mengubah urutan transaksi yang dilakukan dengan sengaja.
Dalam 51% attack, penyerang dapat membalikkan transaksi yang dilakukan oleh mereka selama ini, yang menyebabkan masalah double spending. Selain itu, penyerang juga dapat menghambat beberapa atau semua transaksi dan mencegah beberapa atau semua penambang lain dari menambang, sesuatu yang dikenal sebagai “monopoli penambangan”. Bitcoin Gold, sebuah cryptocurrency yang muncul sebagai fork Bitcoin, adalah salah satu korban dari serangan semacam itu pada tahun 2018 dan 2020. - Race Attacks
Race attacks melibatkan pengiriman dua transaksi yang berlawanan secara bersamaan dengan dana serupa; namun, hanya satu transaksi yang dikonfirmasi. Ide utama dari serangan ini adalah membatalkan pembayaran lain dengan hanya memvalidasi transaksi yang menguntungkan penyerang, yaitu dana dikirim ke alamat yang dapat mereka kendalikan. Race attacks juga membutuhkan penerima yang menerima transaksi yang belum dikonfirmasi sebagai bentuk pembayaran. - Finney Attacks
Tidak seperti race attacks, serangan Finney melibatkan penyerang melakukan pra-penambangan satu transaksi ke dalam satu blok; namun, itu tidak segera disiarkan ke seluruh jaringan. Dalam jenis serangan double spending ini, penyerang membelanjakan koin yang sama dalam transaksi yang berbeda dan kemudian menyiarkan blok yang sebelumnya ditambang, sehingga membatalkan pembayaran. Serangan ini perlu terjadi dalam urutan yang berbeda. Seperti race attacks, mereka juga bergantung pada penerima yang menerima transaksi yang belum dikonfirmasi.
Bagaimana Cara Mencegah Double Spending
Ada dua cara untuk mencegah double spending:
- Pendekatan Terpusat: Pendekatan pencegahan ini terpusat secara signifikan serta lebih mudah diterapkan dan biasanya melibatkan pengawas tunggal yang mengelola sistem dan mengontrol penerbitan dan penyebaran unit di antara para peserta.
- Pendekatan Terdesentralisasi: Menjamin bahwa dana tidak dibelanjakan dua kali di lingkungan tanpa pengawas tunggal sangatlah menantang. Dalam pencegahan ini peserta lah yang sama-sama mengendalikan dan berkoordinasi seputar protokol yang ditetapkan untuk memeriksa penipuan dan memberi insentif kepada semua orang untuk berperilaku jujur.
Selain itu, teknologi blockchain mencegah double spending melalui teknologi berbagi file peer-to-peer, ditambah dengan public key cryptography. Bersamaan dengan penyiapan ini, struktur kepemilikan cryptocurrency dicatat dalam blockchain, yang pada dasarnya merupakan buku besar publik, sekaligus dikonfirmasi melalui protokol kriptografi dan oleh komunitas cryptocurrency secara keseluruhan.
Oleh karena itu, karena semua transaksi dicatat secara terbuka dan diamankan secara kriptografis secara bersamaan di ribuan node di seluruh dunia, setiap orang yang terlibat dapat melihatnya dan memverifikasi transaksi yang telah dilakukan. Dalam hal Bitcoin, semua transaksi diverifikasi oleh penambang. Sistem ini memastikan bahwa transaksi yang dilakukan selama proses verifikasi tidak dapat diubah dan tidak dapat diubah secara komputasi, sehingga berhasil menyelesaikan masalah double spending.
Seberapa Besar Kemungkinan Serangan Double Spending Terjadi?
Meskipun telah terjadi, untungnya double spending dalam blockchain bukanlah hal yang mudah dilakukan. Hal tersebut dikarenakan begitu blockchain sebuah cryptocurrency menjadi cukup besar, seperti Bitcoin atau Ethereum, kemungkinan satu individu atau kelompok mendapatkan daya komputasi yang cukup untuk menggulingkan semua peserta lain dengan cepat menjadi sangat rendah atau hampir mustahil.
Selain itu, memodifikasi semua blok yang dikonfirmasi sebelumnya menjadi lebih bermasalah saat rantai tumbuh, karena semua blok terhubung melalui bukti kriptografi. Akibatnya, semakin banyak konfirmasi dalam satu blok, semakin tinggi biaya untuk mengubah atau membalikkan transaksi.
Oleh karena itu, serangan double spending yang berhasil mungkin hanya akan mengubah beberapa transaksi blok baru-baru ini, dan hanya untuk waktu yang relatif singkat. Adapun untuk Bitcoin, algoritma konsensusnya yang juga dikenal sebagai Proof of Work (PoW), memastikan bahwa penambang hanya dapat memvalidasi blok transaksi baru mengingat semua node jaringan saling setuju bahwa hash blok yang diberikan oleh penambang adalah benar. Hash blok memverifikasi bahwa penambang telah melakukan upaya yang cukup, menemukan solusi yang efektif untuk masalah blok, dan karenanya akan memberi imbalan beberapa Bitcoin untuk menyelesaikannya.
Kesimpulan
Dengan double spending, penyerang dapat menipu sistem uang elektronik untuk keuntungan finansial, menggunakan dana yang sama dua kali atau lebih. Awalnya, tidak ada solusi yang cocok untuk menyelesaikan masalah ini. Hal tersebut menimbulkan tantangan yang cukup besar untuk pertumbuhan dan kemajuan cryptocurrency dan Bitcoin. Untungnya protokol tertentu yang ketat dan transparan telah memberikan solusi inovatif untuk skema keuangan yang terdesentralisasi. Selain itu, pembentukan mekanisme PoW dan teknologi blockchain telah mengubah Bitcoin menjadi sistem cryptocurrency yang kuat dan terdesentralisasi, sangat mengurangi kemungkinan penipuan dan double spending.