Bitcoin Transaksi Duplikat: Sebuah Celah yang Menarik tapi Berisiko Sangat Kecil
Transaksi Bitcoin biasanya menggunakan output yang tidak terpakai dengan merujuk pada ID transaksi sebelumnya. Output ini hanya dapat dibelanjakan satu kali, jika tidak, akan menyebabkan masalah pengeluaran ganda. Namun, dalam sejarah Bitcoin, memang ada dua set transaksi yang benar-benar identik. Situasi ini mungkin terjadi karena transaksi coinbase tidak memiliki input, melainkan langsung menghasilkan koin baru. Oleh karena itu, dua transaksi coinbase yang berbeda dapat mengirimkan jumlah koin yang sama ke alamat yang sama, dan dibangun dengan cara yang persis sama, sehingga mereka sepenuhnya identik. Karena isi transaksi sama, ID transaksi mereka juga sama.
Kedua kelompok transaksi yang berulang ini terjadi antara 14 hingga 15 November 2010, dengan rentang waktu sekitar 16 jam. Kelompok transaksi berulang pertama d5d2....8599 meskipun menjadi salinan lebih dulu, tetapi kemunculannya di blockchain justru lebih lambat dibandingkan dengan transaksi berulang lainnya e3bf....b468.
Menariknya, berbagai penjelajah blok memiliki perilaku yang berbeda saat menampilkan transaksi yang duplikat ini. Beberapa secara default menampilkan blok yang lebih awal, sementara yang lain menampilkan blok yang lebih baru.
Di antara empat blok yang terlibat, hanya satu blok yang berisi transaksi lainnya, menggabungkan output 1 BTC dan 19 BTC menjadi satu output 20 BTC.
Transaksi berulang yang melibatkan 200 BTC ini belum dibelanjakan hingga saat ini. Secara teori, orang yang memiliki kunci pribadi terkait dapat membelanjakan Bitcoin tersebut, tetapi begitu dibelanjakan, 50 BTC yang berulang akan hilang, sehingga yang benar-benar tersedia hanya 100 BTC. Mengenai blok mana yang akan digunakan untuk membelanjakan koin-koin ini, saat ini masih belum dapat dipastikan.
Transaksi yang berulang jelas akan membawa banyak masalah. Mereka dapat menyebabkan kebingungan pada dompet dan penjelajah blok, dan juga membuat orang tidak jelas tentang asal-usul Bitcoin. Lebih serius lagi, hal itu juga dapat digunakan untuk menyerang bursa dan lembaga lainnya.
Untuk mengatasi masalah ini, pada Maret 2012, soft fork BIP30 diterapkan, melarang penggunaan ID transaksi yang duplikat untuk transaksi. Pada September 2012, aturan ini diperluas untuk berlaku untuk semua blok.
Soft fork BIP34 yang diaktifkan pada Maret 2013 mengharuskan transaksi coinbase untuk menyertakan tinggi blok, yang lebih lanjut menyelesaikan masalah transaksi ganda. Oleh karena itu, pada November 2015, perangkat lunak inti Bitcoin menghentikan pemeriksaan BIP30.
Namun, BIP34 bukanlah solusi yang sempurna. Dalam beberapa blok sebelum aktivasi BIP34, byte pertama dari scriptSig transaksi coinbase kebetulan cocok dengan tinggi blok yang akan datang yang valid. Ini berarti masih mungkin terjadi transaksi duplikat, blok berikutnya yang mungkin adalah 1,983,702, yang diperkirakan akan dihasilkan sekitar Januari 2046.
Namun, biaya untuk memanfaatkan celah ini sangat tinggi. Sebagai contoh, untuk blok 1.983.702, penambang perlu membakar biaya sekitar 170 BTC, yang dihitung berdasarkan harga saat ini sekitar 15 juta USD. Dan kemungkinan besar dana ini tidak dapat dipulihkan.
Mengingat kesulitan dan biaya dalam menyalin transaksi, serta kelangkaan peluang, celah ini tidak dianggap sebagai ancaman keamanan utama bagi Bitcoin. Meskipun demikian, para pengembang masih berusaha mencari cara untuk memperbaiki masalah ini secara menyeluruh, yang mungkin perlu dicapai melalui soft fork.
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.
12 Suka
Hadiah
12
6
Bagikan
Komentar
0/400
CafeMinor
· 10jam yang lalu
Protokol yang banyak juga belum tentu lebih aman哦~
Lihat AsliBalas0
MEVHunterBearish
· 07-18 00:45
Bug ini diperbaiki dengan sangat membosankan...
Lihat AsliBalas0
CompoundPersonality
· 07-18 00:42
Di tahun-tahun awal, ada yang bilang bahwa ada celah keamanan dan cukup menakutkan.
Bitcoin duplikasi transaksi kerentanan: studi kasus sejarah dan analisis risiko di masa depan
Bitcoin Transaksi Duplikat: Sebuah Celah yang Menarik tapi Berisiko Sangat Kecil
Transaksi Bitcoin biasanya menggunakan output yang tidak terpakai dengan merujuk pada ID transaksi sebelumnya. Output ini hanya dapat dibelanjakan satu kali, jika tidak, akan menyebabkan masalah pengeluaran ganda. Namun, dalam sejarah Bitcoin, memang ada dua set transaksi yang benar-benar identik. Situasi ini mungkin terjadi karena transaksi coinbase tidak memiliki input, melainkan langsung menghasilkan koin baru. Oleh karena itu, dua transaksi coinbase yang berbeda dapat mengirimkan jumlah koin yang sama ke alamat yang sama, dan dibangun dengan cara yang persis sama, sehingga mereka sepenuhnya identik. Karena isi transaksi sama, ID transaksi mereka juga sama.
Kedua kelompok transaksi yang berulang ini terjadi antara 14 hingga 15 November 2010, dengan rentang waktu sekitar 16 jam. Kelompok transaksi berulang pertama d5d2....8599 meskipun menjadi salinan lebih dulu, tetapi kemunculannya di blockchain justru lebih lambat dibandingkan dengan transaksi berulang lainnya e3bf....b468.
Menariknya, berbagai penjelajah blok memiliki perilaku yang berbeda saat menampilkan transaksi yang duplikat ini. Beberapa secara default menampilkan blok yang lebih awal, sementara yang lain menampilkan blok yang lebih baru.
Di antara empat blok yang terlibat, hanya satu blok yang berisi transaksi lainnya, menggabungkan output 1 BTC dan 19 BTC menjadi satu output 20 BTC.
Transaksi berulang yang melibatkan 200 BTC ini belum dibelanjakan hingga saat ini. Secara teori, orang yang memiliki kunci pribadi terkait dapat membelanjakan Bitcoin tersebut, tetapi begitu dibelanjakan, 50 BTC yang berulang akan hilang, sehingga yang benar-benar tersedia hanya 100 BTC. Mengenai blok mana yang akan digunakan untuk membelanjakan koin-koin ini, saat ini masih belum dapat dipastikan.
Transaksi yang berulang jelas akan membawa banyak masalah. Mereka dapat menyebabkan kebingungan pada dompet dan penjelajah blok, dan juga membuat orang tidak jelas tentang asal-usul Bitcoin. Lebih serius lagi, hal itu juga dapat digunakan untuk menyerang bursa dan lembaga lainnya.
Untuk mengatasi masalah ini, pada Maret 2012, soft fork BIP30 diterapkan, melarang penggunaan ID transaksi yang duplikat untuk transaksi. Pada September 2012, aturan ini diperluas untuk berlaku untuk semua blok.
Soft fork BIP34 yang diaktifkan pada Maret 2013 mengharuskan transaksi coinbase untuk menyertakan tinggi blok, yang lebih lanjut menyelesaikan masalah transaksi ganda. Oleh karena itu, pada November 2015, perangkat lunak inti Bitcoin menghentikan pemeriksaan BIP30.
Namun, BIP34 bukanlah solusi yang sempurna. Dalam beberapa blok sebelum aktivasi BIP34, byte pertama dari scriptSig transaksi coinbase kebetulan cocok dengan tinggi blok yang akan datang yang valid. Ini berarti masih mungkin terjadi transaksi duplikat, blok berikutnya yang mungkin adalah 1,983,702, yang diperkirakan akan dihasilkan sekitar Januari 2046.
Namun, biaya untuk memanfaatkan celah ini sangat tinggi. Sebagai contoh, untuk blok 1.983.702, penambang perlu membakar biaya sekitar 170 BTC, yang dihitung berdasarkan harga saat ini sekitar 15 juta USD. Dan kemungkinan besar dana ini tidak dapat dipulihkan.
Mengingat kesulitan dan biaya dalam menyalin transaksi, serta kelangkaan peluang, celah ini tidak dianggap sebagai ancaman keamanan utama bagi Bitcoin. Meskipun demikian, para pengembang masih berusaha mencari cara untuk memperbaiki masalah ini secara menyeluruh, yang mungkin perlu dicapai melalui soft fork.