lightning-dev

Hold fees: 402 Payment Required for Lightning itself

Hold fees: 402 Payment Required for Lightning itself

Original Postby ZmnSCPxj

Posted on: October 23, 2020 15:26 UTC

In a conversation with Bastien on Lightning-dev mailing list, ZmnSCPxj discussed the possibility of C unfairly delaying D's refund by delaying its own commitment_signed.

While D is the one who decides whether they will be refunded or not, as they are the first to send the commit_sig that removes the HTLC, C can still drop the previous commitment and delay the process by not revoking its previous commitment (revoke_and_ack) and not signing the D-side next commitment (commitment_signed). ZmnSCPxj suggested extending commit_sig with a TLV field indicating "I refunded myself for HTLC N" to help C compute the same commit tx and verify sigs. However, if C can only take the hold fee at this point by dropping on-chain, then on-chain fees and the loss of a viable channel might outweigh the benefits. Moreover, rules involving "SHOULD/MUST fail the channel" have caused issues in interoperability, as seen in the mass channel closes between C-Lightning and lnd nodes due to sudden on-chain fee movements. ZmnSCPxj shared an old post related to this topic for further reference.