Skip to content

Use a splice's remote funding key for its in-flight commitments - #58

Merged
kwsantiago merged 3 commits into
blake2b-unifiedfrom
splice-remote-fundingkey
Oct 20, 2026
Merged

kwsantiago merged 3 commits into
blake2b-unifiedfrom
splice-remote-fundingkey

Conversation

@kwsantiago

Copy link
Copy Markdown

A peer may give a new funding key for a splice in splice_init/splice_ack. These changes use the splice's own key wherever an in-flight splice's funding output is involved:

  • drop_to_chain() and dev-sign-last-tx sign each in-flight commitment with that splice's remote funding key, falling back to the channel's key when the in-flight has none.
  • channeld passes the splice's remote funding key to hsmd in hsmd_setup_channel.
  • On a mutual close, an in-flight with no splice key (a dual-funded RBF candidate) is watched with the channel's funding key.

Tests: test_splice_force_close_uses_splice_remote_fundingkey force closes with a splice pending after the peer's key changed, and checks the in-flight commitment is accepted by bitcoind; test_rbf_mutual_close_before_lockin mutually closes a dual-funded channel with an RBF candidate pending, then restarts. Both fail without the change.

Changelog-None

@kwsantiago
kwsantiago force-pushed the splice-remote-fundingkey branch from d9cb182 to 410184e Compare October 19, 2026 23:20
@kwsantiago
kwsantiago merged commit 468bd5b into blake2b-unified Oct 20, 2026
89 of 91 checks passed
@kwsantiago
kwsantiago deleted the splice-remote-fundingkey branch October 20, 2026 05:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant