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

Merge pull request #1013 from kdmukai/psbt_parser_ownership_scan

Public commit record

What the developer wrote

Authored by Nick Klockenga

78/100 · Adequate
Merge pull request #1013 from kdmukai/psbt_parser_ownership_scan

[security] Reject PSBTs that falsely claim this seed's ownership
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference✓ Names security-relevant behavior explicitly
The short version

What changed, and why it matters

This commit hardens SeedSigner's PSBT (Bitcoin transaction) parser so it no longer trusts a transaction's claim that an output belongs to the user's wallet. Previously, a malicious or buggy transaction could mark a payment to an attacker's address as if it were change going back to the user, potentially tricking the user into approving a theft. The fix re-derives every claimed key from the actual seed and rejects the transaction if the claim does not hold up. It also rejects false claims on inputs and clearly tells the user when the wrong seed was selected.

Recommended action

Treat this as a security fix and include it in the next release. Users should upgrade to a version containing this commit before signing PSBTs from untrusted coordinators. Reviewers should verify that the new exception handlers in psbt_views.py cannot be bypassed and that the ownership scan covers all scope types (legacy BIP32, taproot key-path, and future tapscript leaves).

Security signals we found

01

Fixes fake-change / ownership-spoofing vulnerability in PSBT parsing

02

Adds explicit rejection of false seed-ownership claims on outputs and inputs

03

Adds user-facing warning screens for forged ownership claims

04

Corrects taproot public-key comparison to x-only, avoiding false rejections of valid keys

05

Adds test fixtures and unit/flow tests for forged single-sig, taproot, multisig, and fingerprint-collision cases

Risk score

Why this scored 78/100

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