Sözlük / Geliştirici başvuru kaynağı
PP expires
- PP expires nedir?
- PP expires, bir BIP70 PaymentDetails mesajında, o an geçtikten sonra cüzdanın isteği artık yerine getirmemesini söyleyen isteğe bağlı Unix zaman damgasıydı.
Tanımlandığı belge: BIP-70.
Sabit fiyatlı her Bitcoin faturası bir son tarihe ihtiyaç duyar, çünkü müşteri karar verirken fiyat hareket eder. BIP70 satıcılara bunun için bir alan verdi, 64 bitlik bir Unix zaman damgası, ve onu isteğe bağlı bıraktı. Alışkanlık protokolden uzun yaşadı: anında alım ekranındaki ya da bir Bitcoin ATM'sindeki geri sayım tam olarak aynı işi yapıyor.
Nasıl çalışır
Durum: tarihsel. expires, PaymentDetails mesajının 4 numaralı alanıydı ve Bitcoin Core, BIP70 protokolünü 0.19 sürümünde kullanımdan kaldırdı, ardından 3 Haziran 2020'de 0.20.0 sürümünde sildi. Bugün bu alanı uygulayan hiçbir şey yok.
Mesajda iki saat yan yana duruyordu. time zorunluydu ve satıcının isteği oluşturduğu zamanı kaydediyordu; expires ise isteğe bağlıydı ve isteğin ne zaman geçersiz sayılacağını kaydediyordu. İkisi de 1 Ocak 1970'ten bu yana geçen saniyeleri sayıyordu ve ikisi de işaretsiz 64 bitlik tam sayıydı; bu, işaretli 32 bitlik bir sayacın 19 Ocak 2038'de karşılaştığı duvardan sessizce kaçınıyordu.
Kuralın uygulanması tamamen ödeme yapanın yazılımına bağlıydı. Bir cüzdan zaman damgasını kendi sistem saatiyle karşılaştırıyor ve son tarih geçtikten sonra işlem oluşturmayı reddediyordu; bu da saati yanlış olan bir cihazın ya ölü bir faturayı ödediği ya da geçerli bir faturayı reddettiği anlamına gelir. Alanın hiçbir yönü blok zincirine dokunmuyordu. Süresi geçmiş bir isteği ödeyen işlem de herhangi bir işlem kadar geçerlidir ve satıcının bunu hesaba geçirip geçirmediği, iade edip etmediği ya da sessizce kendine saklayıp saklamadığı hiçbir zaman bir protokol konusu değildi.
Kısa pencereler belirli bir tuzağı beraberinde getiriyordu. Bitcoin ortalama her on dakikada bir blok hedefler, bu yüzden beş dakikalık bir geçerlilik süresi tek bir onay oluşmadan dolabilir ve gerçekten ödeme yapmış bir müşteriyle satıcının yazılımının çoktan kayıttan düştüğü bir faturayı ortada bırakabilirdi.
Nerede görülür
Sabit fiyatlı kotasyonlar Bitcoin satın alımının her yerindedir ve her birinin arkasında bir son kullanma tarihi vardır.
Bir borsadaki anında alım ekranı, bir geri sayımın yanında bir kur gösterir, genellikle birkaç saniye ile birkaç dakika arasında bir yerde. Sürenin dolmasına izin verirseniz kotasyon güncel fiyatla yeniden oluşturulur. Bir Bitcoin ATM'si aynı şeyi daha uzun bir pencerede yapar; makasının (spread) daha geniş olmasının nedeni kısmen budur: işletmeci, makinenin başında geçirdiğiniz süre ne olursa olsun fiyat riskini üstleniyor.
Lightning son tarihi isteğe bağlı olmaktan çıkarıp zorunlu hale getirdi. Bir BOLT11 faturası, son kullanma için bir x alanı taşır ve bu alan yoksa varsayılan 3600 saniyedir, yani bir saat. Bundan daha geç öderseniz düzgün davranan bir düğüm ödemeyi askıda bırakmak yerine reddeder.
Ödeme yapan için pratik tavsiye gösterişsizdir: bir son tarih bağlıysa ücretten kısmayın. Birkaç yüz satoshi tasarruf etmek için eksik ödemek, bir pencereyi kaçırmanın en yaygın yoludur ve geç ulaşan bir işlem, tam da sipariş yerine destek talebine dönüşen durumdur.
PP expires vs locktime
Bir geçerlilik süresi, cüzdan yazılımının uymayı seçtiği bir satıcı isteğiydi; locktime ise ağdaki her düğümün uyguladığı bir kuraldır. İkisi hem farklı güçlerde hem de zıt yönlerde işler. expires, artık ödeme yapılmaması gereken anı işaretliyordu ve hiçbir madenci bunu kontrol etmedi. İşlemin kendisine yazılan locktime ise, işlemin ancak o noktadan sonra bir bloğa dahil edilebileceği bir blok yüksekliğini ya da zamanı belirtir. Biri bir pencereyi kapatır; diğeri bir pencere açar.