Was passiert im Lightning Network, wenn ein „mittlerer Knoten“ plötzlich für längere Zeit inaktiv wird?

Ich glaube, ich habe ein allgemeines Verständnis dafür, wie das Lightning-Netzwerk funktioniert. Ich hatte jedoch ein wenig Schwierigkeiten zu verstehen, was passiert, wenn ein Knoten in der Mitte eines "Pfads" plötzlich inaktiv oder für lange Zeit offline geht. Um meine Frage zu verdeutlichen, betrachten Sie das folgende Beispiel:

  1. A möchte eine Zahlung von 1 BTC an D leisten.
  2. A findet einen Weg von A --> B --> C --> D.
  3. D generiert ein R und sendet H = hash(R) an A
  4. A erstellt mit B einen HTLC von 1,002 BTC.
  5. B erstellt mit C einen HTLC von 1,001 BTC.
  6. C erstellt HTLC von 1 BTC mit D.
  7. D entsperrt HTLC, erhält 1 BTC und teilt R dann C mit.

Was ist jedoch, wenn C plötzlich offline ist, was bedeutet, dass C nicht da ist, um R von D zu empfangen, und somit den Fluss von R zurück durch den Pfad stoppt? Ich würde davon ausgehen, dass die HTLC's zwischen A und B und B und C auslaufen und somit A und B erstattet werden.

Würde C also verlieren? Hätte A gerade eine "kostenlose" Transaktion durchgeführt? Ich gehe davon aus, dass dies ein schneller Prozess ist, aber ist es wahrscheinlich, dass ein solches Ereignis eintritt, wenn ein mittlerer Knoten in einer LN-Transaktion für lange Zeit ausfällt?

Antworten (2)

Sofern ich den LN nicht falsch verstanden habe, wird der R-Wert öffentlich bekannt gegeben, wenn D die Zahlung akzeptiert, sodass die gesamte Backchain ihre Teile beanspruchen kann.

Ja, das ist mir bewusst, aber sagen wir, D fordert die Zahlung und gibt R und offen, bevor C verschwindet (und für die Dauer des HTLC nicht zurückkommt). Somit kann B Gelder zweimal beanspruchen. Ist das richtig und/oder realistisch? Oder ist der ganze Prozess so schnell, dass dieses Szenario unwahrscheinlich ist?
Ja, wenn C verschwindet, nachdem es den Wert gesendet hat und bevor D den Wert beansprucht - und verschwunden bleibt, bis die Zeitsperre abgelaufen ist, dann kann B den Wert von A beanspruchen und den Wert von B zurückfordern.
Okay, genau so hatte ich mir das vorgestellt. Wie schnell passiert dieser Transaktionsstrom? Wie schnell müsste C die Verbindung trennen, nachdem die Transaktion weitergeleitet wurde, damit dies geschieht? Ich nehme an, ms oder noch weniger.
hängt hauptsächlich von den Netzwerklatenzen der beteiligten Parteien ab. wahrscheinlich in den meisten Fällen unter einer Sekunde, kann aber unter nicht idealen Bedingungen auf einige Sekunden ansteigen.
Ich vermute auch, dass, wenn beispielsweise B versuchen würde, C durch eine Art Angriff zu zwingen, die Verbindung zu trennen, um die doppelte Bezahlung zu erhalten, C die Commitment-Tx ausführen und sich somit aus dem Kanal "ziehen" könnte. Entschuldigung, ich schweife eher in eine Diskussion als in ein Q/A ab.
Wenn Sie dies aus einer nachteiligen Perspektive betrachten, denken Sie daran, dass die Zeitsperre erheblich länger ist und dass C, wenn es die Bedingung erkennt, wahrscheinlich genügend Zeit hat, die Transaktion manuell zu kopieren und von einem anderen Knoten zu senden, was bedeutet, dass dies erfolgreich ist dies als Angriff, bei dem Sie B und D kontrollieren, müssten Sie C völlig handlungsunfähig machen.
Warnungen über die Länge des Kommentarabschnitts erhalten, die sich zu weit ausdehnt. Ich denke, Sie haben mich auf den richtigen Weg gebracht, danke!
LN wird einen Überwachungsdienst haben, C kann ihm ausreichende Informationen geben, damit der Überwachungsdienst das Geld für C einziehen kann, wenn er dies nicht getan hat.

Wenn die Transaktion nicht aufgelöst werden kann, bevor der CLTV-Wert des HTLC aufgebraucht ist, werden die Peers zurückerstattet (die ausstehenden HTLCs werden storniert) und die Transaktion wird storniert.

Wenn C nicht da ist, um R zu erhalten, werden die Gelder nicht verschoben, sodass keine Zwangsschließungen erforderlich sind, aber die Gelder bleiben für diesen Zeitraum auch auf den Online-Kanälen hängen. Die Online-Kanäle können in der Zwischenzeit Zahlungen propagieren, sofern mehr Liquidität verfügbar ist und die Anzahl der ausstehenden HTLC-s unter dem festgelegten Limit liegt.

Sehen Sie sich die Situation an, in der C online wäre, um R zu empfangen, und offline gehen würde, bevor es an B weitergegeben wird, wie in: Was passiert, wenn R nicht von einem der Lightning Network-Knoten offenbart wird? (Zahlungsstornierung)