Juan Cienfuegos I BITCORNER's avatar
Juan Cienfuegos I BITCORNER
bitcorner@zaps.lol
npub1du22...nwx7
πŸŽ™οΈ Bitcorner β€” Bitcoin podcast born in El Salvador πŸ‡ΈπŸ‡» Sound money β€’ Austrian Economics β€’ Real-world Adoption
In this episode of the Bitcoiner Podcast, host Juan Cienfuegos welcomes Max Hillebrand, an economist and prominent figure in the Bitcoin community. They delve into the multifaceted relationship between Bitcoin, freedom, and economic principles, particularly in the context of El Salvador's adoption of Bitcoin as legal tender. This discussion not only highlights the potential of Bitcoin to reshape economies but also emphasizes the importance of privacy and individual choice in the digital age. Full episode:
IMPORTANT UPDATE 🚨 First loss confirmed on a Mk3 with passphrase (2 words) Don't let your guard down and TAKE ACTION. image
After the Coldcard entropy story, a lot of you asked the obvious follow-up: how does Jade handle this? So we went and read @Blockstream β€˜s own breakdown, plus the source code. Here's the short version. The risk is the same for every hardware wallet: a private key is only as safe as the randomness used to create it. If that randomness is weak, an attacker doesn't need to steal your device… they can just guess. Jade's answer is to never rely on a single source. While the device is running, it continuously pulls entropy from several independent places at once: β†’ User interaction β€” button presses and the wheel β†’ CPU counters β†’ Battery state β†’ Ambient temperature β†’ Several camera frames captured during boot: even pointed at a blank desk, the sensor noise is usable randomness β†’ A built-in hardware random number generator β†’ Entropy contributed by the companion app on your phone One detail worth knowing: Jade's hardware RNG partly draws from the device's radio. Run the "No-Radio" firmware and you lose that input… so Blockstream compensates by sampling raw radio noise once at boot, before the radio is disabled, and folding it into the mix anyway. All of this feeds into an accumulator modeled on the same approach Bitcoin Core uses: a 32-byte internal state, updated by hashing itself together with fresh entropy through SHA-512. The hash output is split… half becomes the new internal state, half is handed off to generate your recovery phrase. That hashing runs constantly, including every time you touch a button. Two things stand out compared to a single-source design: 1. There's no one point of failure. If one sensor is noisy, biased, or misconfigured, the others still contribute. 2. New entropy is always added on top of the old, never used to replace it… so state never gets "reset" to something weaker. It's not a guarantee against every possible flaw: no design is. But it's a meaningfully different risk model than depending on one RNG path end-to-end, which is exactly the assumption that broke down elsewhere this year. β€” BitCorner #Bitcoin #Cybersecurity #HardwareWallet #InfoSec #OpenSource image
JUST IN: Galaxy Research has identified a third wave of Coldcard thefts β€” another 207.73 BTC stolen. Total now stands at 1,367.05 BTC from 4,585 addresses. We made an episode covering the news and what to do to protect yourself: image
# The Coldcard RNG Bug: What Actually Happened, What's Actually At Risk, and Exactly What To Do Right Now *If you own a Coldcard β€” or you know someone who does β€” this is the one post to read before you touch anything else today.* --- I'll get straight to it, because if you're reading this with a Coldcard in your hand, every minute you spend on preamble is a minute your funds might be sitting on a weak key. On July 30, Coinkite disclosed that recovery phrases generated on certain Coldcard firmware may not be as random as they were supposed to be. On August 1, they updated that advisory with harder numbers and a wider list of affected models. This post walks through both β€” what actually broke, why nobody caught it sooner, and the exact steps to get your funds safe. Let's break it down. ## The short version A bug in how Coldcard generated randomness meant that, on certain firmware versions, your recovery phrase could have been drawn from a much smaller pool of possibilities than it should have been. Smaller pool means an attacker has to guess far fewer combinations to potentially find your private key. This is not a bug you fix by updating. Updating stops *new* seeds from being weak. It does nothing for a seed that was *already* generated on the broken firmware β€” that seed is what it is, permanently, until you move to a new one. **Affected:** - Coldcard Mk3, firmware 4.0.1 through 4.1.9 - Coldcard Mk4, Mk5, and Q, on certain pre-fix Standard and Edge releases **Not affected:** TAPSIGNER, OPENDIME, and SATSCARD β€” they run different codebases entirely. **Fixed firmware is out now** for every affected model and release track (Mk3: 4.2.0+; Mk4/Mk5 Standard: 5.6.0+; Q Standard: 1.5.0Q+; Mk4/Mk5 Edge: 6.6.0X+; Q Edge: 6.6.0QX+). If you already have a Coldcard in hand, this is not a "read it later" situation. Update the firmware, generate a fresh seed, and migrate. I'll walk through exactly how below. ## Coinkite's response: "We fell short" Before we get into the technical details, it's worth pausing on how Coinkite itself has handled this β€” because it matters for how much you can trust what follows, and because part of what they're asking for is help spreading the word. NVK, Coinkite's founder, posted a public statement addressed to Coldcard users and the wider Bitcoin community. It's a genuine apology, not a PR-massaged non-apology, and it's worth reading in full on X β€” but here's the shape of it. He opens by saying the team is "heartbroken" about the disclosure, and that securing the bitcoin held by millions of people is meant to be the company's core responsibility β€” one they acknowledge they fell short on this time. He's explicit that Coinkite doesn't store customer information, which is why they're leaning on the community to help reach affected users directly, especially the people who aren't watching crypto Twitter right now and may not know there's anything to act on. His ask, verbatim in spirit: if you know a Coldcard owner, make sure they see this, because every hour matters. On what happens next, a few specifics stand out: - **The hotfix ships today**, and it removes the vulnerable software fallback path entirely β€” but as covered above, that only protects seeds generated *after* the fix. Anything generated before still needs to be individually migrated. - **A full technical postmortem is coming**, but not yet. Coinkite says they'd rather be accurate than fast on the writeup of how the bug got into the codebase and why their own review missed it, even knowing people want answers immediately. - **They're committing to support affected users** who want to file a police report, pursue an insurance claim, or run their own investigation β€” including written incident summaries and cooperation with on-chain investigators and law enforcement. - **A broader warning to other developers**, not just Coldcard users: Coinkite frames this as an early, sober example of a new reality β€” AI-assisted code review can now surface latent bugs faster than even experienced human auditors catch them, and any codebase that's ever been public should be assumed to already be under that kind of scrutiny, from attackers and defenders alike. That last point connects directly to what actually happened in the code β€” which is where we're headed next. ## Wait β€” how bad is "weaker randomness," actually? This is the part that's easy to either panic about or wave off, so let's put real numbers on it. Coinkite estimates the effective search space fell to around **40 bits** on Mk3, and around **72 bits** on Mk4, Q, and Mk5 (which had some extra entropy mixed in from onboard secure elements as a kind of accidental backstop). For comparison, a properly generated 24-word seed is supposed to sit at 256 bits, and even a 12-word seed targets 128 bits. Going from 128 bits to 40 bits isn't "somewhat weaker." It's the difference between a lock with more possible combinations than there are atoms in the observable universe, and a lock an attacker with real compute could plausibly start grinding through. 72 bits is a meaningfully better spot than 40, but it's still well under the 128-bit target the system was designed around. There are two things that pull a specific wallet back out of the danger zone, and they matter a lot: 1. **If you generated your seed using at least 50 independent, private dice rolls**, you added your own real-world entropy on top of whatever the broken firmware was doing β€” Coinkite says they don't consider seeds generated this way at risk from this bug alone. 2. **If your wallet has a strong, unique BIP-39 passphrase** β€” not a short one, not a reused one, not something quoted from a book β€” that passphrase effectively creates a different wallet on top of the seed, which meaningfully reduces the immediate exposure. If neither of those applies to you, treat it as what Coinkite itself calls it: not a theoretical risk, but a direct one. ## How did a bug like this survive in open-source code for years? This is the part I find genuinely interesting, and it's worth understanding even if you're not technical, because it explains why "just read the code" isn't the safety net people assume it is. In 2021, Coldcard moved its elliptic-curve math over to libsecp256k1 β€” the same cryptographic library Bitcoin Core itself trusts. Good call, on its own. Reinventing crypto primitives is how projects introduce *worse* bugs, not fewer. But that migration required pulling in a supporting library, and somewhere in that process, the code path for generating a wallet seed quietly got rewired. Instead of pulling randomness from Coldcard's own carefully built hardware random number generator, it started resolving to a fallback software random number generator that shipped inside MicroPython β€” a generator that was never meant to be cryptographically strong, and was originally written for a completely different purpose. Here's the part that made it invisible to review: both the real hardware generator and the fallback software generator exposed the *exact same function signature*. Anyone auditing the code could see the well-built hardware RNG sitting right there in the codebase, confirm it looked correct, and never realize the actual seed-generation path wasn't calling it at all. The right code existed. It just wasn't the code being used. Buried underneath that was a second, smaller bug β€” a preprocessor check that was supposed to stop the build if the hardware RNG wasn't properly wired in. It used `#ifndef`, which only checks whether a setting is *defined at all*, not whether it's set to a meaningful value. Coldcard's build had that setting explicitly defined as zero. Technically "defined." The safety check that should have caught this passed right over it. Two quiet, individually-plausible mistakes, stacked on top of each other, in code that's been public the entire time. Coinkite's own words on how this finally surfaced: they'd run one of the leading AI models over their codebase for a security review just weeks earlier, and it didn't catch this. Their working theory is that someone else did β€” using AI review tools on the same public source β€” and found what their own scan missed. As they put it, both attackers and defenders have access to the same tools now, and this time, that cut against the defenders first. ## What you need to do right now The steps differ slightly depending on your model, so treat this as the general shape β€” and check Coinkite's official advisory for your exact firmware. **1. Update to the fixed firmware before you generate anything new.** Don't skip this. Generating a "new" seed on old, broken firmware doesn't fix anything. **2. Generate a completely new seed. Do not restore your old recovery phrase.** This is the step people get wrong under stress. Restoring your old phrase into a new wallet just carries the same potentially weak key forward. You want the device to generate a fresh one from scratch. **3. Verify everything on the device screen, not just your phone or laptop.** Confirm your new wallet fingerprint and a receive address directly on the hardware. If it doesn't match what your computer shows, stop and figure out why before you send anything. **4. Send a small test transaction first.** Wait for confirmation. Check that it shows up from a completely fresh session β€” not the tab you were already looking at. Only then move the rest. **5. Don't destroy your old backup yet.** Hold onto it until the new wallet is fully verified and the old one is confirmed empty β€” including any small leftover amounts, unconfirmed transactions, or other asset types you might have parked there. Destroying it too early, while any balance remains, makes that balance permanently unrecoverable. **6. Once you're fully confirmed migrated, retire the old phrase for good.** Shred or burn a paper backup. Physically destroy or restamp a metal one. Never reuse it, never enter it into a website "checker" tool, never import it into another wallet again β€” even years from now. ## Two habits worth keeping permanently, not just this week Whatever hardware wallet you land on after this, carry these forward: **Verify on-device, every time.** Not on the app, not on the browser β€” on the actual screen of the hardware wallet, before you approve anything. This entire bug is a reminder that software you didn't write and can't fully audit yourself is standing between you and your keys at every other layer. The device screen is the one thing an attacker can't quietly rewrite from a browser tab. **Firmware only comes from official sources.** An email offering you a firmware update β€” however official it looks, whoever it appears to be from β€” is a phishing attempt. Full stop. Go to the manufacturer's site directly, every time. ## If you're reading this and thinking "I'll deal with it later" Please don't. This isn't a slow-burn issue where waiting a week costs you nothing. If your seed was generated on affected firmware and you don't have the dice-roll or passphrase protection described above, the exposure is live right now, not theoretical. The fix isn't complicated β€” update, generate fresh, verify, migrate, in that order β€” but it does require you to actually sit down and do it today. And if you know someone holding a Coldcard who isn't the type to see this on crypto Twitter β€” a parent, a friend who set up a hardware wallet three years ago and hasn't thought about it since, someone who did everything right by getting off an exchange and just hasn't been keeping up with advisories β€” this is the post to forward them. Being "less online" shouldn't be the reason someone's savings are the ones left exposed. Coinkite has said this plainly themselves: they don't store customer data, so they can't reach affected users directly. The community is the distribution channel here. Forwarding this to one person who wouldn't have otherwise seen it is a genuinely useful thing to do today, not just a nice gesture. Move slowly, verify everything, and get it done. --- *For the most current information, follow Coinkite's official updates at [blog.coinkite.com](https://blog.coinkite.com/) and NVK's statement on X. This post reflects the advisory as of August 1, 2026, and details may continue to evolve as Coinkite's technical postmortem is finalized.*
🚨 Recorded this the moment I had the full picture, this couldn't wait for a normal upload schedule. If you have a Coldcard: updating firmware does NOT fix an already-exposed seed. Listen, act today, and SHARE NOW.
Robo masivo por valor de 40 millones de dΓ³lares en Bitcoin despuΓ©s de que se hackearan 500 hardware wallets de 'Coldcard'.
‼️ About my partners, @Blockstream: The Blockstream Jade range (Classic, Core and Plus) is not affected by the recent RNG issue. They will post a blog about best practises for migrating bitcoin: generating new keys, verifying addresses, testing transactions and withdrawing recovery phrases. Frontier LLMs are revealing overlooked defects; Blockstream uses them to improve quality control. However, AI cannot replace open source: transparent hardware and firmware allow independent revisions, rapid disclosure, and corrections.Blockstream Jade therefore advocates open source software and hardware.
β€œThere were zero Bitcoin communities in Kenya, Uganda, Tanzania.” - @npub1v67c...mjjk Watching Bitcoin adoption in Africa grow in real time β€” Paco’s Bitcoin-only world trip through Kenya, Nigeria, Ghana, Zambia, Zimbabwe, and more shows how grassroots Bitcoin communities in Africa went from nothing to a movement.
There’s a lovely millennial urge to ditch social media, swap smartphones for a keyboard phone or landline, snap photos on an instant camera, listen to an iPod or Walkman, and enjoy a gentler pace of life like in the 90s
Hey Bitcoiners! Is this person legit!? Have she tried to contact you? Does anyone has had an interview with her? image
↑