Batch exchange withdrawal to lightning requires covenants

Posted by David A. Harding

Oct 24, 2023/04:41 UTC

The email discusses the possibility of using swap-in-potentiam (SiP) as an option for a specific scenario. The scenario involves Exchange E wanting to pay users A, B, and C, who each have different counterparties. In this case, E would obtain a public key from each of the users' counterparties (D, E, F), and then confirm a transaction that pays three SiP outputs, one for each pair ({A,D}, {B,E}, {C,F}).

Afterwards, each party would offchain spend their SiP outputs into a standard LN-penalty channel construction and start using it. Ideally, before the SiP expires, each party would be able to drain the channel into their other channels and mutually settle it with just an onchain spend of the SiP output. However, in the non-ideal case, the previously offchain spend of the SiP output would be put onchain.

In the best case, this process involves four transactions: E's one-input, four-output batch withdrawal (with the fourth output being E's change), and three separate one-input, one-output transactions to settle the SiP outputs. It is mentioned that this is the same number and approximate size of transactions that can be achieved with the SIGHASH_ANYPREVOUT|SIGHASH_SINGLE solution outlined in a previous context. However, the SiP solution has an expiry, while the outlined solution allows the channels to remain open indefinitely.

The email also mentions that Eclair already uses SiP, but the provided reference is for other readers to gain more information.

Link to Raw Post
Bitcoin Logo

TLDR

Join Our Newsletter

We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.

Explore all Products

ChatBTC imageBitcoin searchBitcoin TranscriptsSaving SatoshiBitcoin Transcripts Review
Built with 🧡 by the Bitcoin Dev Project
View our public visitor count

We'd love to hear your feedback on this project?

Give Feedback