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

Change: use combined-source RNG for security-sensitive values

Public commit record

What the developer wrote

Authored by scgbckbone

55/100 · Thin
Change: use combined-source RNG for security-sensitive values
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Names security-relevant behavior explicitly! No meaningful explanatory body
The short version

What changed, and why it matters

This commit changes how the COLDCARD hardware wallet generates random numbers used to protect backups, encrypted files, and two-factor authentication secrets. Previously these sensitive values were produced using only the STM32 chip's built-in random number generator (TRNG). Now they are produced through a stronger combined method: a Hash-DRBG (a NIST-style deterministic random-bit generator) that is seeded from both secure elements and the TRNG. The change is defensive hardening rather than a fix for a known exploitable bug, but it reduces the risk that a weakness in the STM32 TRNG alone could weaken user secrets.

Recommended action

Treat this as a security-hardening change. Verify that ngu.random.bytes() is indeed implemented as a Hash-DRBG seeded from both secure elements and the STM32 TRNG, and that the DRBG is reseeded appropriately. Review remaining ckcc.rng_bytes() callers to ensure raw TRNG is only used for non-secret purposes as claimed. No immediate user action is required, but the change should be included in the next release notes.

Security signals we found

01

RNG source changed from single TRNG to combined-source Hash-DRBG for secrets

02

Backup password entropy source hardened

03

Encrypted backup salt/IV entropy source hardened

04

2FA secret entropy source hardened

05

Changelog explicitly frames change as security-relevant ('TRNG-seeded SHA-256 Hash-DRBG for backup passwords, encryption salt/IV, and 2FA secrets')

06

No removal of existing ckcc.rng_bytes() calls outside these paths in the diff

Risk score

Why this scored 46/100

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