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

SFT-8098: complete change verification before transaction review

Public commit record

What the developer wrote

Authored by Jacksper13

83/100 · Strong
SFT-8098: complete change verification before transaction review

Reuse the existing check after wallet approval and before transaction details. Keep one verification pass and extend the approval flow regressions.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
The short version

What changed, and why it matters

This commit moves a safety check earlier in the process of approving a Bitcoin transaction on the Passport hardware wallet. Previously, the wallet verified that 'change' outputs (money going back to your own wallet) truly belonged to you only after you had already reviewed the transaction and approved signing. Now that ownership proof happens before the transaction details are shown to the user. This prevents a scenario where a malicious or buggy PSBT (the file describing the transaction) hides a change address that actually belongs to an attacker, because the wallet will refuse to show the review screen if it cannot prove the change is yours. The change is defensive: it closes a window where a user might approve a transaction whose change output has not yet been validated.

Recommended action

Treat this as a security-hardening fix and include it in the next firmware release. Users signing PSBTs—especially multisig ones where change output details are hidden during review—benefit from the earlier validation. No immediate end-user action is required beyond applying the update. Reviewers should confirm that `double_check_psbt_change_task` covers all change output types (P2WPKH, P2TR, multisig) and that no other code path can reach `show_transaction_details` without passing this check.

Security signals we found

01

Change-address verification moved from post-approval signing stage to pre-review stage

02

PSBT change output ownership now proved before user is shown transaction details

03

Sensitive key derivation context closed before transaction review is displayed

04

Unit tests assert mismatched change keys abort flow before review/signing

05

Comment updated to document that change public-key validation happens before review

Risk score

Why this scored 59/100

Our methodology →
Potential impact 18/30
Exploitability 12/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.