What happened
Through 17 to 19 August 2026, Coinkite pushed a batch of changes to the Coldcard firmware repository that rewrite how the device produces the randomness behind a new seed. They are listed in the repository's unreleased changelog under versions 5.6.1 (Mk4, Mk5) and 1.5.1Q (Q), both dated 20 August 2026. They follow the urgent hotfix of 31 July, which told owners that seeds generated on earlier firmware carried "critically low" entropy - about 40 bits on Mk3, and as low as about 72 bits on Mk4, Mk5 and Q, against a stated target of 128. Mk3 owners were told to move funds to new seeds.
What it changes
A hardware wallet generating a seed is doing one job that matters: producing a number nobody can guess. The new changelog treats that job as something to be proved rather than assumed.
Master seed generation now mixes fresh entropy from three sources, the STM32 hardware
generator and both secure elements - instead of relying on those elements only through
boot-time seeding, which itself now uses the full 256-bit digest rather than a 32-bit
truncation. The software generator inside Coinkite's crypto library was swapped from the
Yasmarang algorithm to a SHA-256 Hash_DRBG from NIST SP 800-90A, and backup passwords,
encryption salt and 2FA secrets were
moved onto it.
Two additions speak directly to how July's defect survived five years. A boot-time self-test
"proves rng_get() enters the hardware read path" and stops the boot if it does not, and a
build-time check verifies that the library's random-byte path reaches the hardware
implementation at all. A random number generator that has silently failed produces output
that looks exactly like one that is working, which is why the fix is a test rather than a
correction. Newly generated seeds also now require user-supplied entropy - physical dice,
coin flips, or timed key mashing - added to the hardware sources rather than replacing them.
What it does not change
New firmware does not repair an old seed. Entropy is fixed at the moment the words are generated, so a weak seed stays weak on any version. Affected owners still face a migration: generate a fresh seed on fixed firmware, back it up, test the restore, move the coins on chain, and update whatever inheritance record points at the old backup. That is the whole of self-custody done twice, under time pressure, and it has its own well-documented ways to go wrong.
The checks also prove a path, not a quality. Confirming that code reaches a hardware register says nothing about whether the numbers coming out of that register are good. And a user grinding out dice rolls is trusting the firmware to mix them in as described, the hedge is only worth what the mixing code is worth, which an owner cannot verify from the device's own screen.
Context
The 31 July hotfix stopped the bleeding: it fixed generation going forward and told people to move. What is queued now is the structural version of the same answer, and it arrives alongside a long list of unrelated hardening in the same changelog, much of it credited to outside researchers - including a case where a compromised USB host could rewrite a staged transaction after the owner reviewed it but before the device signed.
