Bitcoin protokolündeki zaman bükme saldırısı açığı analizi
26 Mart 2025'te, Bitcoin geliştiricileri, Bitcoin protokolündeki uzun zamandır var olan birkaç güvenlik açığını ve zayıflığı düzeltmeyi amaçlayan yeni bir yumuşak çatallama önerisi sundular. Bu güvenlik açıklarından biri "zaman bükme saldırısı" olarak adlandırılmaktadır ve bu makalenin derinlemesine inceleyeceği konudur.
Bitcoin blok zaman damgası koruma mekanizması
Zaman bükme saldırısını tartışmadan önce, mevcut Bitcoin ağındaki zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Medyan geçmiş zaman (MPT) kuralı: Blok zaman damgası, önceki on bir blokun medyan zamanından daha sonraki bir tarih olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, ağ düğümlerinin medyan zamanından 2 saatten fazla önce olmamalıdır. Düğüm zamanı ile yerel sistem saati arasındaki maksimum izin verilen fark 90 dakikadır.
MPT kuralları, blok zaman damgalarının aşırı geriye gitmesini önlerken, gelecekteki blok kuralları zaman damgalarının aşırı ileri gitmesini kısıtlar. Dikkate değer bir nokta, geçmiş zaman damgalarını tamamen engellemek için gelecekteki blok kuralları benzeri bir mekanizmanın uygulanamamasıdır; çünkü bu, başlangıç blok zinciri senkronizasyon sürecini etkileyebilir. Zaman çarpıtma saldırısı, sahte antik zaman damgaları oluşturma olasılığından yararlanmaktadır.
Zorluk ayarlama algoritmasındaki küçük hata
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve 10 dakikalık hedef blok süresi hesaplandığında yaklaşık iki hafta sürer. Madencilik zorluğu ayarlaması hesaplanırken, protokol 2016 blokluk pencere içindeki ilk ve son blokların zaman damgaları arasındaki farkı hesaplar. Bu pencere aslında 2015 blok aralığı içerir (2016'dan 1 çıkarılır). Bu nedenle, teorik olarak kullanılan hedef süre 60 saniye × 10 dakika × 2015 aralık = 1,209,000 saniye olmalıdır.
Ancak, Bitcoin protokolü hesaplamalarda 2016 sayısını kullanmaktadır. 60 saniye × 10 dakika × 2016 = 1,209,600 saniye. Bu, hedef zamanın gerçek ihtiyaçtan %0.05 daha uzun olmasına neden olmaktadır. Başka bir deyişle, Bitcoin'in gerçek hedef blok aralığı 10 dakika değil, 10 dakika 0.3 saniyedir.
Bu küçük fark, pratikte önemli değildir. Aslında, Bitcoin'in doğuşundan bu yana, ortalama blok aralığı yaklaşık 9 dakika 36 saniye civarında kalmış ve bu da 10 dakikadan belirgin şekilde düşüktür. Bunun başlıca nedeni, 2009'dan bu yana ağın işlem gücünün istikrarlı bir şekilde artmasıdır. İşte bu nedenle, son yarılanma olayı 2024 Nisan'ına çekildi, oysa önceden 2025 Ocak'ında gerçekleşmesi bekleniyordu.
Zaman Çarpıtma Saldırısının Prensibi
Zaman bükme saldırısı yaklaşık olarak 2011 yılında ilk kez keşfedildi ve zorluk hesaplamasındaki bir açığı kullandı. Saldırganlar, madencilik zorluğunu azaltmak amacıyla zorluk ayarlamalarını etkilemek için blok zaman damgalarını manipüle ediyor.
Saldırı adımları aşağıdaki gibidir:
Çoğu blok için, saldırgan zaman damgasını bir önceki bloktan yalnızca 1 saniye önce ayarlayacaktır.
Zamanı mümkün olduğunca yavaş ilerletmek için, saldırgan 6 blok boyunca aynı zaman damgasını koruyabilir ve ardından 7. blokta 1 saniye ekleyerek bu döngüyü sürdürebilir.
Her zorluk ayarlama döngüsünün son bloğunda, saldırgan zaman damgasını gerçek dünya zamanı olarak ayarlar.
Bir sonraki zorluk döngüsünün ilk blok zaman damgası, bir önceki döngünün sondan ikinci bloğundan 1 saniye önce olacak şekilde geçmişe ayarlanır.
Bu işlem MPT kurallarına uygundur, çünkü tek bir anormal değer 11 bloktaki medyanı etkilemez. Bu şekilde, blok zinciri zamanının gerçek zamanın gerisinde kalması sağlanır ve zorluk ayarlanır. Saldırganlar, zorluk önemli ölçüde düştükten sonra hızlı bir şekilde çok sayıda blok oluşturabilir ve büyük miktarda Bitcoin elde edebilir.
Saldırının Fizibilitesi ve Zorlukları
Teorik olarak bu tür bir saldırı yıkıcı olsa da, uygulanması bazı zorluklarla karşı karşıyadır:
Çoğu ağ hesaplama gücünü kontrol etmeniz gerekebilir.
Dürüst madencilerin varlığı saldırı zorluğunu artırır.
MTP kuralları ve dürüst zaman damgaları kötü niyetli zaman damgalarının geriye doğru izlenme derecesini sınırlayacaktır.
Eğer dürüst madenciler herhangi bir zorluk ayarlama döneminin ilk blokunu oluşturursa, o dönemdeki saldırılar başarısız olacaktır.
Saldırı süreci kamuya açık bir şekilde görülebilir ve acil bir yumuşak dal ayrıştırma onarımını tetikleyebilir.
Potansiyel Çözümler
Bu açığı düzeltmenin birkaç olası yolu vardır:
Zorluk ayarlama algoritmasını değiştirin, farklı 2016 blok pencereleri arasındaki zaman aralığını hesaplayın ve "bir eksik" hatasını tamamen düzeltin. Ancak bu bir hard fork gerektirebilir.
MTP kuralını iptal edin, her blokta zamanın her zaman ileriye gitmesini isteyin. Ancak bu, zamanın çok uzak bir gelecekte takılı kalmasına neden olabilir.
Yeni kuralların getirilmesi: Yeni zorluk döneminin ilk blok zamanının, önceki dönemin son blok zamanından önceki belirli bir zaman diliminden daha erken olmaması gerekmektedir. Şu anda tartışılan zaman aralığı 10 dakikadan 2 saate kadar değişmektedir.
Son teklifte, geliştiriciler 2 saatlik bir sınır getirmeyi tercih ediyor. Bu süre, zorluk ayarlama döngüsünün hedef süresinin yalnızca %0.6'sını oluşturuyor ve zorluk manipülasyonu alanını etkili bir şekilde sınırlayabiliyor.
Sonuç
Zaman bükme saldırısı, Bitcoin protokolündeki potansiyel bir güvenlik açığını ortaya koydu. Bu tür bir saldırının gerçek hayatta uygulanması birçok zorlukla karşılaşsa da, blockchain teknolojisinin güvenliğine sürekli olarak dikkat etmemiz ve iyileştirmemiz gerektiğini hatırlatıyor. Yeni zaman damgası kurallarının getirilmesiyle, Bitcoin topluluğu bu açığı ortadan kaldırmak ve ağın istikrarını ve güvenliğini daha da artırmak için çaba sarf ediyor.
View Original
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.
23 Likes
Reward
23
5
Share
Comment
0/400
NFTArchaeologis
· 07-11 18:01
Sanki başka bir dünyadan gelen elektronik eserler, blokların adımlarını ve akıllı evrimin izlerini kaydediyor...
View OriginalReply0
LootboxPhobia
· 07-11 09:28
Açıklar kapatıldı, yükseliş artık stabil.
View OriginalReply0
TheShibaWhisperer
· 07-11 09:27
Herkes bunun büyük bir yükseltme olduğunu biliyor, çoktan geçildi.
View OriginalReply0
ChainWanderingPoet
· 07-11 09:23
Bu, zorluk algoritmasını değiştirmek gerekecek değil mi? Görünüşe göre bir kez daha uğraşmamız gerekecek~
Bitcoin protokolü zaman bozulma saldırısı açığını onardı Yeniden Hedefleme Zorluğu algoritması büyük bir güncelleme alabilir
Bitcoin protokolündeki zaman bükme saldırısı açığı analizi
26 Mart 2025'te, Bitcoin geliştiricileri, Bitcoin protokolündeki uzun zamandır var olan birkaç güvenlik açığını ve zayıflığı düzeltmeyi amaçlayan yeni bir yumuşak çatallama önerisi sundular. Bu güvenlik açıklarından biri "zaman bükme saldırısı" olarak adlandırılmaktadır ve bu makalenin derinlemesine inceleyeceği konudur.
Bitcoin blok zaman damgası koruma mekanizması
Zaman bükme saldırısını tartışmadan önce, mevcut Bitcoin ağındaki zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Medyan geçmiş zaman (MPT) kuralı: Blok zaman damgası, önceki on bir blokun medyan zamanından daha sonraki bir tarih olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, ağ düğümlerinin medyan zamanından 2 saatten fazla önce olmamalıdır. Düğüm zamanı ile yerel sistem saati arasındaki maksimum izin verilen fark 90 dakikadır.
MPT kuralları, blok zaman damgalarının aşırı geriye gitmesini önlerken, gelecekteki blok kuralları zaman damgalarının aşırı ileri gitmesini kısıtlar. Dikkate değer bir nokta, geçmiş zaman damgalarını tamamen engellemek için gelecekteki blok kuralları benzeri bir mekanizmanın uygulanamamasıdır; çünkü bu, başlangıç blok zinciri senkronizasyon sürecini etkileyebilir. Zaman çarpıtma saldırısı, sahte antik zaman damgaları oluşturma olasılığından yararlanmaktadır.
Zorluk ayarlama algoritmasındaki küçük hata
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve 10 dakikalık hedef blok süresi hesaplandığında yaklaşık iki hafta sürer. Madencilik zorluğu ayarlaması hesaplanırken, protokol 2016 blokluk pencere içindeki ilk ve son blokların zaman damgaları arasındaki farkı hesaplar. Bu pencere aslında 2015 blok aralığı içerir (2016'dan 1 çıkarılır). Bu nedenle, teorik olarak kullanılan hedef süre 60 saniye × 10 dakika × 2015 aralık = 1,209,000 saniye olmalıdır.
Ancak, Bitcoin protokolü hesaplamalarda 2016 sayısını kullanmaktadır. 60 saniye × 10 dakika × 2016 = 1,209,600 saniye. Bu, hedef zamanın gerçek ihtiyaçtan %0.05 daha uzun olmasına neden olmaktadır. Başka bir deyişle, Bitcoin'in gerçek hedef blok aralığı 10 dakika değil, 10 dakika 0.3 saniyedir.
Bu küçük fark, pratikte önemli değildir. Aslında, Bitcoin'in doğuşundan bu yana, ortalama blok aralığı yaklaşık 9 dakika 36 saniye civarında kalmış ve bu da 10 dakikadan belirgin şekilde düşüktür. Bunun başlıca nedeni, 2009'dan bu yana ağın işlem gücünün istikrarlı bir şekilde artmasıdır. İşte bu nedenle, son yarılanma olayı 2024 Nisan'ına çekildi, oysa önceden 2025 Ocak'ında gerçekleşmesi bekleniyordu.
Zaman Çarpıtma Saldırısının Prensibi
Zaman bükme saldırısı yaklaşık olarak 2011 yılında ilk kez keşfedildi ve zorluk hesaplamasındaki bir açığı kullandı. Saldırganlar, madencilik zorluğunu azaltmak amacıyla zorluk ayarlamalarını etkilemek için blok zaman damgalarını manipüle ediyor.
Saldırı adımları aşağıdaki gibidir:
Bu işlem MPT kurallarına uygundur, çünkü tek bir anormal değer 11 bloktaki medyanı etkilemez. Bu şekilde, blok zinciri zamanının gerçek zamanın gerisinde kalması sağlanır ve zorluk ayarlanır. Saldırganlar, zorluk önemli ölçüde düştükten sonra hızlı bir şekilde çok sayıda blok oluşturabilir ve büyük miktarda Bitcoin elde edebilir.
Saldırının Fizibilitesi ve Zorlukları
Teorik olarak bu tür bir saldırı yıkıcı olsa da, uygulanması bazı zorluklarla karşı karşıyadır:
Potansiyel Çözümler
Bu açığı düzeltmenin birkaç olası yolu vardır:
Zorluk ayarlama algoritmasını değiştirin, farklı 2016 blok pencereleri arasındaki zaman aralığını hesaplayın ve "bir eksik" hatasını tamamen düzeltin. Ancak bu bir hard fork gerektirebilir.
MTP kuralını iptal edin, her blokta zamanın her zaman ileriye gitmesini isteyin. Ancak bu, zamanın çok uzak bir gelecekte takılı kalmasına neden olabilir.
Yeni kuralların getirilmesi: Yeni zorluk döneminin ilk blok zamanının, önceki dönemin son blok zamanından önceki belirli bir zaman diliminden daha erken olmaması gerekmektedir. Şu anda tartışılan zaman aralığı 10 dakikadan 2 saate kadar değişmektedir.
Son teklifte, geliştiriciler 2 saatlik bir sınır getirmeyi tercih ediyor. Bu süre, zorluk ayarlama döngüsünün hedef süresinin yalnızca %0.6'sını oluşturuyor ve zorluk manipülasyonu alanını etkili bir şekilde sınırlayabiliyor.
Sonuç
Zaman bükme saldırısı, Bitcoin protokolündeki potansiyel bir güvenlik açığını ortaya koydu. Bu tür bir saldırının gerçek hayatta uygulanması birçok zorlukla karşılaşsa da, blockchain teknolojisinin güvenliğine sürekli olarak dikkat etmemiz ve iyileştirmemiz gerektiğini hatırlatıyor. Yeni zaman damgası kurallarının getirilmesiyle, Bitcoin topluluğu bu açığı ortadan kaldırmak ve ağın istikrarını ve güvenliğini daha da artırmak için çaba sarf ediyor.