İçeriğe geçin
buybitcoinsmart

Sözlük / İşlemler ve ücretler

Göreli zaman kilidi

Göreli zaman kilidi nedir?
Göreli zaman kilidi, harcadığı coin kendi onayından bu yana belirli sayıda blok veya 512 saniyelik aralık yaşlanana kadar bir işlem girdisini geçersiz kılar.

Tanımlandığı belge: BIP-68.

BIP-68 her girdideki dört baytlık dizi alanına bir konsensüs anlamı verdi, ancak yalnızca sürüm 2 veya üstünü bildiren işlemler için. Kural ağa, 1 Mayıs 2016 tarihinde açılan ve BIP-112 ile BIP-113 yanında yayımlanan, 0 numaralı bit üzerindeki bir BIP-9 sürüm biti dağıtımıyla ulaştı. Bitcoinlerinizi bir kurtarma veya kanal betiği arkasında tutuyorsanız, geri sayım bu bitcoinler her hareket ettiğinde baştan başlar.

Nasıl çalışır

Göreli zaman kilitleri dizi (sequence) alanında kodlanır ve en üstteki bit herhangi bir şeyin olup olmayacağına karar verir.

31 numaralı bit ayarlıyken alanın hiçbir konsensüs anlamı yoktur ve girdi herhangi bir bloğa girebilir. 31 numaralı bit temizken düğümler alana 0x0000ffff maskesini uygular ve geriye kalan 16 biti bir bekleme süresi olarak okur. Birimi 22 numaralı bit seçer. Temizse sayı blokları sayar ve BIP-68 aralığı 0 ile 65.535 blok arası olarak verir, buna 1,25 yıl der. Ayarlıysa sayı 512 saniyelik dönemleri sayar, BIP bu aralığı 33.554.431 saniyenin altında, yaklaşık 1,06 yıl olarak belirtir. Tuhaf görünen 512, bloklar yaklaşık her 600 saniyede bir geldiği için seçildi, böylece iki birim aynı 16 bitte benzer bir süreyi kapsar.

Blok tabanlı n değeri taşıyan bir girdi, harcadığı çıktıyı çıkaran bloktan n blok sonra dahil edilebilir, yani 1 değeri hemen bir sonraki blokta geçerli olur, onu izleyen blokta değil. Zaman tabanlı değerler hiçbir zaman bir saatle karşılaştırılmaz. BIP-68, çıktıyı çıkaran bloktan önceki bloğun geçmiş medyan zamanından ölçer ve inşa edilmekte olan bloktan önceki bloğun geçmiş medyan zamanına göre karşılaştırır; BIP-113 bu değeri son 11 blok zaman damgasının medyanı olarak tanımlar. Ham zaman damgaları yerine medyanlar kullanılır çünkü konsensüs kuralları medyanın tekdüze ilerlemesini garanti eder; bu da bir madencinin bir bloğun saati hakkında yalan söyleyerek ekstra ücret toplamasını engeller.

İki istisna önemlidir. Kurallar bir coinbase işleminin girdisinin dizi alanına hiçbir zaman uygulanmaz. Ve altı konum, 16 ile 21 arası, tanımsız bırakıldı ki sonraki bir yumuşak çatallanma yeni bir alan olmadan ayrıntı düzeyini veya üst sınırı yükseltebilsin.

Nerede görülür

BIP-112 bir göreli zaman kilidini, fonlandıktan 30 gün sonra zaman aşımına uğrayan bir emanet (escrow) sözleşmesiyle işler.

Alice, Bob ve bir emanet aracısı 2-of-3 bir betiği paylaşır. Herhangi ikisi her an harcayabilir; gecikmeden sonra Alice tek başına imzalar. BIP tetikleyici konusunda açıktır: saat, emanet adresine yapılan ödeme onaylanana kadar işlemeye başlamaz. Takvimdeki bir son tarihten tüm farkı budur ve tek bir betiğin her yeni emanete yeniden yazılmadan hizmet etmesinin nedeni de budur.

Kural aynı zamanda mempool'ların nasıl davrandığını da şekillendirir. Bitcoin Core yazılımının dizi kilidi kontrolü mevcut zincir ucunun değil, bir sonraki bloğun yüksekliğine göre çalışır ve onaylanmamış bir üst işlemi o blokta onaylanacakmış gibi ele alır; böylece beklemesi gelecek blokla dolan bir harcama, harcanabilir hale gelmeden biraz önce iletilir. Bu toleransın dışında kuyruk yoktur: olgunlaşmamış bir harcama bekleyen değil, geçersizdir.

Göreli zaman kilidi vs OP_CHECKSEQUENCEVERIFY

Göreli zaman kilidi işlem girdisinde yaşar, OP_CHECKSEQUENCEVERIFY ise coinin betiğinde yaşar ve harcayan girdinin buna uyduğunu kontrol eder.

BIP-68 tek başına kimseyi bağlamaz. Harcamayı inşa eden dizi değerini seçer, dolayısıyla oraya yazılan bir gecikme bir tercihtir, karşı tarafın güvenebileceği bir kural değildir. BIP-112 bu boşluğu alanı betikten okunabilir kılarak kapatır: işlem sürümü 2 altındaysa, girdi dizisinde devre dışı bırakma bayrağı ayarlıysa, iki değer birim konusunda uyuşmuyorsa veya yığındaki sayı maskelenmiş diziyi aşıyorsa opcode başarısız olur. Devre dışı bırakma bayrağını kendisi taşıyan bir yığın değeri opcode'un NOP gibi davranmasını sağlar; bu gelecekteki bir yumuşak çatallanma için kasten bırakılmış bir alandır. Bekleme, ancak bu kontroller yerindeyken bir emanet aracısının veya bir Lightning eşinin güvenebileceği bir şey haline gelir.

Karıştırılmaması gerekenler

Sık sorulan sorular

Göreli zaman kilidi oluşturduğum günden itibaren mi sayılır?

Hayır, harcanan coinin onayından itibaren sayılır. BIP-112 bunu emanet örneğinde açıkça belirtir: saat, emanet adresine yapılan ödeme onaylanana kadar işlemeye başlamaz.

Göreli zaman kilidim neden yok sayılıyor?

Çünkü işlem sürüm 1 bildiriyor ya da girdinin dizi alanının 31 numaralı biti ayarlı. BIP-68 yalnızca sürüm 2 ve üstünden itibaren geçerlidir ve ayarlı bir devre dışı bırakma biti alandaki tüm konsensüs anlamını ortadan kaldırır.

Zamana dayalı bir göreli zaman kilidi saatle mi ölçülür?

Duvar saati zamanıyla değil. Zamana dayalı kilitler iki geçmiş medyan zaman değeri arasında karşılaştırılır ve BIP-113 bu değeri son 11 blok zaman damgasının medyanı olarak tanımlar; konsensüs kuralları bu değerin tekdüze ilerlemesini zorunlu kılar, böylece bir madenci bir işlemi erkenden olgunlaştırmak için bir bloğu geçmişe tarihleyemez.

Sıradaki okuma

İlgili terimler

Daha fazlası: İşlemler ve ücretler

Bu sayfayı İngilizce okuyun