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

bitcoin: reject 65 bytes signature with sighash 0x00

Public commit record

What the developer wrote

Authored by jrakibi

98/100 · Strong
bitcoin: reject 65 bytes signature with sighash 0x00

According to BIP341, if taproot signature is 65 bytes long, the last byte (sighash)
must be different from 0x00, otherwise, it is invalid.
currently, we are accepting it as a valid signature.
this might also break the roundtrip of from_slice -> serialize

ref: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki#taproot-key-path-spending-signature-validation
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode✓ 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 where the Rust Bitcoin library incorrectly accepted 65-byte Taproot signatures whose final byte was 0x00. Under Bitcoin's BIP-341 rules, such signatures are invalid. Accepting them could let invalid transactions or signatures slip through, and it could break the library's own round-trip serialization (reading a signature in and writing it back out).

Recommended action

Review any code that validates or serializes Taproot signatures with this library to ensure it now rejects 65-byte signatures with sighash 0x00, and verify that no consensus-critical paths relied on the previous lenient behavior.

Security signals we found

01

BIP-341 non-compliance in Taproot signature parsing

02

Invalid signature accepted as valid

03

Potential round-trip serialization inconsistency

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.