Oct 17 - Oct 24, 2023
The current method of enabling withdrawals shifts the burden of on-chain transactions to the user's wallet provider, resulting in multiple splice transactions if multiple users withdraw funds. To address this, the suggestion is to batch these transactions into a single transaction without introducing any intermediate transactions. However, a challenge arises as signatures are required from each wallet user for each channel, and if one user fails to complete the protocol, the whole batch must be discarded. One potential workaround is for each wallet user to provide a signature using SIGHASH_SINGLE | SIGHASH_ANYONECANPAY
to create a new funding output with the expected amount. However, this approach has a flaw as the wallet user cannot spend the new funding output since it is also controlled by the wallet provider, opening the possibility of blackmail. The SIGHASH_ANYPREVOUT
covenant resolves this issue by allowing anyprevout signatures for the commitment transaction, making them valid to spend from the batch transaction. Other forms of covenants may also address this problem.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback