Sözlük / Lightning ve katman 2
Ceza işlemi
- Ceza işlemi nedir?
- Ceza işlemi, eşiniz iptal edilmiş bir taahhüt işlemi yayımladığında, zaten elinizde olan iptal anahtarıyla imzalanan ve bir Lightning kanalının tüm çıktılarını alan zincir üstü süpürme işlemidir.
Lightning kanalları iki katılımcısı tarafından denetlenir ve ceza işlemi bu denetimin yaptırımıdır. BOLT 5, bu süpürmeye ana bakiye çıktısı için 160 baytlık bir tanık (witness) verir ve hilekârın zaman kilidi dolmadan 18 blok kala hâlâ onaylanmamışsa bunu her çıktı için ayrı ayrı bölmeyi söyler. Bitcoinlerinizi kanallarda tutuyorsanız, bakiyenizi geri saran bir eşe karşı sizi koruyan şey bu işlemdir.
Nasıl çalışır
Bir ceza işlemi, sahibinin size alma hakkını çoktan devrettiği çıktıları harcar.
Bir kanaldaki bakiye her hareket ettiğinde, her taraf yerine geçtiği durumun arkasındaki sırrı bırakır. Bu sırrı elinizde tutarsanız, eşinizin eski taahhüt işlemi için iptal özel anahtarını türetebilirsiniz; bu, o işlemin onların tarafını açan anahtardır. BOLT 5 sonucu tek satırda verir: bir düğüm, iptal özel anahtarına sahip olduğu bir taahhüt işlemini keşfettiğinde, fonlama işleminin çıktısı çözüme kavuşur. Müzakere edilecek bir şey kalmaz.
Neyi süpüreceğiniz, eski taahhüdün ne taşıdığına bağlıdır. Şartname, hilekârın ana çıktısını iptal anahtarıyla çözmenizi, sunduğu her ödemeyi üç yoldan biriyle çözmenizi (taahhüdü iptal anahtarıyla harcamak, ödeme ön imajını biliyorsanız onunla harcamak ya da onlar yayımladıktan sonra HTLC-timeout işlemini harcamak) ve HTLC-success ile HTLC-timeout işlemlerini de iptal anahtarıyla çözmenizi emreder. Ayrıca, oradayken ön imajı girdi tanığından çıkarmanızı söyler, çünkü kaybetmek üzere olduğunuz bir ödeme hâlâ sizden önceki atlamadan talep edilebilir olabilir.
Üç tanık biçimi bunların hepsini kapsar ve BOLT 5 her birinin boyutunu verir: ana bakiye çıktısı için 160 bayt, sunulan bir ödeme için 243 bayt, kabul edilen bir ödeme için 249 bayt. Girdinin kendi ağırlığı olan 164 ekleyin; talep edilen her çıktı 324, 407 veya 413 ağırlığa mal olur. İşlemin geri kalanı 53 baytlık tanık dışı veri artı 2 baytlık tanık başlığıdır. Aynı taahhütten gelen kendi ana çıktınızı da ekleyebilirsiniz; bu 272 ekler ve esas olarak ödediğiniz ücreti düşürmek içindir.
Bir ceza işleminin olmadığı iki şey vardır. Otomatik değildir: Bitcoin kimseyi cezalandırmaz ve süpürme yalnızca sizin çalıştırdığınız ya da tuttuğunuz bir yazılım eski işlemin onaylandığını görüp hilekârın zaman kilidi dolmadan tepki verirse gerçekleşir. Ayrıca ücretsiz de değildir. Süpürme, diğer her işlem gibi geçerli ücret oranını öder, bu yüzden içindekini boşaltma maliyetinden daha az tutan bir kanalı savunmaya değmez, kurallar neye izin verirse versin.
Bitcoin satın alırken bu neden önemli
Bir ceza işlemi sizi yalnızca kendi taahhüt işlemlerinizi elinizde tuttuğunuz bir cüzdanda korur; bu da kolay Lightning uygulamalarının çoğunu eler.
Bu sitedeki 41 cüzdan incelemesi tam olarak bu çizgide ayrılır. Phoenix cüzdanı, telefonda gerçek bir kendi kendine saklamalı Lightning düğümü çalıştırır, böylece cezalandırma mekanizması size ait olur ve izleme görevi de size düşer: ACINQ kurtarma yolunda kanalı zorla kapatıp yaklaşık 720 blok, yani yaklaşık beş gün beklemeniz gerekir, ancak ondan sonra kanal fonları zincir üstünde size ait olur. BlueWallet cüzdanı yalnızca Bitcoin destekler ve zincir üstünde alışılmadık derecede yeteneklidir, ancak Lightning tarafı bir LNDHub sunucusundaki hesaptır ve o sunucu size ait değilse operatör bu bitcoinleri taşıyabilir, dolayısıyla kimseyi onunla cezalandırabileceğiniz bir taahhüt işleminiz yoktur. Wallet of Satoshi cüzdanı da varsayılan modunda saklamalıdır; burada öneri yerine 2,7 puanında yer almasının bir nedeni de budur.
Bunu bir hüküm değil, bir değiş tokuş olarak okuyun. Saklamalı Lightning, hile yapan eşleri tehdit listenizden siler ve yerine hizmeti dondurabilen ya da geri çekebilen tek bir şirket koyar. Kendi kendine saklamalı Lightning ise size ceza işlemini ve uyanık olma yükümlülüğünü verir. Her iki tarafta da insanları yakalayan hata, eski bir kurtarma ifadesi yedeğini yeniden kullanmaktır: on iki kelime zincir üstü bitcoinleri geri yükler ve hangi kanal durumunun güncel olduğunu bilmez, bu yüzden yayımladığınız taahhüt eski olur ve ardından gelen ceza işlemi size yönelir.
Phoenix kanalında iptal edilmiş bir kapanış
Diğer uçtaki düğüm geçen haftadan bir taahhüt yayımladığında hâlâ üç ödemenin yolda olduğu bir Phoenix kanalı düşünün.
Yazılımınız txid'yi tespit eder, iptal anahtarını türetir ve tek bir süpürme oluşturur. Ağırlığı hilekârın ana çıktısı için 324, kabul edilen üç ödeme çıktısının her biri için 413, kendi ana çıktınızı eklemek için 272, 53 baytlık işlem gövdesinin dört katı ve 2 baytlık bir başlık: 2.049 ağırlık birimi, yani yaklaşık 512 sanal bayt. Onların parası, kanal açıldığında iki tarafın anlaştığı göreli zaman kilidinin arkasındadır ve bu tür gecikmeler dakikalarla değil günlerle ölçülür: Phoenix cüzdanında zorla kapanıştan kurtulmak yaklaşık 720 blok, yani yaklaşık beş gün sürer. Sizin payınız ise bir madenci işleminizi aldığı anda harcanabilir olur.
BOLT 5 üst sınırı da hesaplar. Standart bir işlem için 400.000 maksimum ağırlık ve 413 olan en büyük girdi karşısında, tek bir ceza işlemi 966 ödeme çıktısına ulaşır; bu, eşler arası protokolün hâlihazırda izin verdiği taraf başına 483 bekleyen ödemenin iki katıdır, yani tamamen dolu bir kanal bile tek seferde boşaltılabilir.
Sonra yapmamak için sebep gelir. Kanalın anchor çıktıları kullandığı durumlarda, hilekârın kendi ödeme işlemleri SIGHASH_SINGLE ve SIGHASH_ANYONECANPAY ile imzalanır, böylece kendi girdilerini ekleyip birleştirilmiş süpürmenizi mempool'da, ana çıktılarındaki zaman kilidi dolacak kadar uzun süre tutabilirler. O çıktının süresi dolmaya güvenlik gecikmesinden daha az kalmışken onay gelmediyse, işi bölmeniz söylenir (BOLT 5 bu aralığı düğüm ilkesine bırakır ve 18 blok önerir): iptal edilen her çıktı için bir ceza işlemi, her biri onaylanana kadar ücreti artırılarak. Sıfır ücretli taahhütlerde bunların her biri ayrıca sürüm 3 işlemlerinin taşıdığı 10.000 sanal bayt sınırının içinde kalmalıdır, yoksa hiçbir zaman madencilere ulaşamayabilir.
Ceza işlemi vs zorla kapanış
Zorla kapanış, bir kanaldan herhangi bir tek taraflı çıkıştır; ceza işlemi ise dürüst olmayan bir çıkışa verilen yanıttır.
Zorla kapanışların çoğu sıradandır. Bir eş çevrimdışı olmuştur, bir ödeme son tarihi yaklaşmıştır, birinin düğümü güncel durumu yayımlamıştır ve gecikme geçince iki taraf da hak ettiği bakiyeyi alır. Ceza işlemi yalnızca yayımlanan taahhüdün zaten iptal edilmiş olduğu dar durumda vardır ve payı değil kanalın tamamını alır. Her ceza işlemi bir zorla kapanışı izler ve neredeyse hiçbir zorla kapanış bir ceza işlemi üretmez.
Ceza işlemi vs gözetleme kulesi
Ceza işlemi imzalanmış bir Bitcoin işlemidir; gözetleme kulesi (watchtower) ise sizin adınıza bir ceza işlemini yayımlamak için bekleyen bir makinedir.
Kule, iptal edilen txid'nin kısa bir önekini ve o işlem bir blokta görünene kadar şifresini çözemediği bir blobu saklar. İçindeki süpürme, sizin kendi düğümünüz tarafından oluşturulup imzalanmıştır ve herhangi bir şey ters gitmeden önce seçilmiş bir adrese ödeme yapar, bu yüzden bir kule tutmak size anahtar maliyeti getirmez. İkisini karıştırmak yanlış endişeyi doğurur. Hiç kule çalıştırmamak ceza işlemini hiç zayıflatmaz; yalnızca dizüstü bilgisayarınız kapalıyken onu gönderecek kimsenin uyanık olmadığı anlamına gelir.