Subject: Re: [bitcoin-dev] [Lightning-dev] Inherited IDs - A safer, more powerful alternative to BIP-118 (ANYPREVOUT) for scaling Bitcoin

From: ZmnSCPxj <[email-masked]>
Date: Tue, 21 Sep 2021 02:11:42 +0000

Good morning John Law,

> (at the expense of requiring an on-chain transaction to update
> the set of channels created by the factory).

Hmmm this kind of loses the point of a factory?
By my understanding, the point is that the set of channels can be changed *without* an onchain transaction.

Otherwise, it seems to me that factories with this "expense of requiring an on-chain transaction" can be created, today, without even Taproot:

* The funding transaction output pays to a simple n-of-n.
* The above n-of-n is spent by an *offchain* transaction that splits the funds to the current set of channels.
* To change the set of channels, the participants perform this ritual:
  * Create, but do not sign, an alternate transaction that spends the above n-of-n to a new n-of-n with the same participants (possibly with tweaked keys).
  * Create and sign, but do not broadcast, a transaction that spends the above alternate n-of-n output and splits it to the new set of channels.
  * Sign the alternate transaction and broadcast it, this is the on-chain transaction needed to update the set of channels.

The above works today without changes to Bitcoin, and even without Taproot (though for large N the witness size does become fairly large without Taproot).

The above is really just a "no updates" factory that cuts through its closing transaction with the opening of a new factory.

Regards,
ZmnSCPxj