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

SFT-6378: removed more branching from mnemonic decode process

Public commit record

What the developer wrote

Authored by Matt Gleason

50/100 · Thin
SFT-6378: removed more branching from mnemonic decode process
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
The short version

What changed, and why it matters

This commit tweaks the code that converts a user's BIP39 recovery phrase (mnemonic words) into secret bits inside a hardware wallet. The change removes an 'if' branch during word copying so the loop always writes to the same positions, regardless of how long each word is. The stated goal is to make the copy operation take the same amount of time and perform the same memory accesses for every word length, which can help defend against timing and power-analysis side-channel attacks that might otherwise leak information about the recovery phrase.

Recommended action

Treat as a hardening/security-improvement commit. Review the surrounding mnemonic_to_bits() implementation for remaining variable-time behavior (binary search word lookup, checksum validation, error-path timing) and consider whether a full side-channel audit is warranted. No immediate patch deployment is required solely for this change, but it should be included in the next firmware release.

Security signals we found

01

Branchless, constant-time-style copy of sensitive input words

02

Masking of post-delimiter bytes to zero to avoid information leakage via memory access patterns

03

Removal of conditional stores that depended on word length

04

Comment explicitly describes the copy as constant-time and explains the masking rationale

05

Continued use of dummy iterations for words beyond n to mitigate timing leakage from word count

Risk score

Why this scored 47/100

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