BS Report

The safest way to store Bitcoin was just hacked...

The safest way to store Bitcoin was just hacked... — Fireship, YouTube, 2026-08-05 · 290,683 views, 4.24M subscribers

2026-08-06 · bullshit-detector 0.13.1

2/10
Solid

The hack story checks out almost line for line; deductions for a compressed timeline on the totals and for calling Coldcard open-source.

Tally: 25 claims extracted, 23 individually source-checked — 19 confirmed, 2 plausible, 2 misleading. 1 unverifiable; 1 not rateable.

Ambiguous: 1 claim dropped before verification — the stolen coins' dollar value: the transcript garbles the spoken figure ("$und00 million"), so it can't be pinned down; the BTC amount it accompanied is claim 2, where the arithmetic context is shown.

What it says (neutral summary)

A five-minute explainer of the July–August 2026 Coldcard incident: a firmware bug meant the hardware wallet's seed phrases were generated by MicroPython's fallback PRNG instead of the device's true RNG for five years, letting attackers brute-force keys offline and drain wallets in waves starting July 30. The video walks through the #ifndef-style root cause, the mempool fee-bidding war between victims and attackers, and Coinkite's response, then closes with a sponsor read for Lovable.

Disclosure

The sponsor anecdote (claim 24) name-drops Claude Code, made by Anthropic — also the maker of the model that ran this check. That row is an anecdote rated ❓ by construction; no verdict in this report turns on the mention. Every source below is named and linked.

Load-bearing claims

