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

Pass expected_address through QR message signing path

Public commit record

What the developer wrote

Authored by Jack

81/100 · Strong
Pass expected_address through QR message signing path

Mirrors the WYSIWYG-signing assertion that microSD signing already has
(added in #636). Keeps self.address raw (used as expected_address) and
uses a local display_address for stylization in the preview.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Links an issue, advisory, or supporting reference
The short version

What changed, and why it matters

This commit fixes a consistency issue in the QR-code message-signing flow of the Passport hardware wallet. Previously, when signing a message via QR code, the wallet did not pass the user-confirmed address down to the signing code as an explicit 'expected address' check. The microSD signing path already had this safety check. After the change, the raw, verified address is passed through and used to confirm the signature is for the correct address, while a stylized version is still shown on screen. This reduces the risk that a tricked or confused user signs a message with the wrong address.

Recommended action

Treat this as a security-hardening fix and include it in the next firmware release. Review whether any other message-signing flows (e.g., other QR protocols, USB, or Bluetooth paths) similarly omit expected_address. Consider adding regression tests that verify sign_text_file_task receives the raw expected_address for every user-facing signing path.

Security signals we found

01

Adds expected_address validation to a previously unvalidated code path

02

Mirrors an existing security control from another input path (microSD / PR #636)

03

Separates canonical/raw address used for verification from human-readable stylized address used for display

04

Prevents address mismatch between what the user confirms and what the signature actually covers

05

Small, targeted diff in a single signing flow file

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.