26 Mart 2025'te, Bitcoin geliştiricileri "Büyük Konsensüs Temizliği" adlı bir soft fork önerisi sundu. Bu öneri, Bitcoin protokolünde uzun süre var olan birkaç açığı ve zayıflığı düzeltmeyi amaçlıyor; bunlar arasında daha önce tartıştığımız tekrar eden işlem sorunu ve bu makalede odaklanacağımız "zaman bükülmesi saldırısı" açığı yer alıyor.
Bitcoin blok zaman damgası koruma mekanizması
Zamanda bükülme saldırılarını tartışmadan önce, mevcut zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Ortanca geçmiş zaman (MPT) kuralı: Blok zaman damgası, son on bir bloğun ortanca zamanından daha geç olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, düğüm eşdeğerinin medyan zamanından 2 saatten fazla 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 engellerken, gelecekteki blok kuralları zaman damgalarının aşırı ileri gitmesini sınırlamaktadır. Dikkate değer olan, geçmiş zaman damgalarını engellemek için gelecekteki blok kurallarına benzer bir mekanizmanın uygulanamayacağıdır, çünkü bu başlangıç blok zincirinin senkronizasyonunu etkileyebilir. Zaman çarpıtma saldırısı, sahte antik zaman damgaları oluşturma olasılığından yararlanmaktadır.
Satoshi Nakamoto'nun "bir eksik" hatası
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve 10 dakikalık blok hedefi hesaplandığında yaklaşık iki hafta sürer. Zorluk ayarlamasını hesaplarken, protokol ilgili 2016 blok penceresindeki ilk ve son blokların zaman damgaları arasındaki farkı karşılaştırır. Bu pencere aslında 2015 blok aralığı içerir (yani 2016'dan 1 çıkarılır). Bu nedenle, teorik olarak 60 saniye * 10 dakika * 2015 aralığı = 1.209.000 saniye hedef zaman olarak kullanılmalıdır. Ancak, Bitcoin protokolü 2016 sayısını kullanmıştır; bu da 60 saniye * 10 dakika * 2016 = 1.209.600 saniye sonucunu verir. Bu, tipik bir bir hata olup, Satoshi'nin blok sayısını blok aralığı sayısıyla karıştırmasından kaynaklanıyor olabilir.
Bu hata, hedef zamanı gerekenin %0.05 daha uzun hale getiriyor ve bu da Bitcoin'in hedef blok süresini hafifçe 10 dakika 0.3 saniye uzatıyor. Bu hata önemsiz görünse de, daha ciddi bir sorunla ilgilidir.
Zaman Distorsiyonu Saldırı Prensibi
Zaman bükme saldırısı 2011 yılında ilk kez keşfedildi ve Satoshi Nakamoto'nun zorluk hesaplamasındaki hatasından faydalandı. Saldırganlar blok zaman damgasını manipüle ederek madencilik zorluğunu yapay olarak azaltabilirler.
Saldırı adımları aşağıdaki gibidir:
Çoğu blok için, zaman damgasını bir önceki bloktan sadece 1 saniye ileriye ayarlayın.
Her altı blok aynı zaman damgasını korur, ardından MPT kurallarına uymak için 1 saniye artırılır.
Her zorluk ayarlama döngüsünün son bloğunda, zaman damgasını gerçek dünya zamanı olarak ayarlayın.
Bir sonraki döngünün ilk blok zaman damgası tekrar geçmişe döndü ve bir önceki döngünün sondan ikinci bloğundan 1 saniye daha erken.
Bu işlem, blok zinciri zamanının gerçek zamandan giderek daha geri kalmasına ve zorluğun sürekli artmasına neden olacaktır. Ancak, ikinci ayarlama döngüsünden itibaren zorluk azalmaya başlayacaktır. Saldırganlar, bu mekanizmayı kullanarak hızla çok sayıda blok oluşturabilir ve aşırı Bitcoin ödülleri elde edebilir.
Saldırının Fizibilitesi ve Sınırlamaları
Teorik olarak bu tür bir saldırının büyük etkileri vardır, ancak uygulanmasında bazı zorluklarla karşılaşılmaktadır:
Çoğu ağ hesaplama gücünü kontrol etmeniz gerekiyor.
Dürüst madencilerin varlığı saldırı zorluğunu artıracaktır.
MTP kuralları ve dürüst zaman damgası, kötü niyetli zaman damgalarının geriye alma derecesini sınırlamaktadır.
Eğer dürüst madenciler herhangi bir zorluk ayarlama penceresinin ilk bloğunu üretirse, o döngüdeki saldırılar geçersiz hale gelecektir.
Saldırı süreci herkes tarafından görülebilir ve acil bir yazılım fork onarımını tetikleyebilir.
Potansiyel Çözümler
Bu açığı düzeltmenin birkaç olası yolu var:
Zorluk ayarlama algoritmasını değiştirin, farklı 2016 pencereleri arasındaki zaman aralığını hesaplayın ve eksik hatayı düzeltin. Ancak bu bir hard fork gerektirebilir.
MTP kuralını kaldırın, her blokta zamanın ileriye doğru hareket etmesi gerekmektedir. Ancak bu, zamanın çok uzak bir gelecekte takılması veya sistem saatindeki farklılıklardan kaynaklanan problemlere neden olabilir.
Daha basit bir çözüm, yeni zorluk döneminin ilk blok zamanının, önceki döneminin son blok zamanının belirli bir dakika sayısından daha erken olmamasını talep etmektir. Şu anda tartışılan zaman aralığı 10 dakikadan 2 saate kadar değişmektedir.
Son büyük konsensüs temizleme önerisinde, geliştiriciler 2 saatlik bir kısıtlama önerdiler. Bu süre, zorluk ayarlama döngüsü hedef zamanının yaklaşık %0.6'sıdır ve zorluğun aşağı doğru manipüle edilme alanını etkili bir şekilde sınırlayabilir.
Sonuçta hangi çözüm benimsenirse benimsensin, bu açığın kapatılması Bitcoin ağı'nın güvenliğini ve istikrarını daha da artıracaktır.
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.
24 Likes
Reward
24
8
Share
Comment
0/400
BlockTalk
· 07-27 22:15
Gerçekten de eski btc, bu kadar sağlam.
View OriginalReply0
defi_detective
· 07-27 08:59
Eğlenceli! Zaman yolculuğu, değil mi?
View OriginalReply0
DecentralizeMe
· 07-27 07:12
BTC'ye gelen gerçekten büyük adamdır.
View OriginalReply0
VibesOverCharts
· 07-24 22:46
Tüm gün boşuna uğraşıp durmak tamamen elektrik israfıdır.
View OriginalReply0
CommunityJanitor
· 07-24 22:44
Bana zamanın nasıl çarpıtıldığını anlatan kim var?
View OriginalReply0
MetaReckt
· 07-24 22:33
btc dağ gibi sağlam!
View OriginalReply0
UncleLiquidation
· 07-24 22:30
Rug Pull geri sayımı~
View OriginalReply0
failed_dev_successful_ape
· 07-24 22:29
Madenci pro666 ah zaman oynayarak çiçek bile çıkarabilir.
Bitcoin zaman bükme saldırı açığı analizi: prensip, etkiler ve onarım planı
Bitcoin zaman bükülmesi saldırısı açığı analizi
26 Mart 2025'te, Bitcoin geliştiricileri "Büyük Konsensüs Temizliği" adlı bir soft fork önerisi sundu. Bu öneri, Bitcoin protokolünde uzun süre var olan birkaç açığı ve zayıflığı düzeltmeyi amaçlıyor; bunlar arasında daha önce tartıştığımız tekrar eden işlem sorunu ve bu makalede odaklanacağımız "zaman bükülmesi saldırısı" açığı yer alıyor.
Bitcoin blok zaman damgası koruma mekanizması
Zamanda bükülme saldırılarını tartışmadan önce, mevcut zaman manipülasyonu koruma kurallarını anlamamız gerekiyor:
Ortanca geçmiş zaman (MPT) kuralı: Blok zaman damgası, son on bir bloğun ortanca zamanından daha geç olmalıdır.
Gelecek blok zaman kuralları: Blok zaman damgası, düğüm eşdeğerinin medyan zamanından 2 saatten fazla 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 engellerken, gelecekteki blok kuralları zaman damgalarının aşırı ileri gitmesini sınırlamaktadır. Dikkate değer olan, geçmiş zaman damgalarını engellemek için gelecekteki blok kurallarına benzer bir mekanizmanın uygulanamayacağıdır, çünkü bu başlangıç blok zincirinin senkronizasyonunu etkileyebilir. Zaman çarpıtma saldırısı, sahte antik zaman damgaları oluşturma olasılığından yararlanmaktadır.
Satoshi Nakamoto'nun "bir eksik" hatası
Bitcoin'in zorluk ayarlama döngüsü 2016 blok içerir ve 10 dakikalık blok hedefi hesaplandığında yaklaşık iki hafta sürer. Zorluk ayarlamasını hesaplarken, protokol ilgili 2016 blok penceresindeki ilk ve son blokların zaman damgaları arasındaki farkı karşılaştırır. Bu pencere aslında 2015 blok aralığı içerir (yani 2016'dan 1 çıkarılır). Bu nedenle, teorik olarak 60 saniye * 10 dakika * 2015 aralığı = 1.209.000 saniye hedef zaman olarak kullanılmalıdır. Ancak, Bitcoin protokolü 2016 sayısını kullanmıştır; bu da 60 saniye * 10 dakika * 2016 = 1.209.600 saniye sonucunu verir. Bu, tipik bir bir hata olup, Satoshi'nin blok sayısını blok aralığı sayısıyla karıştırmasından kaynaklanıyor olabilir.
Bu hata, hedef zamanı gerekenin %0.05 daha uzun hale getiriyor ve bu da Bitcoin'in hedef blok süresini hafifçe 10 dakika 0.3 saniye uzatıyor. Bu hata önemsiz görünse de, daha ciddi bir sorunla ilgilidir.
Zaman Distorsiyonu Saldırı Prensibi
Zaman bükme saldırısı 2011 yılında ilk kez keşfedildi ve Satoshi Nakamoto'nun zorluk hesaplamasındaki hatasından faydalandı. Saldırganlar blok zaman damgasını manipüle ederek madencilik zorluğunu yapay olarak azaltabilirler.
Saldırı adımları aşağıdaki gibidir:
Bu işlem, blok zinciri zamanının gerçek zamandan giderek daha geri kalmasına ve zorluğun sürekli artmasına neden olacaktır. Ancak, ikinci ayarlama döngüsünden itibaren zorluk azalmaya başlayacaktır. Saldırganlar, bu mekanizmayı kullanarak hızla çok sayıda blok oluşturabilir ve aşırı Bitcoin ödülleri elde edebilir.
Saldırının Fizibilitesi ve Sınırlamaları
Teorik olarak bu tür bir saldırının büyük etkileri vardır, ancak uygulanmasında bazı zorluklarla karşılaşılmaktadır:
Potansiyel Çözümler
Bu açığı düzeltmenin birkaç olası yolu var:
Zorluk ayarlama algoritmasını değiştirin, farklı 2016 pencereleri arasındaki zaman aralığını hesaplayın ve eksik hatayı düzeltin. Ancak bu bir hard fork gerektirebilir.
MTP kuralını kaldırın, her blokta zamanın ileriye doğru hareket etmesi gerekmektedir. Ancak bu, zamanın çok uzak bir gelecekte takılması veya sistem saatindeki farklılıklardan kaynaklanan problemlere neden olabilir.
Daha basit bir çözüm, yeni zorluk döneminin ilk blok zamanının, önceki döneminin son blok zamanının belirli bir dakika sayısından daha erken olmamasını talep etmektir. Şu anda tartışılan zaman aralığı 10 dakikadan 2 saate kadar değişmektedir.
Son büyük konsensüs temizleme önerisinde, geliştiriciler 2 saatlik bir kısıtlama önerdiler. Bu süre, zorluk ayarlama döngüsü hedef zamanının yaklaşık %0.6'sıdır ve zorluğun aşağı doğru manipüle edilme alanını etkili bir şekilde sınırlayabilir.
Sonuçta hangi çözüm benimsenirse benimsensin, bu açığın kapatılması Bitcoin ağı'nın güvenliğini ve istikrarını daha da artıracaktır.