#Claim (with timestamp/location)TypeVerdictEvidence
1[00:00] "Cold Card, a securityobsessed airgapped Bitcoin hardware wallet, was hacked" last week [late July 2026]factual✅ confirmed12 URLs → 4 origins: Coinkite's own advisory, Galaxy Research's on-chain tracking, Chainalysis, TRM Labs — four parties with separate access to the chain data. Drains began Jul 30; video published Aug 5 — "last week" holds.
2[00:00] "Since July 30th, attackers have drained over 1,600 Bitcoin" [as of Aug 5]factual✅ confirmed6 URLs → 3 origins: Galaxy Research's running tally — ~1,816 BTC (~$116M) as of Aug 5 — carried by TRM and Fortune, Aug 3; CryptoTimes, Aug 4: 1,596 BTC (~$100M); Coindesk, Aug 3. "Over 1,600" sits inside every count. The spoken dollar figure is garbled in the transcript — see the Ambiguous line; 1,600 BTC ≈ $102M at the Aug 5 price (1,600 × $65,300 = $104.5M).
3[00:00] the coins came "from over 7,000 wallets"factual🟡 plausibleSources conflict. Contemporaneous counts were lower: TRM (Aug 5) says 5,200+ addresses, as does Coindesk (Aug 3). Halborn's post-mortem counts ~7,300 addresses. 7,000+ was ahead of what trackers showed on publication day; a later attribution reached it. Unresolved between same-kind sources → 🟡, both linked.
4[00:00] "without any malware, fishing [phishing], or lead pipes" — no device compromise or user interaction neededfactual✅ confirmedTRM: keys were brute-forced offline "without ever touching the physical device" — weak seed entropy alone; no malware, phishing, or physical access anywhere in the incident record.
5[00:47] victims are "bidding against the hackers in real time to try to buy back their own money"factual✅ confirmed4 URLs → 2 origins: Galaxy's Alex Thorn urged victims to outbid the attacker's replace-by-fee transactions (The Defiant); fee-bidding against a sweep of your own address is exactly "buying back your own money", minus the deed.
6[01:52] "The cold card's firmware runs on micro Python"factual✅ confirmed2 URLs → 2 origins: the incident write-up analyses the MicroPython build directly, as does Halborn; the firmware repo is public.
7[01:40] "for the last 5 years, without them knowing, the cold card never did" [use its own RNG for seed generation]factual✅ confirmed3 URLs → 2 origins: Coinkite confirmed it — "shipped with broken randomness for five years". Bug introduced March 2021, firmware 4.0.x — Coinkite's own advisory (tier 1) and Halborn; Mar 2021 → Jul 2026 = 5 yr 4 mo. Nuance: Mk4/Q/Mk5 mixed in secure-element entropy (~72 bits vs the 128 promised) — weakened, not absent — and Mk1/pre-4.0.0 firmware were unaffected (incident repo).
8[01:52–02:06] "by setting a specific flag to zero, they disabled MicroPython's generator" — but both RNGs exposed a same-named function, the crypto library chose via "an if not defined check", and "because the flag was technically defined just as a zero, the check passed", so MicroPython's RNG generated every seedfactual✅ confirmed2 analyses + the public source: libngu guards on #ifndef MICROPY_HW_ENABLE_RNG — testing existence, not value. Defined-as-0 passes the guard, so libngu binds MicroPython's rng_get(); MicroPython, seeing the 0, compiles its Yasmarang software fallback instead of the STM32 TRNG (incident repo). The video's phrasing is this mechanism, simplified accurately.
9[02:06] on a bare-metal chip the fallback "fakes it using the chip serial number and a timer, both of which are deterministic"factual✅ confirmed3 URLs → 3 origins: Coinkite's own technical backgrounder (tier 1), Block Engineering's analysis — Yasmarang's state is seeded once, from the chip's 32-bit UID (the serial number), the SysTick timer and RTC registers — and Halborn: "seeded with the device UID and the hardware timer value at power-on". Both guessable, as claimed.
10[02:06] you could "loop through all possible combinations of serial numbers and timer values and come away with everyone's keys" — and on July 30 "that's exactly what the attacker did"factual✅ confirmedMechanism as executed: Mk2/Mk3 effective entropy ~40 bits ≈ 1.1×10¹² candidates — ~13 days at 1M keys/s (Halborn). "Everyone's" overreaches only for Mk4/Q/Mk5 seeds (~2⁷², not practically enumerable); the population actually drained was the 40-bit one.
11[02:06] "In under an hour, the first attacker drained over a,000 [1,000] Bitcoin from nearly [1,]200 addresses, hitting the biggest wallets first"factual✅ confirmedGalaxy via The Hacker News: wave 1 = 1,082.65 BTC from 1,196 addresses in 41 minutes — over a thousand, nearly twelve hundred, under an hour all hold. Chainalysis: largest balances first, ~$30M in the first 10 minutes (coverage). A narrower cut counts the opening sweep as 594 BTC / ~500 addresses / 25 min (Coindesk) — a definitional split of the same on-chain events, consistent either way.
12[02:57–03:10] "two more attacks happened over the weekend which pushed the total to nearly 1,800 Bitcoin" "from over 7,000 addresses"factual🟠 misleadingWave structure is right — Galaxy flagged the third wave early Sunday, coins drained Friday midday–Saturday morning (CryptoTimes, Aug 2). But the totals belong after Monday's fourth wave: post-weekend tallies were ~1,367 BTC across 4,585 addresses (Coindesk, Aug 2: ~4,500 addresses, ~$89M); 1,816 BTC / 5,200+ addresses appears only once wave 4 is counted (Coindesk, Aug 3, TRM). Attributing ~1,800 to the weekend inflates the pre-Monday total by about a third; 1,367 ÷ 1,800 ≈ 0.76.
13[03:10] "A Coin Kite CEO apologized and took full accountability"factual✅ confirmed2 URLs → 1 origin: NVK's own statement, Jul 31: "full accountability… I'm sorry and I'm devastated." Independently covered by CBC. The statement itself is the primary record of an apology.
14[03:15] "Bitcoin has no way to rotate a key" — the only fix is a new seed plus an on-chain movefactual✅ confirmedProtocol design, and Coinkite's advisory (tier 1): "Updating the firmware does not change or repair an existing seed" — users must generate a new seed on patched firmware and migrate funds on-chain (THN).
15[03:25] the attacker watches the mempool and can "sign their own competing transaction with the same keys and a higher fee", and miners confirm the highest bidderfactual✅ confirmed3 URLs → 1 origin: Galaxy's Alex Thorn, live during wave 4: "PREVIOUSLY-CONFIRMED TXS SIGNAL RBF OPT-IN, CHECK YOUR FUNDS AND YOU MAY BE ABLE TO RBF YOUR WAY OUT OF THIS" — exactly the same-keys-higher-fee dynamic the video describes (Coindesk, The Defiant).
16[03:40] "a fourth attack went live on Monday morning", and the winning rescue was to "send your rescue transaction directly to a mining pool"factual✅ confirmedAug 3, 2026 was a Monday; the fourth wave was flagged that morning (Coindesk). Same day MARA opened Slipstream to the public — direct-to-pool submission a mempool-watching bot never sees — and researchers pointed to it as the reliable escape. "Only way to win" is mild hyperbole: public-mempool rescues remained outbiddable, not impossible.

Incidental claims

