The whole point of a hardware wallet is that it generates your private key using real, physical randomness — noise from a dedicated chip that no attacker can predict or reproduce. Coinkite's Coldcard, a well-regarded hardware wallet among serious Bitcoin holders, had a firmware build error starting in March 2021 that quietly broke exactly that guarantee. It took until this past summer for anyone to notice, and by the time it was caught, an attacker had already stolen roughly $116 million.

What actually broke

The root cause was a single build configuration flag, MICROPY_HW_ENABLE_RNG, set to zero in firmware version 4.0.1. That flag change caused the wallet's seed-generation code to incorrectly assume hardware randomness wasn't available, and fall back to a weak software pseudorandom generator seeded only from the device's chip serial number and internal timer state — both of which are far more predictable than genuine hardware noise. The practical effect was a collapse in entropy: from a theoretical 128 bits down to as little as 40 bits on Mk3 devices, and around 72 bits on newer Mk4, Mk5, and Q models. At 40 bits of entropy, roughly a trillion possible seeds can be enumerated by a modern GPU cluster in a matter of hours — not the millions of years a properly generated key would require.

How the theft actually happened

The attacks began July 30 and came in four documented waves, hitting more than 5,200 addresses. The first wave alone moved roughly 594 BTC — about $38 million at the time — in just 25 minutes, a pace that only makes sense if the attacker had already pre-computed which weak seeds corresponded to funded wallets before striking. By the time all four waves were tallied, the total came to approximately 1,816 BTC, worth about $116 million.

The nuance that matters for anyone who owns a Coldcard

A firmware patch fixes the bug going forward, but it does nothing to protect a seed that was already generated on the flawed firmware — the weakness lives in the seed itself, not in the device running it today. Anyone who generated a Coldcard seed between March 2021 and whenever they applied the fix should treat that seed as compromised and move funds to a newly generated wallet, full stop. Ledger's Vincent Bouzon summed up the underlying design lesson bluntly: "Seed generation must be anchored in secure hardware, with an architecture that cannot silently downgrade to an untrusted software-based source." Tangem CTO Andrew Lazutkin added a pointed reminder that transparency isn't the same as safety: "Open-source firmware should not automatically be equated with better security."

Does this mean self-custody failed?

No — and it's an important distinction. This was one manufacturer's implementation error, not proof that holding your own keys is inherently riskier than trusting an exchange. A multisignature setup combining keys from different hardware vendors would have been completely unaffected, since an attacker would still need to break more than one manufacturer's random-number generator simultaneously. If anything, the Coldcard bug is a case for diversifying custody hardware the same way investors diversify everything else — not a case against self-custody itself.

Why it matters

For anyone holding a Coldcard, the actionable takeaway is narrow and specific: check when your seed was generated, and if it falls in the affected window, migrate now rather than waiting for a reason to feel urgent — the attackers who exploited this bug clearly did the work to pre-compute weak seeds before striking, and there's no guarantee every affected wallet has already been found. The broader lesson reaches past this one vendor: a single build flag, invisible in normal use and undetected for five years, silently downgraded a security guarantee that thousands of people were relying on without any way to check it themselves. That's a supply-chain and build-process risk that applies to any hardware wallet, not just Coldcard, and it's part of why security researchers keep recommending multisignature setups across different vendors rather than trusting any single manufacturer's randomness absolutely. It's also a reminder that "open-source" and "secure" aren't synonyms, as Tangem's Lazutkin pointed out — Coldcard's firmware was open and auditable the entire time this bug existed, and it still took five years and a nine-figure theft for anyone to catch it.

Further reading

Frequently asked

How do I know if my Coldcard was affected?

If you generated a seed on a Coldcard running firmware between version 4.0.1 (March 2021) and whenever you applied the fix, treat that seed as compromised regardless of device model — the weakness lives in the seed itself, not in the hardware you're using today.

Does updating the firmware fix an already-generated seed?

No. A firmware patch stops the bug from affecting seeds generated going forward, but it can't retroactively fix entropy that was already weak. Anyone with an affected seed needs to move funds to a newly generated wallet, not just update and keep using the old one.

Are other hardware wallet brands affected by this same bug?

No — this was a Coinkite-specific build configuration error (MICROPY_HW_ENABLE_RNG set to zero), not an industry-wide flaw. A multisignature setup spanning different hardware vendors would have been unaffected, since an attacker would need to break more than one manufacturer's random-number generator at once.