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

Reject messages that include the wrong type of signatures (#3368)

Public commit record

What the developer wrote

Authored by Fabrice Drouin

86/100 · Strong
Reject messages that include the wrong type of signatures (#3368)

Signatures can either be standard signatures, for non-taproot channels, or partial signatures for taproot channels.
Here we reject messages that include signatures that don't match the channel commitment format.
This will fix an error where, for non-taproot channels, when our peer sends a message that contains a valid "single"
signature and an invalid "partial" signature, we would check the correct "single" signature, but store the invalid "partial" signature.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Links an issue, advisory, or supporting reference✓ Names security-relevant behavior explicitly
The short version

What changed, and why it matters

This commit fixes a bug in the Eclair Lightning node where a peer could send a message containing both a correct standard signature and an incorrect partial signature. The old code would verify the correct signature but then store the invalid partial signature for later use. The fix makes Eclair reject messages that include the wrong kind of signature for the channel type, so non-taproot channels ignore partial signatures and taproot channels require partial signatures.

Recommended action

Upgrade Eclair nodes to a version containing this commit. Nodes running older code should be considered at risk of accepting malformed signatures from peers during channel open, commitment signing, and close negotiation. No immediate workaround is described in the commit.

Security signals we found

01

Type-confusion between IndividualSignature and PartialSignatureWithNonce in channel messages

02

Invalid partial signature could be stored after valid individual signature was verified

03

New signatureFor helper enforces commitment-format-aware signature selection

04

Messages with mismatched signature type now rejected instead of accepted

05

Tests added for FundingCreated, FundingSigned, CommitSig, and ClosingSig wrong-signature-type cases

Risk score

Why this scored 60/100

Our methodology →
Potential impact 18/30
Exploitability 12/25
Stealth signal 8/15
Affected reach 10/15
Confidence 8/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.