#Claim (with timestamp/location)TypeVerdictEvidence
17[00:00] "the good news is that it's only about half as much as they would have lost if the same thing happened a year ago" [BTC ≈ half its year-ago price]factual✅ confirmedBTC ≈ $65,300 on Aug 5, 2026 (Fortune) vs ~$115K in early Aug 2025 (Yahoo Finance: "roughly $50,000 lower than at this time last year"). 65,300 ÷ 115,000 ≈ 0.57 — "about half" holds.
18[01:03] "A properly generated seed phrase has 128 bits of entropy", and "if you tried a billion guesses per second, the universe would end before you got close"factual✅ confirmedBIP-39 spec: 12 words = 128-bit entropy + 4-bit checksum. The sum: 2¹²⁸ ≈ 3.4×10³⁸ guesses ÷ 10⁹/s ≈ 3.4×10²⁹ s ≈ 1.1×10²² years — eight orders of magnitude past the end of star formation. Arithmetic holds on a sound input.
19[01:30] "Cold Card made by Canadian company Coite [Coinkite]"factual✅ confirmedCP24 and CBC: "devices made by Canadian firm" — Coinkite is Toronto-based.
20[01:35] "It's airgapped"factual✅ confirmedIndependent review: State of Surveillance — "Coldcard Review 2026: Bitcoin-Only, Air-Gapped, Not Open Source"; vendor docs describe the full SD-card PSBT air-gap signing flow — the device never needs a data connection.
21[01:35] it's "open- source"factual🟠 misleadingThe same review's title finishes "…Not Open Source". Firmware was GPLv3 until 2020, then moved to a commons-clause-style licence barring commercial reuse after Foundation forked it; Coinkite itself now says "verifiable" rather than open source (State of Surveillance; Zach Herbert's open letter — tier 4, a competitor, but the licence history is public record). Coldcard's own marketing still says "open-source firmware you can verify yourself" — likely where the video got it. Source-viewable ≠ open-source: kernel of truth, wrong label.
22[04:00] "every unsold device in their warehouse carried the same broken firmware", so Coinkite had to "halt shipments and take their remaining inventory out to the pasture"factual✅ confirmed3 URLs → 1 origin: COLDCARD's own statement: "We halted COLDCARD shipments as soon as we confirmed the vulnerability. All remaining units at our facilities with affected firmware installed were destroyed." Covered by The Record and Bitcoin.com — the pasture, literally.
23[04:40] "Over 50 million projects have already been built with lovable" — sponsor readfactual🟡 plausible4 URLs → 1 origin: Lovable's own figure, announced Aug 5, 2026 in its Cerebras partnership PR — the same day this video ran. TechCrunch (Jun 9) reported the company's 50M-total / 1M-a-week claims, which are at least internally consistent. Tier 4 — the sponsor talking about itself — caps this at 🟡. Sponsored: Lovable is this video's disclosed sponsor.
24[04:20] "I use Lovable's AI development platform to build my own predictions market" — plan mode, a database-policy bug it fixed itself, an MCP server driven from Claude Codeanecdote❓ unverifiable (by construction)A personal build story; nobody outside it can check it. It is coherent with Lovable's shipped feature set, but that checks the scenery, not the story.
25[00:00] "what used to be the safest way to store Bitcoin turned out to be the fastest way to lose it"opinionFraming. "Safest" was a reputation, not a measurement — and the reputation being real is what makes the story land.

Tally: 25 claims extracted, 23 individually source-checked — 19 confirmed, 2 plausible, 2 misleading. 1 unverifiable; 1 not rateable.

Ambiguous: 1 claim dropped before verification — the stolen coins' dollar value: the transcript garbles the spoken figure ("$und00 million"), so it can't be pinned down; the BTC amount it accompanied is claim 2, where the arithmetic context is shown.

Hype signals observed

Incentive analysis

Ad- and sponsor-funded explainer channel. Fireship earns from views and the Lovable read, not from any position on Coldcard, Coinkite, or Bitcoin — there is no product, course, or affiliate link tied to the hack story itself, and the sponsor segment is clearly fenced. The one figure inside the read is the sponsor's own number, announced the same day, and is rated at the sponsor's tier above. Nothing about the hack coverage pays more when exaggerated — which is consistent with how little exaggeration was found.

Bottom line

The story is real and told accurately where it counts: the bug (#ifndef on a defined-as-zero flag), the fallback's UID-and-timer seeding, the five-year window, the wave-one numbers, the RBF bidding war, the direct-to-miner escape hatch, and Coinkite's response all check against primary or near-primary sources. Two blemishes: the weekend narration compresses the timeline so that the post-weekend total sounds a third larger than it was (the numbers themselves are real, the attribution isn't), and "open-source" is a label Coinkite itself stopped using in 2020. The sponsor statistic is the vendor's own figure and should be read as such. As tech-news explainers go, this is what solid looks like.

What a hostile reader would hit first

  1. "Nearly 1,800 Bitcoin… over the weekend" (claim 12) — contemporaneous tallies said ~1,367 BTC / 4,585 addresses before Monday's wave. It's the easiest number in the video to check against dated reporting, and it's in the dramatic center of the piece. Fix: "after four waves" instead of "over the weekend".
  2. "Open-source" (claim 21) — the licence moved off GPLv3 in 2020 and Coinkite's own language is "verifiable". The Bitcoin licensing crowd notices this instantly, and it was re-litigated publicly the same week by Foundation's CEO.
  3. "Over 7,000 wallets" in the opening (claim 3) — same-day tracker counts said 5,200+; only a later post-mortem reached ~7,300. Defensible in hindsight, not at publication.
  4. "Everyone's keys" (claim 10) — Mk4/Q/Mk5 seeds kept ~72 bits and were never practically enumerable. A pedant with the Halborn post wins this nit.
  5. Wave-one accounting (claim 11) — 1,082 BTC/1,196 addresses vs 594 BTC/500 addresses is a definitional split between trackers; the video states the larger cut without noting counts differ.

run: 21m56s, searches 23, tools 47, coverage 0, per claim 57s