0

If either party can close a lightning network channel by submitting their version of the balance sheet. What stops one party submitting an old version of the balance that favours them?

Would the Blockchain honour this balance sheet and distribute the locked funds accordingly? How would the miners know that the balance sheet is not the most current one?

1

This "balance sheet" is a Bitcoin transaction which spends a 2-of-2 multisig input and creates 2 outputs, one to each party. The outputs have each party's respective balances. It is known as the commitment transaction.

However, both parties do not have the same transaction. Rather, what they have are different transactions that have different scripts for the outputs, so there are different conditions for spending the outputs.

So for each person in the channel, they have an output that pays the other person, and an output that pays himself. The output that pays the other person can be spent by the other person immediately if this transaction were broadcast. However, the output that pays himself has a special condition: prior to some time delay, anyone who has a specific revocation key can spend the output. After the time delay, either of the person himself or person who has the revocation key can spend the output.

This revocation key is something that the other person in the channel learns when a commitment transaction is revoked and replaced with a new one that has new balances. It is learned in a way that is guaranteed to be atomic, i.e. the revocation key and the new commitment transaction are given by both parties to the other party at exactly the same time, guaranteed (there's some cryptography involved that guarantees this).

So if one person were to broadcast an old commitment transaction, then he would not be able to access the money until the time delay expires. However, during that time, the other person in the channel who now has the revocation key can use that revocation key to spend that output and take the broadcaster's money. So the penalty for broadcasting an old commitment transaction is to lose all of your money.

The blockchain and miners are not involved in this whatsoever. It is entirely based on scripts in the Bitcoin transactions and the ability for the other party to react in time.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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