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

sign: update output logic, rename and document output flags for clarity

Public commit record

What the developer wrote

Authored by Mike Tolkachev

85/100 · Strong
sign: update output logic, rename and document output flags for clarity

Re-fixes change output marking so that it is only ever set if the
output is also marked as a wallet output. Downstream code can thus
check the change bit alone to determine wallet change.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode
The short version

What changed, and why it matters

This commit reworks how a Blockstream Jade hardware wallet labels transaction outputs. The key change is that the 'change' flag is now only set when the output is also confirmed as belonging to the wallet ('is ours'). Previously, downstream code had to check both 'validated' and 'change' bits to safely hide a change output; now it can rely on the 'change' bit alone. The commit also renames the flag from VALIDATED to IS_OURS and adds comments. The stated intent is to prevent a change output from being marked as change unless it is also confirmed as a wallet output, which could reduce the risk of an attacker tricking the device into hiding a payment to an external address.

Recommended action

Treat as a security-hardening fix with potential prior weakness. Review the previous commit that introduced the bug being re-fixed, and verify that all code paths setting OUTPUT_FLAG_CHANGE also set OUTPUT_FLAG_IS_OURS. Consider whether any downstream consumers still check the old two-bit combination and update them. No immediate emergency action is indicated, but a firmware release note should mention the fix.

Security signals we found

01

Change output flag now gated by wallet-ownership flag

02

UI hides change outputs based on single bit with runtime assertion

03

Green 2of3 outputs no longer marked as change because not marked as wallet-owned

04

Rename and documentation of output flags for clarity

05

Commit message explicitly says 'Re-fixes change output marking'

Risk score

Why this scored 59/100

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