Aug 19, 2026
Coldcard Security Flaw: How a Hardware Wallet's Randomness Failure Led to a Massive Bitcoin Theft
Coldcard, a hardware wallet built for dedicated Bitcoin users, supports only Bitcoin, operates offline, relies on open-source code, and is put together in Canada. However, starting in March 2021, certain Coldcard units produced private keys for customers by relying on the device's serial number and its internal clock, instead of the specialized chip meant for generating random numbers. This made those keys considerably simpler to anticipate.
On July 30, a hacker took 594 Bitcoin from roughly 500 dormant wallets within a 25-minute window. Galaxy Research has connected the broader theft to 1,082 Bitcoin spread across 1,196 addresses. By August 2, the figure had climbed to nearly 1,367 Bitcoin, valued at around $88.6 million.
The attacker required no physical access to the wallets. Coldcard's source code is openly accessible, as is data on the Bitcoin blockchain. The attacker seemingly invested several weeks in figuring out the potential keys that the flawed software might have generated. Those keys could then be matched against Bitcoin addresses containing funds. After pinpointing the exposed wallets, the attacker moved the Bitcoin. The actual theft lasted only 25 minutes.
The flaw is more severe than the term bug might imply. Coldcard is wary of the general-purpose randomness in its underlying software, so it encloses the chip's own hardware generator and disables the built-in one. Yet a safety check in a supporting library failed to notice that the built-in generator was turned off. Seed generation fell back to the software alternative, which pulled whatever randomness it could from the serial number and the clock, never collecting new data afterward. A seed is supposed to hold 128 bits of entropy. On the Mk3, it held roughly 40.
In physical terms, a lock maker advertises a million combinations. A manufacturing flaw means one batch can only ever settle on about a thousand of them. The lock still functions and appears identical to every other lock on the shelf. The owner cannot tell the difference. The thief only needs to know which thousand.







