AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Moderate 57 Bitcoin

Sign splice shared input when producing holder tx_signatures

Public commit record

What the developer wrote

Authored by Wilmer Paulino

73/100 · Adequate
Sign splice shared input when producing holder tx_signatures

We also remove the `Result` to make it clear that this method does not
support async operations yet and rename the method to clarify that it is
only intended to be used for the shared input of a splice.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit fixes a missing signature in the Lightning splicing feature. When a user and their peer splice a channel (replace the old funding transaction with a new one), the old funding output is spent as a shared input in the new transaction. Previously, when the holder produced their tx_signatures message, they left the shared_input_signature field as None, even though the protocol requires them to sign that shared input. The commit adds that signature, renames the signer method to make its purpose clearer, and removes the Result return type because the operation is synchronous. It also adds state checks so funding signatures are only accepted when the channel is actually expecting them, and turns a debug-only assertion about signing failures into a logged warning.

Recommended action

Treat this as a functional/protocol bug fix with possible security implications for splicing. Users relying on splicing should upgrade to a release containing this commit. No immediate emergency response is indicated absent a disclosed exploit, but downstream integrators should verify their custom EcdsaChannelSigner implementations are updated for the renamed method and changed return type.

Security signals we found

01

Missing cryptographic signature on a splice shared input in holder-generated TxSignatures

02

Protocol correctness fix for Lightning splicing interactive transaction signing

03

Added state-guard checks before accepting funding signatures (API misuse errors)

04

Changed infallible signer API from Result to direct Signature return

05

Replaced debug_assert with log_warn for signing failures in channel manager

Risk score

Why this scored 57/100

Our methodology →
Potential impact 18/30
Exploitability 10/25
Stealth signal 8/15
Affected reach 10/15
Confidence 7/10
Evidence quality 4/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.