Bitcoin Transaksi Ganda: Sebuah Kasus Langka namun Menarik
Transaksi Bitcoin biasanya menggunakan output yang tidak terpakai dengan merujuk pada ID transaksi sebelumnya. Output ini hanya dapat dibelanjakan sekali, jika tidak, akan muncul masalah pembayaran ganda. Namun, dalam sejarah Bitcoin, memang ada dua set transaksi yang sepenuhnya identik. Situasi ini mungkin terjadi karena transaksi coinbase tidak memiliki input apa pun, melainkan langsung menghasilkan koin baru. Oleh karena itu, dua transaksi coinbase yang berbeda dapat mengirimkan jumlah koin yang sama ke alamat yang sama, sehingga membangun transaksi yang sepenuhnya identik. Karena isi transaksi ini sama, ID transaksinya juga sama.
Dua kelompok transaksi berulang ini terjadi antara 14 hingga 15 November 2010, dengan rentang waktu sekitar 16 jam. Kelompok transaksi berulang pertama terjepit di antara kelompok kedua. Kami mengklasifikasikan transaksi dengan ID yang diawali dengan d5d2 sebagai transaksi berulang pertama, meskipun waktu kemunculannya di blockchain lebih lambat daripada transaksi berulang yang lain.
Di beberapa penjelajah blok, Anda dapat melihat kasus transaksi yang sama muncul berulang kali di blok yang berbeda. Penjelajah blok yang berbeda mungkin memiliki perilaku default yang berbeda dalam menampilkan transaksi yang berulang ini.
Transaksi berulang ini masing-masing melibatkan 50 BTC, total melibatkan 200 BTC. Hingga saat ini, Bitcoin ini masih belum dibelanjakan. Secara teori, jika seseorang memiliki kunci privat yang relevan, mereka mungkin dapat membelanjakan Bitcoin ini. Namun, setelah dibelanjakan, 50 BTC yang berulang akan hilang, sehingga yang sebenarnya tersedia hanya 100 BTC. Mengenai dari blok mana koin ini akan dibelanjakan, saat ini masih belum pasti.
Transaksi yang berulang jelas akan membawa beberapa masalah. Mereka mungkin akan menyebabkan kebingungan pada dompet dan penjelajah blok, serta menyulitkan untuk menentukan asal-usul Bitcoin. Ini juga dapat digunakan untuk beberapa serangan, seperti melakukan setoran berulang ke bursa.
Untuk menyelesaikan masalah ini, pada bulan Maret 2012 Bitcoin menerapkan BIP30 melalui soft fork, melarang penggunaan ID transaksi yang duplikat untuk transaksi. Pada bulan September 2012, dilakukan modifikasi lebih lanjut, sehingga pemeriksaan BIP30 berlaku untuk semua blok, kecuali dua set transaksi duplikat yang disebutkan sebelumnya.
Pada Maret 2013, Bitcoin mengaktifkan soft fork BIP34, yang mengharuskan transaksi coinbase menyertakan informasi tinggi blok. Ini tampaknya sepenuhnya menyelesaikan masalah transaksi ganda, secara teori semua transaksi seharusnya unik.
Namun, sebelum aktivasi BIP34, ada beberapa blok di mana byte pertama dari scriptSig transaksi coinbase cocok dengan tinggi blok yang akan datang yang valid. Ini berarti bahwa dalam kasus yang sangat jarang, transaksi duplikat masih mungkin terjadi. Blok berikutnya yang mungkin terjadi transaksi duplikat adalah 1,983,702, yang diperkirakan akan dihasilkan sekitar Januari 2046.
Namun, mengingat kesulitan dan biaya untuk menyalin transaksi semacam itu, serta jarangnya kesempatan untuk memanfaatkannya, celah ini bukanlah ancaman keamanan utama bagi Bitcoin. Meskipun demikian, pengembang masih meneliti cara untuk sepenuhnya memperbaiki masalah ini, yang mungkin perlu dicapai melalui soft fork. Salah satu kemungkinan solusi perbaikan adalah dengan memaksa pelaksanaan janji SegWit.
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
Fenomena langka dalam sejarah Bitcoin: Transaksi berulang dan evolusinya
Bitcoin Transaksi Ganda: Sebuah Kasus Langka namun Menarik
Transaksi Bitcoin biasanya menggunakan output yang tidak terpakai dengan merujuk pada ID transaksi sebelumnya. Output ini hanya dapat dibelanjakan sekali, jika tidak, akan muncul masalah pembayaran ganda. Namun, dalam sejarah Bitcoin, memang ada dua set transaksi yang sepenuhnya identik. Situasi ini mungkin terjadi karena transaksi coinbase tidak memiliki input apa pun, melainkan langsung menghasilkan koin baru. Oleh karena itu, dua transaksi coinbase yang berbeda dapat mengirimkan jumlah koin yang sama ke alamat yang sama, sehingga membangun transaksi yang sepenuhnya identik. Karena isi transaksi ini sama, ID transaksinya juga sama.
Dua kelompok transaksi berulang ini terjadi antara 14 hingga 15 November 2010, dengan rentang waktu sekitar 16 jam. Kelompok transaksi berulang pertama terjepit di antara kelompok kedua. Kami mengklasifikasikan transaksi dengan ID yang diawali dengan d5d2 sebagai transaksi berulang pertama, meskipun waktu kemunculannya di blockchain lebih lambat daripada transaksi berulang yang lain.
Di beberapa penjelajah blok, Anda dapat melihat kasus transaksi yang sama muncul berulang kali di blok yang berbeda. Penjelajah blok yang berbeda mungkin memiliki perilaku default yang berbeda dalam menampilkan transaksi yang berulang ini.
Transaksi berulang ini masing-masing melibatkan 50 BTC, total melibatkan 200 BTC. Hingga saat ini, Bitcoin ini masih belum dibelanjakan. Secara teori, jika seseorang memiliki kunci privat yang relevan, mereka mungkin dapat membelanjakan Bitcoin ini. Namun, setelah dibelanjakan, 50 BTC yang berulang akan hilang, sehingga yang sebenarnya tersedia hanya 100 BTC. Mengenai dari blok mana koin ini akan dibelanjakan, saat ini masih belum pasti.
Transaksi yang berulang jelas akan membawa beberapa masalah. Mereka mungkin akan menyebabkan kebingungan pada dompet dan penjelajah blok, serta menyulitkan untuk menentukan asal-usul Bitcoin. Ini juga dapat digunakan untuk beberapa serangan, seperti melakukan setoran berulang ke bursa.
Untuk menyelesaikan masalah ini, pada bulan Maret 2012 Bitcoin menerapkan BIP30 melalui soft fork, melarang penggunaan ID transaksi yang duplikat untuk transaksi. Pada bulan September 2012, dilakukan modifikasi lebih lanjut, sehingga pemeriksaan BIP30 berlaku untuk semua blok, kecuali dua set transaksi duplikat yang disebutkan sebelumnya.
Pada Maret 2013, Bitcoin mengaktifkan soft fork BIP34, yang mengharuskan transaksi coinbase menyertakan informasi tinggi blok. Ini tampaknya sepenuhnya menyelesaikan masalah transaksi ganda, secara teori semua transaksi seharusnya unik.
Namun, sebelum aktivasi BIP34, ada beberapa blok di mana byte pertama dari scriptSig transaksi coinbase cocok dengan tinggi blok yang akan datang yang valid. Ini berarti bahwa dalam kasus yang sangat jarang, transaksi duplikat masih mungkin terjadi. Blok berikutnya yang mungkin terjadi transaksi duplikat adalah 1,983,702, yang diperkirakan akan dihasilkan sekitar Januari 2046.
Namun, mengingat kesulitan dan biaya untuk menyalin transaksi semacam itu, serta jarangnya kesempatan untuk memanfaatkannya, celah ini bukanlah ancaman keamanan utama bagi Bitcoin. Meskipun demikian, pengembang masih meneliti cara untuk sepenuhnya memperbaiki masalah ini, yang mungkin perlu dicapai melalui soft fork. Salah satu kemungkinan solusi perbaikan adalah dengan memaksa pelaksanaan janji SegWit.