Der Funding Output verankert den Kanal
Beim Öffnen entsteht eine On-Chain-Funding-Transaktion mit einer Ausgabe, die nach dem ausgehandelten Kanaltyp kontrolliert wird. Solange sie nicht ausgegeben ist, lassen sich Salden durch Signaturaustausch außerhalb der Blockchain ändern.
Die Kapazität ist der in der Ausgabe gesperrte Bitcoin-Betrag, während sich gerichtete Liquidität verschiebt. Eine Partei kann nur senden, was auf ihrer Seite verfügbar ist; Empfangen braucht nutzbare Liquidität in Gegenrichtung.
Jede Partei hält ein eigenes Commitment
Eine Commitment-Transaktion gibt den Funding Output aus und verteilt den aktuellen Zustand. Jede Seite hält eine Version, die sie einseitig veröffentlichen kann; Scripts und Schlüssel sind daher bewusst asymmetrisch.
Bei einem Update werden neue Signaturen ausgetauscht, bevor der vorherige Zustand widerrufen wird. Die Nachrichtenreihenfolge ist entscheidend: Niemand darf ohne gültige Schließungsmöglichkeit oder mit zwei vorteilhaft veröffentlichbaren Zuständen bleiben.
Ein HTLC verbindet Hash und Zeit
Ein Hashed Time-Locked Contract zahlt einen Zweig aus, wenn das Preimage zum Payment Hash vor Ablauf offengelegt wird, und öffnet danach einen Rückweg. Derselbe Hash über mehrere Hops verleiht der gerouteten Zahlung ein atomares Ergebnis.
Jeder Vermittler setzt einen versetzten CLTV-Ablauf, damit er nach Kenntnis des Geheimnisses Zeit hat, den eingehenden Anspruch notfalls on-chain durchzusetzen. Ein HTLC ist eine Menge von Transaktionsbedingungen und Protokollnachrichten, kein eigenständiger Rechtsvertrag.
Ein alter Zustand muss gefährlich sein
In klassischen Penalty-Kanälen gibt die Veröffentlichung eines alten Zustands eine verzögerte Ausgabe für die Gegenpartei mit Widerrufsgeheimnis frei. Sie muss dies innerhalb der relativen Zeitsperre bemerken und handeln oder die Überwachung sicher delegieren.
Eine kooperative Schließung nutzt eine vereinbarte Abrechnung. Ein Force Close veröffentlicht das jüngste Commitment und kann Wartezeiten, zusätzliche On-Chain-Transaktionen und Gebühren erfordern. Kanalwiederherstellung hängt daher von Zustandsdaten und Backupmodell der Implementierung ab, nicht nur von der Seed Phrase.