Bitcoin protokolündeki zaman çarpıtma saldırısı açığı
Bitcoin geliştiricisi Antoine Poinsot, 26 Mart 2025'te Bitcoin protokolündeki uzun süredir devam eden birçok açığı ve zayıflığı düzeltmeyi amaçlayan yeni bir iyileştirme önerisi sundu. "Büyük Konsensüs Temizliği" olarak adlandırılan bu yumuşak çatallanma önerisi, daha önce tartıştığımız çift harcama sorununu çözmekle kalmayıp, aynı zamanda daha ciddi bir açığı - "zaman çarpıtma saldırısı" - ele almak için bir çözüm önerdi.
Bitcoin blok zaman damgası koruma mekanizması
Zaman bükme saldırılarını tartışmadan önce, mevcut Bitcoin protokolündeki zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Medyan geçmiş zamanı (MPT) kuralı: Blok zaman damgası, önceki 11 blokun medyan zamanından daha geç olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, düğüm eşitleri arasındaki medyan zamandan 2 saatten fazla olamaz ve düğüm zamanı ile yerel sistem saati arasındaki maksimum izin verilen fark 90 dakikadır.
Bu kuralların amacı, blok zaman damgalarının gerçek zamandan fazla sapmasını önlemektir, ancak başlangıç blok zinciri senkronizasyonunun dikkate alınması gerektiğinden, geçmiş zaman damgalarını tamamen yasaklamak mümkün değildir.
Satoshi Nakamoto'nun hesaplama hatası
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve teorik olarak yaklaşık iki hafta sürer. Ancak, madencilik zorluğu ayarlaması hesaplanırken, protokol pek de doğru bir yöntem kullanmamaktadır. 2016 blok penceresindeki ilk ve son blok arasındaki zaman damgası farkını hesaplar, ancak aslında 2015 blok aralığını hesaplamalıdır. Bu, hedef zamanın olması gerekenin %0.05 daha uzun olmasına yol açar, bu da Bitcoin'in gerçek hedef aralığını tam 10 dakika değil, 10 dakika 0.3 saniye yapar.
Bu küçük hata, gerçek çalışmada belirgin değildir, çünkü Bitcoin'in doğumundan bu yana, ortalama blok aralığı sürekli artan hash gücü nedeniyle 10 dakikadan daha düşük olmuştur.
Zaman Distorsiyonu Saldırısının Prensibi
Zaman bükme saldırısı, Nakamoto'nun zorluk hesaplamasındaki bu hatayı kullanır. Saldırganlar, blok zaman damgalarını manipüle ederek blok zinciri zamanının gerçek zamandan giderek geride kalmasını sağlayabilirler ve bunu protokol kurallarına uygun bir şekilde yapabilirler. Özellikle, saldırganlar şunları yapar:
Çoğu blok için, zaman damgasını bir önceki bloktan sadece 1 saniye daha ileri ayarlayın.
Her altı blokta bir zaman damgası 1 saniye ileri alınır, MPT kurallarına uymak için.
Her zorluk ayarlama döngüsünün son bloğunda, zaman damgası gerçek dünya zamanına ayarlanır.
Yeni zorluk ayarlama döngüsünün ilk blok zaman damgası geçmişe geri döndü ve bir önceki döngünün sondan ikinci bloğundan 1 saniye daha geç.
Bu işlem, zorluğun ikinci ayarlama döngüsünden sonra düşmeye başlamasına neden olacak, bu da saldırganların çok hızlı bir şekilde blok oluşturmasına ve büyük miktarda Bitcoin elde etmesine olanak tanıyacaktır.
Saldırının Etkisi ve Uygulanabilirliği
Teorik olarak, bu tür bir saldırının ciddi sonuçları olabilir, ancak uygulanması birçok zorlukla karşı karşıyadır:
Çoğu ağ hesaplama gücünü kontrol etmeniz gerekiyor.
Dürüst madencilerin varlığı saldırı zorluğunu artıracaktır.
Saldırı süreci açıktır ve acil düzeltmeleri tetikleyebilir.
Zorluk ayarlamasının gerçekleştirilmesi için dört hafta süre gereklidir, bu da bir yanıt süresi sağlar.
Çözüm
Bu açığı düzeltmek için Poinsot'un önerisi, her yeni zorluk ayarlama döngüsünün başlangıcında, ilk bloğun zaman damgasının önceki döngünün son bloğunun zamanından 2 saatten daha erken olmamasını gerektirmektedir. Bu basit kural, zorluğun aşağıya manipüle edilme derecesini etkili bir şekilde sınırlarken, normal ağ dalgalanmalarına uyum sağlamak için yeterli esnekliği korumaktadır.
Bu onarım çözümü, diğer olası çözümlerle (örneğin, zorluk ayarlama algoritmasını tamamen değiştirmek veya MTP kuralını iptal etmek) karşılaştırıldığında daha basit ve temkinlidir; beklenmedik geçersiz blok riskini en aza indirirken, zaman çarpıtma saldırılarını etkili bir şekilde önleyebilir.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
17 Likes
Reward
17
7
Share
Comment
0/400
CryptoComedian
· 11h ago
Kodlar ne kadar değiştirilirse o kadar güzel oluyor, hatalar o kadar çok çıkıyor, yine işe koyulduk.
BTC protokol zaman bükme saldırı açığı: Geliştiriciler savunma önerisi sundu
Bitcoin protokolündeki zaman çarpıtma saldırısı açığı
Bitcoin geliştiricisi Antoine Poinsot, 26 Mart 2025'te Bitcoin protokolündeki uzun süredir devam eden birçok açığı ve zayıflığı düzeltmeyi amaçlayan yeni bir iyileştirme önerisi sundu. "Büyük Konsensüs Temizliği" olarak adlandırılan bu yumuşak çatallanma önerisi, daha önce tartıştığımız çift harcama sorununu çözmekle kalmayıp, aynı zamanda daha ciddi bir açığı - "zaman çarpıtma saldırısı" - ele almak için bir çözüm önerdi.
Bitcoin blok zaman damgası koruma mekanizması
Zaman bükme saldırılarını tartışmadan önce, mevcut Bitcoin protokolündeki zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Medyan geçmiş zamanı (MPT) kuralı: Blok zaman damgası, önceki 11 blokun medyan zamanından daha geç olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, düğüm eşitleri arasındaki medyan zamandan 2 saatten fazla olamaz ve düğüm zamanı ile yerel sistem saati arasındaki maksimum izin verilen fark 90 dakikadır.
Bu kuralların amacı, blok zaman damgalarının gerçek zamandan fazla sapmasını önlemektir, ancak başlangıç blok zinciri senkronizasyonunun dikkate alınması gerektiğinden, geçmiş zaman damgalarını tamamen yasaklamak mümkün değildir.
Satoshi Nakamoto'nun hesaplama hatası
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve teorik olarak yaklaşık iki hafta sürer. Ancak, madencilik zorluğu ayarlaması hesaplanırken, protokol pek de doğru bir yöntem kullanmamaktadır. 2016 blok penceresindeki ilk ve son blok arasındaki zaman damgası farkını hesaplar, ancak aslında 2015 blok aralığını hesaplamalıdır. Bu, hedef zamanın olması gerekenin %0.05 daha uzun olmasına yol açar, bu da Bitcoin'in gerçek hedef aralığını tam 10 dakika değil, 10 dakika 0.3 saniye yapar.
Bu küçük hata, gerçek çalışmada belirgin değildir, çünkü Bitcoin'in doğumundan bu yana, ortalama blok aralığı sürekli artan hash gücü nedeniyle 10 dakikadan daha düşük olmuştur.
Zaman Distorsiyonu Saldırısının Prensibi
Zaman bükme saldırısı, Nakamoto'nun zorluk hesaplamasındaki bu hatayı kullanır. Saldırganlar, blok zaman damgalarını manipüle ederek blok zinciri zamanının gerçek zamandan giderek geride kalmasını sağlayabilirler ve bunu protokol kurallarına uygun bir şekilde yapabilirler. Özellikle, saldırganlar şunları yapar:
Bu işlem, zorluğun ikinci ayarlama döngüsünden sonra düşmeye başlamasına neden olacak, bu da saldırganların çok hızlı bir şekilde blok oluşturmasına ve büyük miktarda Bitcoin elde etmesine olanak tanıyacaktır.
Saldırının Etkisi ve Uygulanabilirliği
Teorik olarak, bu tür bir saldırının ciddi sonuçları olabilir, ancak uygulanması birçok zorlukla karşı karşıyadır:
Çözüm
Bu açığı düzeltmek için Poinsot'un önerisi, her yeni zorluk ayarlama döngüsünün başlangıcında, ilk bloğun zaman damgasının önceki döngünün son bloğunun zamanından 2 saatten daha erken olmamasını gerektirmektedir. Bu basit kural, zorluğun aşağıya manipüle edilme derecesini etkili bir şekilde sınırlarken, normal ağ dalgalanmalarına uyum sağlamak için yeterli esnekliği korumaktadır.
Bu onarım çözümü, diğer olası çözümlerle (örneğin, zorluk ayarlama algoritmasını tamamen değiştirmek veya MTP kuralını iptal etmek) karşılaştırıldığında daha basit ve temkinlidir; beklenmedik geçersiz blok riskini en aza indirirken, zaman çarpıtma saldırılarını etkili bir şekilde önleyebilir.