1

I collected some data regarding closing transactions of channels in LN and I see that a small percentage of them have more than two outputs. How is this possible?

An example of such closing transaction type: 1235c0196785ea2e538fb5f3e45caeb17fc457c089a9f4a4bb01f1221539159a

1 Answer 1

2

There are 3 ways to close a channel.

  • The good way: mutual close
  • The bad way: force close
  • The ugly way: revoked close with penalty transaction

In the good case the closing tx should have 2 outputs as you expected. In rate cases even just 1 output.

But in the other two cases a version of the commitment transaction is published. The commitment transactions has additional outputs for pending htlcs that are not settled or timed out yet. So if the channel was routing funds and a force close or protocol breach is happening we can see more than two outputs.

2
  • Can we have output addresses in the bad/ugly way that are not controlled by the two nodes, but by a third party?
    – M_R
    Jun 17, 2020 at 16:28
  • theoretically yes. have a look at upfront_shutdown_script defined in BOLT 02 in the open_channel message Jun 18, 2020 at 20:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.