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

psbt: parse the global unsigned tx without witness data

Public commit record

What the developer wrote

Authored by Sjors Provoost

73/100 · Adequate
psbt: parse the global unsigned tx without witness data

The witness-detecting deserializer accepted witness-serialized
unsigned transactions and misread valid ones with no inputs.
✓ 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 bug in how the wallet interface reads the unsigned transaction embedded inside a PSBT (Partially Signed Bitcoin Transaction). Previously, the parser tried to auto-detect whether the transaction included witness data, which could misread certain valid transactions that had no inputs. Now it explicitly parses the transaction as a non-witness transaction and rejects any PSBT whose unsigned transaction is not serialized exactly that way. This is a correctness and standards-compliance fix that reduces the chance of a malformed or malicious PSBT being misinterpreted.

Recommended action

Review downstream callers that construct or validate PSBTs to ensure they do not rely on the previous lenient parsing. Update to this commit or a release containing it. Consider adding regression tests for edge-case PSBTs with no inputs or with witness-serialized global transactions.

Security signals we found

01

PSBT global unsigned transaction parsing now strictly enforces non-witness serialization

02

New deserialize_without_witness method removes witness-marker auto-detection

03

Adds explicit PSBTSerializationError for invalid or trailing bytes in the unsigned tx field

04

Test vectors updated with additional valid/invalid PSBT cases

Risk score

Why this scored 59/100

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