Wer trägt die Transaktionsgebühr für die Abrechnung von HTLC im Lightning Network?

Angenommen, es besteht ein Kanal zwischen Alice und Bob, in dem Alice 0,0001 BTC an Bob übertragen möchte. Alice macht die HTLC-Zahlung an Bob abhängig vom Geheimnis für den Zahlungs-Hash innerhalb einer Zeitsperre von sagen wir 100 Blöcken. Also haben Alice und Bob jetzt jeweils eine Kopie der Commitment-Transaktion. Angenommen, Alice beschließt, den Kanal bei der 50. Blockhöhe zu schließen, indem sie ihre Kopie der Verpflichtungstransaktion rundsendet, die zwei Ausgaben hat: HTLC-Erfolg und HTLC-Zeitüberschreitung. Sie trägt also die Transaktionsgebühr der Verpflichtungstransaktion. Jetzt kann Bob die HTLC-Erfolgstransaktion sofort ausgeben, indem er das Preimage des Zahlungshashs und seine Signatur verwendet. Nun erhöht Bob, um zu garantieren, dass seine HTLC-Erfolgstransaktion priorisiert wird, die Transaktionsgebühr der HTLC-Erfolgstransaktion (unter Verwendung von Replace-by-fee).

Antworten (1)

TL;DR-Antwort:

  1. Die Gebühr für den HTLC wird von demjenigen getragen, der die Ausgabe beansprucht
  2. Die Gebühr für die Verpflichtungstransaktion wird immer von der Partei getragen, die den Kanal eröffnet hat

Tut mir leid, das zu sagen, aber ich glaube, dass in Ihrer Frage viele Dinge falsch angegeben sind:

  1. Die Gebühr für die Verpflichtungstransaktion wird nicht unbedingt von Alice bezahlt, selbst wenn sie den Kanal zwangsweise schließt. Die Gebühr wird immer von der Person übernommen, die den Kanal eröffnet hat. Dies ist unabhängig davon, wer es schließt und welche Art von Abschluss wir haben.
  2. Der Commitment-Tx hat nicht zwei Ausgänge htlc successund htlc timeout. Es hat 3 Ausgaben: a) eine relativ zeitgesperrte to_local, b) to_remoteund c) die HTLC-Ausgabe, die zwei Bedingungen hat, die ausgegeben werden müssen: eine ist der HTLC-Erfolg und die andere ist die HTLC-Timeout-Transaktion. (Es könnte mehr als eine HTLC-Ausgabe in der Commitment-Transaktion geben, wenn mehrere HTLCs im Flight sind.)

Die Gebühr für die Beanspruchung der HTLC-Ausgabe muss unbedingt von der Person bezahlt werden, die die Ausgabe beansprucht, da die Gelder an sie und an niemand anderen gehen. (Natürlich hätte die Lightning Network-Spezifikation entscheiden können, dass sie aus dem Commitment-Tx hätten genommen werden können, aber ich denke, das wäre eine seltsame und unsaubere Lösung gewesen.) Also ja, in Ihrem Fall wird es von Bob bezahlt.

Beachten Sie, dass die HTLC-Ausgabe wiederum eine Multisig-Adresse ist, um den HTLC-Prozess der zweiten Stufe zu aktivieren. AFAIK ist dies notwendig, um die relativen Timelocks der Commitment-Transaktion von den absoluten Timelocks der HTLCs zu entkoppeln. Soweit ich die Situation verstehe, ist Bob jedoch nicht in der Lage, replace by feedie HTLC-Erfolgstransaktion durchzuführen, ohne Unterschriften von Alice zu erhalten. (Beachten Sie, dass es in der commitment signedNachricht eine Signatur für die Verpflichtungstransaktion gibt, um die Finanzierungstransaktion auszugeben, und dann eine Liste von Signaturen für jeden HTLC, da sich die HTLC in Multisig-Adressen befinden (dies ist auch erforderlich, um die Straftransaktion im Falle der Übertragung einer alten Daher kann Bob ohne die Hilfe von Alice keine neue HTLC-Erfolgstransaktion erstellen.Im Falle eines erzwungenen Schließens nehmen wir an, dass es keine Hilfe gibt.