Skip to content

Signer: Allow changing channel value and funding pubkey (splicing) #3542

Closed
@optout21

Description

@optout21

Currently when the channel signer is created for a new channel, the channel value is specified, and it is never changed afterwards (SignerProvider, derive_channel_signer). It is assumed that the channel value is constant for the lifetime of a channel. However, this is not the case for splicing. The channel value is used by the signer when signing commitment transactions, but not in the creation of the keys (such as the funding pubkey).

Suggestion(s):

Provide a way to update the channel value in an existing signer. The signer would be kept during splicing (together with the keys), only the channel value would be updated. The initial channel would still be provided at signer creation.

Alternative:

Don't take & store the channel value at all in the Signer, but take it as a parameter in the commitment signing methods.

Currently there is no way to generate a new funding pubkey in channel Signer, only by regenerating the entire Signer, which would change other keys as well (e.g. revocation key).
Provide a way in the Signer to generate (provide?) a new funding key.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions