On July 30th, attackers began draining bitcoin from addresses linked to seeds generated by compromised “cold storage” wallets. The devices, called Coldcards, were manufactured by Coinkite, and were widely viewed as the best choice for those who are paranoid in the extreme about cybersecurity. The fact that it was Coldcard and not some other device that fell victim to this hack rocked the bitcoin world at its foundations.

Galaxy Research tracked at least 15 different attackers who have stolen about 2,000 bitcoins worth about $130 million from 4,385 addresses in just a few hours. The speed and scale of the attack amounted to the worst disaster in bitcoin’s history.

The obvious question after such a catastrophe is whether self-custody itself has failed. Self-custody is promoted by bitcoin enthusiasts because it protects against institutional corruption and counterparty risk. But with this great power comes great responsibility – namely, to be 100% sure that the hardware and software one uses for self-custody of bitcoin is not itself compromised.

Financial sovereignty remains worth pursuing, because custodial risk remains very real. However, the bitcoin community is now coming to terms with the fact that it takes much more technical skill on the part of individuals to be sure their bitcoin is safe in their own custody – an idea that cuts against the notion that anyone, no matter their age, location, or background, can be sovereign over their digital property.

What actually happened in the Coldcard bitcoin hack

Coldcard devices are designed to generate wallet seeds using a hardware chip called a “true random-number generator,” or TRNG. When used properly, this random number essentially hides your bitcoin “in plain sight” but within a space that is incomprehensibly large, and much to big for computers to search. To get a sense of the scale: guessing a bitcoin seed is like finding a single atom in a billion galaxies’ worth of matter.

However, the Coldcard firmware was bypassing the use of this chip, and instead using a software function that was much less random. A seed generated this way is as easy to find as a single atom inside a large virus – a task that modern computing clusters can execute within a few hours.

The flaw in the firmware was hard to find for humans, but easy for AI coding agents. With the recent maturation of powerful AI models for coding, malevolent actors pointed their compute at Coinkite’s open-source repository and found a vulnerability that had escaped human notice for 5 years.

According to Coinkite’s own account, a link-time error caused seed generation to resolve to MicroPython's deterministic Yasmarang pseudorandom-number generator instead of the intended hardware source. The firmware therefore bypassed a functioning hardware generator and produced seeds from a much smaller and more predictable set of possibilities.

The consequences varied by device generation. Coinkite says Mk2 and Mk3 seeds generated on firmware versions 4.0.1 through 4.1.9 may have had roughly 40 bits of effective entropy under current attack assumptions. A separate analysis by Block’s Bitcoin Engineering and Security team found that later Mk4, Mk5, and Q devices added some additional randomness from the secure chip, but the reseeding process retained only four bytes. Coinkite estimates those devices produced about 72 bits of entropy instead of the intended 128.

The reason those numbers matter is to provide assurance that the incident did not break bitcoin’s cryptography, seed phrase technology, or hardware wallets as a category. Attackers exploited a smaller set of possible keys created by one implementation. Once they could generate candidate seeds and compare the resulting addresses with public blockchain data, the attack became an offline search problem.

The Trust Hidden Inside Self-Custody Bitcoin Wallets

Bitcoiners often describe self-custody as removing trust. The phrase captures an important truth because a person holding private keys does not need a bank’s permission to use bitcoin. Yet the Coldcard failure shows why the full trust model is more complicated than the old comforting myth that bitcoiners “don’t trust, verify.”

A hardware-wallet owner relies on the device maker to select sound components, write correct firmware, bind libraries properly, preserve build integrity, and disclose failures quickly. Open-source code reduces that dependence by allowing independent review, though availability alone does not guarantee that anyone has traced every function through every dependency. Coinkite's firmware was public, and this bug remained in the seed-generation path for more than five years. The company also disclosed that a recent AI-assisted security review failed to find it.

Additionally, although Coldcard’s firmware was “code-available," meaning people could read it, it was not “Free and Open Source Software” (known as FOSS) which would mean consumers, businesses, and enterprises could actually use the software for their own purposes. This is significant because only when software is readily usable by others does it face the rigors of millions of pairs of eyes combing over it, trying to find problems. When Coinkite changed their software license away from FOSS a few years ago, they caused a stir in the bitcoin community, many members of which expressed this exact concern. They have been vindicated, to say the least.

Everyday bitcoiners could not reasonably have detected a preprocessor guard that checked whether a configuration value existed while ignoring whether it was enabled. Nor could they inspect which rng_get() symbol the final binary resolved at link time (sound like gibberish? Sure – and that’s the point). A person can verify an address on a device screen and still depend on engineering decisions buried several layers below it.

That reality strengthens the case for treating self-custody as a security discipline. Meaningful verification is distributed across device manufacturers, independent researchers, reproducible-build systems, auditors, wallet developers, and users. Each participant verifies a different layer, and the arrangement becomes resilient when no single failure can expose the entire wallet.

Why Custody Still Carries Greater Concentration Risk

Critics of self-custody can fairly point to the Coldcard victims and ask whether professional custody would have protected them. For many users, a capable custodian does reduce the risks of lost backups, compromised devices, and operational mistakes. The decision has always involved tradeoffs.

Custodians create a different risk structure because they concentrate many clients’ wealth behind one institutional perimeter. Mt. Gox and FTX demonstrated how fraud, insolvency, or operational failure at one company can trap billions of dollars at once. A government can freeze an account in contravention to natural law, a bankruptcy court can delay access to one’s private property or even unjustly confiscate it, and a compliance department can refuse a transaction for reasons of political bias. These are the reasons I have previously defended the right to hold one’s own private keys and questioned single-custodian models for institutional bitcoin.

Self-custody distributes failure across individual wallets. That structure limits systemic exposure, but it transfers responsibility to each owner. The Coldcard episode shows how thousands of individually controlled wallets can still share a correlated vulnerability when they depend on the same firmware path. A private key is independent only when the process that created and protects it is independent enough to resist common failures.

The goal, therefore, is to prevent one vendor, one device, one seed-generation method, or one misplaced backup from becoming decisive. Bitcoin's multi-signature capabilities make this possible. A two-of-three wallet using independently generated keys from different device families can survive the compromise of one signer, provided every spending quorum requires at least one safely generated key.

What Mature Self-Custody Requires

Coinkite has released fixed firmware across affected product lines. Its security advisory warns that installing new firmware cannot add entropy to an existing seed. Affected owners must generate a completely new seed on fixed firmware and migrate funds. At least 50 fair, independent, private dice rolls supplied during the original seed creation may provide an exception. A strong, unique BIP-39 passphrase can create an additional barrier, although Coinkite still recommends migration because the passphrase does not repair the seed.

For the industry, the harder work begins after the emergency migration. Wallet makers need end-to-end tests that confirm the randomness source reached by production binaries, recurring outside audits, reproducible builds, and clearer disclosure of entropy design. Security reviews must cross repository and submodule boundaries because that is exactly where this integration failed.

Users also need custody designs appropriate to the value at risk. A small mobile balance, a retirement-sized holding, and an institutional treasury should not share the same architecture. As the value rises, independent entropy, geographically separated backups, multiple signer implementations, and tested recovery procedures become progressively more reasonable. Complexity introduces its own hazards, so every additional control must be rehearsed until the recovery steps become routine.

Bitcoin self-custody survived the Coldcard disaster because its purpose remains unchanged. It gives individuals an exit from institutional permission and counterparty risk. The incident revealed the engineering and operational obligations attached to that freedom, and the losses were a brutal reminder that private property requires more than possession of a device. Financial sovereignty is worth defending, and sovereignty has always required discipline.