Data·6 dk okuma

Reorg'lar ve confirmation'lar: kaç block güvenli?

Bir yatırma işlemini alacaklandıran her backend tek bir soruyu yanıtlamak zorundadır: bir işlem üzerinde hareket etmek için ne zaman yeterince finaldir? Bir block'u çok erken final olarak değerlendirin ve bir reorg zaten alacaklandırdığınız bir yatırma işlemini silebilir. Çok uzun bekleyin ve kullanıcıları hayal kırıklığına uğratırsınız. Doğru yanıt zincir başınadır.

Reorg'lar neden olur ki

Neredeyse aynı yükseklikte iki geçerli block üretildiğinde, ağ geçici olarak tepe konusunda anlaşamaz. Üzerine daha fazla block inşa edildikçe bir dal kazanır ve kaybeden daldaki işlemler mempool'a geri döner. Bu, bir saldırı değil, normal konsensüs davranışıdır. Kısa bir ile iki block'luk reorg'lar çoğu zincirde rutin olarak gerçekleşir.

Finality modelleri farklılaşır

Bitcoin gibi proof-of-work zincirlerinin olasılıksal finality'si vardır: daha derin confirmation'lar üssel olarak daha düşük geri döndürme olasılığı anlamına gelir, asla tam olarak sıfır değil. Merge sonrası Ethereum, kabaca her iki epoch'ta bir (~13 dakika) checkpoint'ler aracılığıyla ekonomik finality ekler, ondan sonra geri döndürme stake'in üçte birinin slash edilmesini gerektirir. L2'ler kendi reorg yüzeylerini sequencer artı yerleşim katmanından miras alır. Tek bir eşik hepsine uymaz.

Pratik eşikler

Yaygın üretim ayarları: Bitcoin değere bağlı olarak 3–6 confirmation, Ethereum 12–32 block (veya finalized etiketini bekleyin), yüksek verimli EVM zincirleri block süreleri daha kısa olduğu için orantılı olarak daha fazla block. Yüksek değerli herhangi bir şey için, ham bir block sayısı yerine finalized/justified etiketini esas alın, böylece zincirin kendi finality garantisini miras alırsınız.

Backend'inizde bir reorg tespit etmek

Yalnızca yüksekliği değil, alacaklandırdığınız block hash'ini takip edin. Her yeni head'de geriye gidin ve parent hash'lerinin kaydettiğinizle hâlâ eşleştiğini doğrulayın; bir uyuşmazlık, geçici alacaklandırmaları geri çevirerek ele almanız gereken bir reorg anlamına gelir. Yeni head'lere abone olmak ve hash'leri mutabık kılmak, iş işten geçtikten sonra bir çift-alacaklandırmayı ayıklamaktan daha ucuzdur.

1st Node Engineering

Sıkça sorulanlar

Tamamen güvende olmak için sadece daha uzun bekleyebilir miyim?

Daha uzun beklemek riski düşürür ancak olasılıksal zincirlerde asla sıfıra ulaşmaz ve UX'e zarar verir. Var olan yerlerde bir zincirin finality etiketini kullanmak, basitçe bir block sayısını artırmaktan daha iyi bir kaldıraçtır.

L2'ler reorg yapar mı?

Evet. Merkezi bir sequencer, onaylanmamış işlemleri yeniden sıralayabilir veya düşürebilir ve L2 ayrıca yerleşim katmanına bağlıdır. L2 finality'sini hem sequencer'ın hem de L1 yerleşiminin bir fonksiyonu olarak değerlendirin.

İlgili

Bakiye yükle, anahtarını al, yayına çık.

Self servis. Kripto ya da kartla öde. Krediyle ölçümlenir — ağır ilkel yapılar daha pahalı, basitler ucuz.

API anahtarı al