Kerentanan serangan distorsi waktu dalam protokol Bitcoin
Pengembang Bitcoin Antoine Poinsot mengusulkan sebuah proposal perbaikan baru pada 26 Maret 2025, yang bertujuan untuk memperbaiki beberapa celah dan kelemahan yang telah lama ada dalam protokol Bitcoin melalui peningkatan soft fork. Salah satu celah yang cukup serius dikenal sebagai "serangan distorsi waktu", artikel ini akan membahasnya secara mendalam.
Mekanisme Perlindungan Timestamp Blok Bitcoin
Sebelum membahas serangan distorsi waktu, mari kita tinjau aturan perlindungan manipulasi waktu yang ada di jaringan Bitcoin saat ini:
Waktu median yang telah berlalu (MPT) aturan: Cap waktu blok harus lebih baru dari waktu median 11 blok terakhir.
Aturan waktu blok di masa depan: Stempel waktu blok tidak boleh melebihi 2 jam dari waktu median antar node sejawat. Selain itu, selisih maksimum yang diizinkan antara waktu node dan jam sistem lokal adalah 90 menit, yang juga merupakan langkah perlindungan keamanan.
Aturan MPT memastikan bahwa cap waktu blok tidak terlalu mundur, sementara aturan blok masa depan mencegah cap waktu terlalu maju. Perlu dicatat bahwa tidak ada langkah serupa dengan aturan blok masa depan yang dapat diterapkan untuk mencegah penggunaan cap waktu masa lalu pada blok, karena ini dapat mempengaruhi proses sinkronisasi blockchain awal. Serangan distorsi waktu memanfaatkan kemungkinan pemalsuan cap waktu kuno.
Kesalahan Kecil Satoshi Nakamoto
Periode penyesuaian kesulitan Bitcoin terdiri dari 2016 blok, yang dihitung dengan waktu blok target 10 menit, sekitar dua minggu. Untuk menghitung penyesuaian kesulitan penambangan, protokol akan menghitung selisih timestamp antara dua blok di awal dan akhir jendela 2016 blok yang relevan. Jendela 2016 blok ini sebenarnya mencakup 2015 interval blok (yaitu 2016 dikurangi 1). Oleh karena itu, waktu target yang digunakan secara teoritis harus 60 detik × 10 menit × 2015 interval, yang sama dengan 1,209,000 detik.
Namun, protokol Bitcoin menggunakan angka 2016 dalam perhitungan. 60 detik × 10 menit × 2016 = 1.209.600 detik. Ini adalah kesalahan kecil, mungkin Satoshi Nakamoto mengalami kebingungan dalam konsep interval antara blok.
Kesalahan ini menyebabkan waktu target lebih lama 0,05% dari yang seharusnya. Sebenarnya, interval waktu target untuk Bitcoin bukanlah 10 menit, melainkan 10 menit dan 0,3 detik. Penyimpangan kecil ini tidak akan menyebabkan dampak yang serius, sebenarnya, sejak Bitcoin diluncurkan, rata-rata interval blok tetap sekitar 9 menit 36 detik, jelas kurang dari 10 menit. Ini terutama karena sejak 2009, rata-rata daya komputasi jaringan terus meningkat secara stabil.
Prinsip Serangan Distorsi Waktu
Serangan distorsi waktu pertama kali ditemukan sekitar tahun 2011, memanfaatkan kesalahan kecil Satoshi Nakamoto dalam perhitungan kesulitan. Misalkan penambangan sepenuhnya terpusat, penyerang dapat memanipulasi stempel waktu blok dengan cara berikut:
Untuk sebagian besar blok, atur cap waktu untuk maju hanya 1 detik dari blok sebelumnya.
Untuk mematuhi aturan MPT, pertahankan cap waktu yang sama untuk 6 blok berturut-turut, kemudian tambahkan 1 detik pada blok berikutnya.
Di blok terakhir dari setiap periode penyesuaian kesulitan, atur cap waktu ke waktu dunia nyata.
Blok pertama dari jendela penyesuaian kesulitan berikutnya, sekali lagi mengatur cap waktu kembali ke masa lalu, 1 detik lebih awal dari blok kedua terakhir dari periode sebelumnya.
Metode serangan ini akan menyebabkan waktu blockchain semakin tertinggal dari waktu nyata, sementara tingkat kesulitan akan terus meningkat, membuat penambangan semakin sulit. Namun, mulai dari periode penyesuaian kedua, tingkat kesulitan akan mulai menurun. Penyerang kemudian dapat membuat blok dengan sangat cepat, menghasilkan banyak Bitcoin, sehingga mendapatkan potensi keuntungan.
Kelayakan dan Tantangan Serangan
Meskipun serangan semacam ini secara teori memiliki sifat yang merusak, pelaksanaan sebenarnya menghadapi banyak tantangan:
Mungkin perlu mengendalikan sebagian besar daya komputasi jaringan.
Kehadiran penambang yang jujur akan meningkatkan kesulitan serangan.
Aturan MTP dan cap waktu yang jujur mungkin membatasi tingkat pengembalian cap waktu yang jahat.
Proses serangan dapat dilihat oleh semua orang, mungkin memicu perbaikan soft fork darurat.
Solusi Potensial
Memperbaiki kerentanan ini relatif sederhana, tetapi mungkin memerlukan perubahan pada protokol soft fork. Salah satu solusi sederhana adalah dengan mengharuskan timestamp blok pertama dari periode kesulitan baru tidak lebih awal dari jumlah menit tertentu dari blok terakhir periode sebelumnya. Dalam proposal Poinsot, batas waktu ini ditetapkan pada 2 jam, sekitar 0,6% dari waktu target periode penyesuaian kesulitan, yang dapat secara efektif membatasi besarnya manipulasi kesulitan.
Keuntungan dari batas waktu 2 jam ini meliputi:
Meminimalkan risiko blok tidak valid yang tidak terduga
Sesuai dengan aturan cap waktu blok masa depan
Perubahan yang relatif konservatif, dalam kondisi normal mungkin lebih fleksibel daripada aturan MTP
Namun, metode ini masih memungkinkan penyerang untuk memanipulasi kesulitan turun sekitar 0,6% setiap siklus, tetapi ini akan menjadi perubahan sekali saja dan tidak dapat terakumulasi.
Secara keseluruhan, serangan distorsi waktu meskipun secara teori ada ancaman, tetapi kesulitan pelaksanaannya cukup besar. Melalui pembaruan protokol yang tepat, kita dapat lebih meningkatkan keamanan dan stabilitas jaringan Bitcoin.
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.
25 Suka
Hadiah
25
5
Bagikan
Komentar
0/400
LiquidationKing
· 07-13 07:37
Waktu harus dilindungi oleh kode
Lihat AsliBalas0
DegenWhisperer
· 07-10 09:13
Apakah Soft Fork benar-benar dapat diandalkan?
Lihat AsliBalas0
DarkPoolWatcher
· 07-10 09:09
Perbaikan kerentanan harus dilakukan sesegera mungkin
Vulnerabilitas serangan distorsi waktu pada protokol Bitcoin, proposal baru diusulkan untuk memperbaiki melalui Soft Fork.
Kerentanan serangan distorsi waktu dalam protokol Bitcoin
Pengembang Bitcoin Antoine Poinsot mengusulkan sebuah proposal perbaikan baru pada 26 Maret 2025, yang bertujuan untuk memperbaiki beberapa celah dan kelemahan yang telah lama ada dalam protokol Bitcoin melalui peningkatan soft fork. Salah satu celah yang cukup serius dikenal sebagai "serangan distorsi waktu", artikel ini akan membahasnya secara mendalam.
Mekanisme Perlindungan Timestamp Blok Bitcoin
Sebelum membahas serangan distorsi waktu, mari kita tinjau aturan perlindungan manipulasi waktu yang ada di jaringan Bitcoin saat ini:
Waktu median yang telah berlalu (MPT) aturan: Cap waktu blok harus lebih baru dari waktu median 11 blok terakhir.
Aturan waktu blok di masa depan: Stempel waktu blok tidak boleh melebihi 2 jam dari waktu median antar node sejawat. Selain itu, selisih maksimum yang diizinkan antara waktu node dan jam sistem lokal adalah 90 menit, yang juga merupakan langkah perlindungan keamanan.
Aturan MPT memastikan bahwa cap waktu blok tidak terlalu mundur, sementara aturan blok masa depan mencegah cap waktu terlalu maju. Perlu dicatat bahwa tidak ada langkah serupa dengan aturan blok masa depan yang dapat diterapkan untuk mencegah penggunaan cap waktu masa lalu pada blok, karena ini dapat mempengaruhi proses sinkronisasi blockchain awal. Serangan distorsi waktu memanfaatkan kemungkinan pemalsuan cap waktu kuno.
Kesalahan Kecil Satoshi Nakamoto
Periode penyesuaian kesulitan Bitcoin terdiri dari 2016 blok, yang dihitung dengan waktu blok target 10 menit, sekitar dua minggu. Untuk menghitung penyesuaian kesulitan penambangan, protokol akan menghitung selisih timestamp antara dua blok di awal dan akhir jendela 2016 blok yang relevan. Jendela 2016 blok ini sebenarnya mencakup 2015 interval blok (yaitu 2016 dikurangi 1). Oleh karena itu, waktu target yang digunakan secara teoritis harus 60 detik × 10 menit × 2015 interval, yang sama dengan 1,209,000 detik.
Namun, protokol Bitcoin menggunakan angka 2016 dalam perhitungan. 60 detik × 10 menit × 2016 = 1.209.600 detik. Ini adalah kesalahan kecil, mungkin Satoshi Nakamoto mengalami kebingungan dalam konsep interval antara blok.
Kesalahan ini menyebabkan waktu target lebih lama 0,05% dari yang seharusnya. Sebenarnya, interval waktu target untuk Bitcoin bukanlah 10 menit, melainkan 10 menit dan 0,3 detik. Penyimpangan kecil ini tidak akan menyebabkan dampak yang serius, sebenarnya, sejak Bitcoin diluncurkan, rata-rata interval blok tetap sekitar 9 menit 36 detik, jelas kurang dari 10 menit. Ini terutama karena sejak 2009, rata-rata daya komputasi jaringan terus meningkat secara stabil.
Prinsip Serangan Distorsi Waktu
Serangan distorsi waktu pertama kali ditemukan sekitar tahun 2011, memanfaatkan kesalahan kecil Satoshi Nakamoto dalam perhitungan kesulitan. Misalkan penambangan sepenuhnya terpusat, penyerang dapat memanipulasi stempel waktu blok dengan cara berikut:
Metode serangan ini akan menyebabkan waktu blockchain semakin tertinggal dari waktu nyata, sementara tingkat kesulitan akan terus meningkat, membuat penambangan semakin sulit. Namun, mulai dari periode penyesuaian kedua, tingkat kesulitan akan mulai menurun. Penyerang kemudian dapat membuat blok dengan sangat cepat, menghasilkan banyak Bitcoin, sehingga mendapatkan potensi keuntungan.
Kelayakan dan Tantangan Serangan
Meskipun serangan semacam ini secara teori memiliki sifat yang merusak, pelaksanaan sebenarnya menghadapi banyak tantangan:
Solusi Potensial
Memperbaiki kerentanan ini relatif sederhana, tetapi mungkin memerlukan perubahan pada protokol soft fork. Salah satu solusi sederhana adalah dengan mengharuskan timestamp blok pertama dari periode kesulitan baru tidak lebih awal dari jumlah menit tertentu dari blok terakhir periode sebelumnya. Dalam proposal Poinsot, batas waktu ini ditetapkan pada 2 jam, sekitar 0,6% dari waktu target periode penyesuaian kesulitan, yang dapat secara efektif membatasi besarnya manipulasi kesulitan.
Keuntungan dari batas waktu 2 jam ini meliputi:
Namun, metode ini masih memungkinkan penyerang untuk memanipulasi kesulitan turun sekitar 0,6% setiap siklus, tetapi ini akan menjadi perubahan sekali saja dan tidak dapat terakumulasi.
Secara keseluruhan, serangan distorsi waktu meskipun secara teori ada ancaman, tetapi kesulitan pelaksanaannya cukup besar. Melalui pembaruan protokol yang tepat, kita dapat lebih meningkatkan keamanan dan stabilitas jaringan Bitcoin.