56 / 736CHAN

Payment Channel

Platební kanál

Platební kanál umožňuje dvěma stranám opakovaně platit, aniž by každou platbu zapisovaly do blockchainu. Mění se jejich dohoda o rozdělení bitcoinů; možnost vypořádání na blockchainu dává této dohodě váhu. Na takových kanálech stojí Lightning Network.

Payment Channel neboli platební kanál umožňuje měnit rozdělení společně uzamčených bitcoinů pomocí digitálně podepsaných dohod. Podpis potvrzuje souhlas s novým rozdělením; každá taková změna nemusí do blockchainu, veřejného záznamu bitcoinových transakcí. Účastníci přitom mají připravený způsob, jak kanál uzavřít a vypořádat na blockchainu. Zde popisujeme běžný dvoustranný kanál Lightning s revokací: starší dohodu lze odvolat a její pozdější použití postihnout. Jiné konstrukce kanálů mohou mít odlišná pravidla.

Představte si dvě strany, které si průběžně mění nárok na část společně uzamčené částky. Každá platba nepotřebuje vlastní bitcoinovou transakci v bloku. Obě strany si místo toho předají podpisy k novému stavu. Nejde ovšem jen o tabulku, které musejí věřit: mají transakce umožňující vynutit vypořádání podle dohodnutých podmínek. [1] [2]

Funding transakce vloží bitcoiny do kanálu. Její výstup představuje částku s pravidly, kdo ji smí utratit; potvrzení znamená zařazení transakce do bloku. U běžného Lightning kanálu vyžaduje tento výstup podpisy obou stran, tedy 2-of-2. Ještě před zveřejněním financování musí mít účastníci připravenou platnou cestu k jednostrannému uzavření. Obvykle se čeká na potvrzení financování. Režim zero-conf dovoluje za určitých podmínek používat kanál bez čekání na potvrzení. Příjemce tím ale více spoléhá na poskytovatele financování: transakce ještě není potvrzená a může být nahrazena konfliktní transakcí. [2] [3]

Commitment transaction je předem podepsaná transakce pro vypořádání aktuálně dohodnutého rozdělení. Uzel je zde program, který spravuje kanál a jeho aktualizace. Každá strana má vlastní variantu commitment transakce. Při aktualizaci si uzly koordinovaně vyměňují podpisy a revokační tajemství prostřednictvím commitment_signed a revoke_and_ack. Novější dohoda starou podepsanou transakci nezneplatní podle bitcoinového konsensu. Ochrana proti zveřejnění odvolaného stavu proto musí být obsažena v podmínkách výstupů. [2] [3]

U běžného revokačního kanálu čeká strana zveřejňující svůj commitment na vlastní prostředky po dobu to_self_delay. Prodleva se počítá v blocích od potvrzení commitment transakce. Pokud zveřejnila odvolaný stav, druhá strana může využít revokační klíč a převést příslušné výstupy, aby podvodu zabránila. Musí však jednat včas a dostat transakci potvrzenou. Watchtower je služba, která sleduje řetězec a s předem připravenými údaji může reagovat na zveřejnění odvolaného stavu. Ani tato služba ale nezaručuje úspěch a nenahrazuje zálohu. [3] [4]

Sat je zkratka pro satoshi, nejmenší jednotku bitcoinu na řetězci. Kapacita je celková částka v kanálu, nikoli zůstatek každého účastníka. Kanál má například 100000 sat: Alice drží 70000 sat a Bob 30000 sat. Zaplatí-li Alice Bobovi 10000 sat, nový poměr je 60000 sat a 40000 sat. Pro přehlednost zde nepočítáme poplatky ani rezervy. Kapacita se nezměnila, ale Alice nyní může méně odeslat a více přijmout. Skutečné limity ovlivňují také rezervy a rozpracované platby. [6]

Lightning hledá cestu přes více propojených kanálů. HTLC je podmíněná platba: k získání peněz je třeba odhalit tajný údaj, preimage, z něhož lze vypočítat předem známý hash neboli digitální otisk. Časové podmínky umožňují vypořádání i tehdy, když se platba nedokončí. Zprostředkovatelé potřebují likviditu, tedy prostředky dostupné pro odeslání v daném směru, a mohou vybírat poplatky. Přímý kanál s každým obchodníkem tedy nepotřebujete; samotná existence propojení ale nezaručuje použitelnou trasu pro libovolnou částku. [2] [4]

Při společném uzavření, cooperative close, se účastníci dohodnou na uzavírací transakci, rozdělení prostředků a poplatku. Oba ji podepíší a zveřejní na blockchainu. Bývá to jednodušší než jednostranné řešení, nikoli automaticky bezplatné nebo okamžité. I tato transakce potřebuje potvrzení a vhodný poplatek podle situace v síti. [2] [4]

Jednostranné uzavření, force close, umožní zveřejnit vlastní aktuální commitment bez nového souhlasu protistrany. Prostředky ale nemusejí být hned utratitelné: uplatní se čekací podmínky a případné vypořádání HTLC. Mohou být potřeba další transakce a poplatky. Nouzový odchod existuje, ale jeho čas i náklady závisejí na stavu kanálu a podmínkách blockchainu. [3] [4]

Seed Phrase jsou záložní slova, z nichž peněženka obnoví své klíče. Sama ale neobnoví poslední stav otevřeného kanálu, proto se řiďte postupem konkrétní peněženky. Například LND, program pro provoz Lightning uzlu, používá spolu s těmito slovy Static Channel Backup (SCB). Tato statická záloha uchovává údaje potřebné ke kontaktování protistran a žádosti o uzavření kanálů; neobnovuje kanály pro další placení. Obnova tímto postupem závisí také na tom, zda protistrany odpoví. Soubor channel.db naproti tomu obsahuje kanálovou databázi a jeho stará kopie může zachycovat nebezpečně zastaralý stav. Svou skutečnou Seed Phrase nikdy nezadávejte do cizího webu kvůli „opravě“ kanálu. [5]

Zjistěte, kdo drží klíče, kdo sleduje kanály a jak obnovíte přístup při ztrátě zařízení. Custodial znamená, že klíče spravuje poskytovatel služby. Zobrazený Lightning zůstatek u custodial služby nemusí být váš vlastní kanál. U vlastní správy naopak přebíráte odpovědnost za zálohy, dostupnost svého uzlu a reakci na problémy. Kanál šetří zápisy do blockchainu; neodstraňuje všechny provozní povinnosti ani náklady na vypořádání. [4] [5]

Pro nejúplnější obraz čtěte toto heslo společně s Lightning Network, HTLC, Lightningová likvidita, Lightning Watchtower. Opačným směrem na něj odkazují také Potvrzení, Dvojí útrata, Timelock, HTLC.

DOC · 001Lightning Network paperPrimární zdroj DOC · 002BOLT #2 — Channel lifecyclePrimární zdroj DOC · 003BOLT #3 — Transaction and script formatsPrimární zdroj DOC · 004BOLT #5 — On-chain handlingPrimární zdroj DOC · 005Lightning Labs — Disaster recoveryDokumentace DOC · 006Lightning Labs — Managing LiquidityDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení