Kerentanan serangan distorsi waktu dalam protokol Bitcoin
Pada tanggal 26 Maret 2025, seorang pengembang Bitcoin mengajukan proposal perbaikan baru yang bertujuan untuk memperbaiki beberapa kerentanan dan kelemahan yang telah lama ada dalam protokol Bitcoin melalui soft fork. Salah satu kerentanan yang patut diperhatikan disebut "serangan distorsi waktu", yang akan menjadi tema yang akan dibahas lebih dalam dalam artikel ini.
Mekanisme Perlindungan Timestamp Bitcoin
Sebelum membahas serangan distorsi waktu, kita perlu memahami aturan perlindungan manipulasi waktu Bitcoin saat ini:
Aturan waktu median yang telah berlalu (MPT): Cap waktu blok harus lebih baru dari waktu median 11 blok sebelumnya.
Aturan waktu blok di masa depan: Stempel waktu blok tidak boleh lebih dari 2 jam lebih awal daripada waktu median rekan sejawat node. Selain itu, selisih maksimum yang diizinkan antara waktu node dan jam sistem lokal adalah 90 menit.
Aturan ini bertujuan untuk mencegah manipulasi berlebihan terhadap cap waktu blok. Namun, karena kebutuhan untuk sinkronisasi blockchain awal, tidak mungkin untuk menerapkan aturan blok masa depan yang serupa untuk sepenuhnya mencegah penggunaan cap waktu di masa lalu. Serangan distorsi waktu memanfaatkan hal ini dengan memalsukan cap waktu yang kembali jauh ke masa lalu untuk melakukan serangan.
Kesalahan perhitungan dalam protokol
Siklus penyesuaian kesulitan Bitcoin terdiri dari 2016 blok, yang secara teoritis sekitar dua minggu waktu. Dalam menghitung penyesuaian kesulitan penambangan, protokol akan menghitung selisih stempel waktu antara blok pertama dan terakhir dalam jendela 2016 blok yang relevan. Namun, ada kesalahan kecil tetapi penting dalam proses perhitungan ini.
Perhitungan yang benar seharusnya adalah: 60 detik * 10 menit * 2015 interval = 1.209.000 detik. Namun yang digunakan sebenarnya adalah: 60 detik * 10 menit * 2016 = 1.209.600 detik. Kesalahan selisih ini menyebabkan waktu target lebih lama 0,05% dari seharusnya, sehingga waktu interval target Bitcoin yang sebenarnya adalah 10 menit dan 0,3 detik.
Meskipun kesalahan 0,3 detik ini tampak sepele, namun ia terkait dengan masalah yang lebih serius. Perhitungan kesulitan didasarkan pada blok pertama dan terakhir dalam setiap jendela 2016 blok, bukan pada perbedaan antara blok terakhir jendela sebelumnya dan blok terakhir jendela saat ini. Cara perhitungan ini menciptakan kemungkinan untuk serangan distorsi waktu.
Prinsip Serangan Distorsi Waktu
Serangan distorsi waktu pertama kali ditemukan sekitar tahun 2011. Dalam serangan ini, diasumsikan bahwa penambangan sepenuhnya terpusat, penyerang dapat memanipulasi timestamp blok dengan cara berikut:
Untuk sebagian besar blok, atur cap waktu untuk maju satu detik dari blok sebelumnya.
Setiap enam blok mempertahankan cap waktu yang sama, lalu menambahkan satu detik pada blok berikutnya.
Di blok terakhir dari setiap periode penyesuaian kesulitan, atur cap waktu ke waktu dunia nyata.
Stempel waktu blok pertama dari siklus penyesuaian kesulitan yang baru diatur kembali ke masa lalu, satu detik lebih awal dari blok kedua terakhir pada siklus sebelumnya.
Operasi ini menyebabkan waktu blockchain semakin tertinggal dari waktu nyata, mengakibatkan penurunan kesulitan yang terus menerus, sehingga penyerang dapat membuat blok dengan sangat cepat, berpotensi menghasilkan banyak Bitcoin.
Dampak dan Kelayakan Serangan
Secara teori, serangan semacam ini dapat mengakibatkan konsekuensi bencana. Dalam kasus ekstrem, kesulitan mungkin terus-menerus dikurangi hingga lebih dari 6 blok dihasilkan per detik. Namun, melaksanakan serangan semacam ini menghadapi banyak tantangan:
Perlu mengendalikan sebagian besar daya komputasi jaringan.
Kehadiran penambang yang jujur akan meningkatkan kesulitan serangan.
Proses serangan sepenuhnya terlihat, mungkin memicu perbaikan darurat.
Aturan MTP dan cap waktu penambang yang jujur akan membatasi efek serangan.
Solusi Potensial
Metode untuk memperbaiki celah ini relatif sederhana, tetapi mungkin memerlukan perubahan protokol soft fork. Salah satu solusi yang diajukan saat ini adalah:
Meminta waktu blok pertama dari siklus kesulitan baru tidak lebih awal dari waktu tertentu sebelum blok terakhir dari siklus sebelumnya (disarankan 2 jam). Aturan sederhana ini dapat mencegah serangan distorsi waktu secara efektif, sambil meminimalkan risiko blok tidak valid yang tidak terduga.
Batasan 2 jam ini kira-kira 0,6% dari waktu target siklus penyesuaian kesulitan, yang sangat membatasi kemampuan untuk memanipulasi kesulitan ke bawah. Meskipun ini masih memungkinkan penyerang untuk memanipulasi kesulitan ke bawah sekitar 0,6% setiap siklus, ini hanya perubahan satu kali dan tidak dapat terakumulasi.
Secara keseluruhan, meskipun serangan distorsi waktu secara teoritis memiliki ancaman serius, pelaksanaannya dalam praktik cukup sulit. Dengan pembaruan protokol yang tepat, celah potensial ini dapat dikelola dengan efektif, sehingga 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.
11 Suka
Hadiah
11
4
Bagikan
Komentar
0/400
P2ENotWorking
· 12jam yang lalu
Apa sih, siapa yang mau memecahkan hubungi saya.
Lihat AsliBalas0
FlashLoanLord
· 12jam yang lalu
Seharusnya masalah ini sudah diperbaiki.
Lihat AsliBalas0
HodlBeliever
· 12jam yang lalu
Bankir Blockchain/Pakar Penilaian Risiko/Mempertahankan Analisis Teknis Harga Penutupan Harian Selama 4 Tahun
Dari sudut pandang manajemen risiko dasar, perbaikan adalah hal yang perlu.
Pengungkapan dan Rencana Perbaikan Kerentanan Serangan Distorsi Waktu Protokol Bitcoin
Kerentanan serangan distorsi waktu dalam protokol Bitcoin
Pada tanggal 26 Maret 2025, seorang pengembang Bitcoin mengajukan proposal perbaikan baru yang bertujuan untuk memperbaiki beberapa kerentanan dan kelemahan yang telah lama ada dalam protokol Bitcoin melalui soft fork. Salah satu kerentanan yang patut diperhatikan disebut "serangan distorsi waktu", yang akan menjadi tema yang akan dibahas lebih dalam dalam artikel ini.
Mekanisme Perlindungan Timestamp Bitcoin
Sebelum membahas serangan distorsi waktu, kita perlu memahami aturan perlindungan manipulasi waktu Bitcoin saat ini:
Aturan waktu median yang telah berlalu (MPT): Cap waktu blok harus lebih baru dari waktu median 11 blok sebelumnya.
Aturan waktu blok di masa depan: Stempel waktu blok tidak boleh lebih dari 2 jam lebih awal daripada waktu median rekan sejawat node. Selain itu, selisih maksimum yang diizinkan antara waktu node dan jam sistem lokal adalah 90 menit.
Aturan ini bertujuan untuk mencegah manipulasi berlebihan terhadap cap waktu blok. Namun, karena kebutuhan untuk sinkronisasi blockchain awal, tidak mungkin untuk menerapkan aturan blok masa depan yang serupa untuk sepenuhnya mencegah penggunaan cap waktu di masa lalu. Serangan distorsi waktu memanfaatkan hal ini dengan memalsukan cap waktu yang kembali jauh ke masa lalu untuk melakukan serangan.
Kesalahan perhitungan dalam protokol
Siklus penyesuaian kesulitan Bitcoin terdiri dari 2016 blok, yang secara teoritis sekitar dua minggu waktu. Dalam menghitung penyesuaian kesulitan penambangan, protokol akan menghitung selisih stempel waktu antara blok pertama dan terakhir dalam jendela 2016 blok yang relevan. Namun, ada kesalahan kecil tetapi penting dalam proses perhitungan ini.
Perhitungan yang benar seharusnya adalah: 60 detik * 10 menit * 2015 interval = 1.209.000 detik. Namun yang digunakan sebenarnya adalah: 60 detik * 10 menit * 2016 = 1.209.600 detik. Kesalahan selisih ini menyebabkan waktu target lebih lama 0,05% dari seharusnya, sehingga waktu interval target Bitcoin yang sebenarnya adalah 10 menit dan 0,3 detik.
Meskipun kesalahan 0,3 detik ini tampak sepele, namun ia terkait dengan masalah yang lebih serius. Perhitungan kesulitan didasarkan pada blok pertama dan terakhir dalam setiap jendela 2016 blok, bukan pada perbedaan antara blok terakhir jendela sebelumnya dan blok terakhir jendela saat ini. Cara perhitungan ini menciptakan kemungkinan untuk serangan distorsi waktu.
Prinsip Serangan Distorsi Waktu
Serangan distorsi waktu pertama kali ditemukan sekitar tahun 2011. Dalam serangan ini, diasumsikan bahwa penambangan sepenuhnya terpusat, penyerang dapat memanipulasi timestamp blok dengan cara berikut:
Operasi ini menyebabkan waktu blockchain semakin tertinggal dari waktu nyata, mengakibatkan penurunan kesulitan yang terus menerus, sehingga penyerang dapat membuat blok dengan sangat cepat, berpotensi menghasilkan banyak Bitcoin.
Dampak dan Kelayakan Serangan
Secara teori, serangan semacam ini dapat mengakibatkan konsekuensi bencana. Dalam kasus ekstrem, kesulitan mungkin terus-menerus dikurangi hingga lebih dari 6 blok dihasilkan per detik. Namun, melaksanakan serangan semacam ini menghadapi banyak tantangan:
Solusi Potensial
Metode untuk memperbaiki celah ini relatif sederhana, tetapi mungkin memerlukan perubahan protokol soft fork. Salah satu solusi yang diajukan saat ini adalah:
Meminta waktu blok pertama dari siklus kesulitan baru tidak lebih awal dari waktu tertentu sebelum blok terakhir dari siklus sebelumnya (disarankan 2 jam). Aturan sederhana ini dapat mencegah serangan distorsi waktu secara efektif, sambil meminimalkan risiko blok tidak valid yang tidak terduga.
Batasan 2 jam ini kira-kira 0,6% dari waktu target siklus penyesuaian kesulitan, yang sangat membatasi kemampuan untuk memanipulasi kesulitan ke bawah. Meskipun ini masih memungkinkan penyerang untuk memanipulasi kesulitan ke bawah sekitar 0,6% setiap siklus, ini hanya perubahan satu kali dan tidak dapat terakumulasi.
Secara keseluruhan, meskipun serangan distorsi waktu secara teoritis memiliki ancaman serius, pelaksanaannya dalam praktik cukup sulit. Dengan pembaruan protokol yang tepat, celah potensial ini dapat dikelola dengan efektif, sehingga lebih meningkatkan keamanan dan stabilitas jaringan Bitcoin.
Dari sudut pandang manajemen risiko dasar, perbaikan adalah hal yang perlu.