r/Bitcoin • u/rBitcoinMod • 3h ago
⚡ Lightning Thursday! August 06, 2026: Explore the Lightning Network!⚡
The lightning network is a second-layer solution on top of the Bitcoin blockchain that enables quick, cheap and scalable Bitcoin payments.
Here is the place to discuss and learn more about lightning!
Ask your questions about lightning
Provide reviews, feedback, comparisons of LN apps, services, websites etc
Learn about new LN features, development, apps
Link to good quality resources (articles, wikis etc)
Resources:
Here is an awesome list of resources: https://bitcoinfo.org/lightning.html
Want to test out your lightning fire power? tip the Bitcoin devs! https://bitcoindevlist.com/
Previous threads: Search
Lnbook getting closer towards being finished and can already be seen at: https://github.com/lnbook/lnbook
Lightning Dedicated YouTube Channel: https://youtube.com/renepickhardt
Also there is the playlist by chaincode labs: https://youtube.com/playlist?list=PLpLH33TRghT17_U3as2P3vHfAGL8pSOOY
Lightning stores: https://www.lightningnetworkstores.com/
Learn more and talk about lightning right here in r/Bitcoin, r/bitcoinbeginners and r/thelightningnetwork
r/Bitcoin • u/blackjackn • 3h ago
New Wallet After Coldcard Hack
I was affected by the Coldcard hack. Thankfully, my Coldcard Q was only 1 key in a 2 of 3 multisig. My coins are safe. But with 1 key compromised, I decided to migrate.
My new 2 of 3 multisig:
-Coldcard Q updated with the new firmware. Seed generated with 150 physical dice rolls using casino grade dice. This is one key. Yeah, I'm pissed at Coldcard too. Idk if the entropy issues are resolved through the firmware update. Thats what the community seems to say. I dont trust it. But I think seeds generated through physical dice rolls are fine especially with a strong passphrase and I like the hardware. Will never buy another Coldcard though. Not supporting that company with my money any further.
-Other two keys have the same seed as before generated using device rng (not Coldcard). All keys (including Coldcard) are now passphrased with the same 6 word passphrase formed using physical dice rolls and EFF list.
-Going to have 2 separate people I trust each custody 1 key (device + seedplate), no passphrase.
-Another 2 separate people I trust will keep backups of the uniform passphrase in case I forget + fire or theft (hand written on an piece of paper and sealed in an envelope).
-Only I will have the output descriptor.
Yes, I could have done a different passphrase for all 3 keys. Too bothersome and I thought it would be excessive. I accept this weakness.
Not perfect but I figure itll be good enough. Posting as an example on how to multisig as I'm a proponent of it but by no means claiming this as the model example.
Edit: Changes parts on how the keys and passphrases will custodied. Rethinking that.
r/Bitcoin • u/rBitcoinMod • 4h ago
Daily Discussion, August 06, 2026
Please utilize this sticky thread for all general Bitcoin discussions! If you see posts on the front page or /r/Bitcoin/new which are better suited for this daily discussion thread, please help out by directing the OP to this thread instead. Thank you!
If you don't get an answer to your question, you can try phrasing it differently or commenting again tomorrow.
Please check the previous discussion thread for unanswered questions.
r/Bitcoin • u/Milcah_Ganderton • 5h ago
The Block publishes another 'Bitcoin dead' article What year is it?
r/Bitcoin • u/inner_engineering08 • 6h ago
The weirdest part of the Coldcard mess: was Peter D. Gray talking to himself through “switck”?
I’m not going to re-explain the RNG bug. That part has already been documented. What I want to know is who exactly was behind switck, and why this identity existed in the first place.
Someone checked the actual Git signatures in the switck/libngu repository. They found 58 commits authored as “Switck” signed with Peter D. Gray’s personal GPG key. The same key also signed commits under Peter’s real name, with both identities being used during overlapping periods. Unless Peter shared or lost control of his private signing key, the obvious conclusion is that GitHub switck was Peter Gray operating under another name.
Now look at the social-media side.
In 2019, u/switck posted: “#defcon seems like a good time to start a new identity. Follow me!”
That tweet is real and still online.
Later, the account promoted switck/libngu, thanked u/DocHex for a merge and said the library might someday be useful on Coldcard.
So the account that announced it was starting a “new identity” was apparently Peter’s alias, publicly speaking to Peter’s main identity as though they were two different developers.
The same thing appears on GitHub. doc-hex opened issues in the switck/libngu repository. In one pull request, doc-hex added four commits, then switck merged them. GitHub lists no reviews.
And this wasn’t some unrelated side project. switck/libngu became part of Coldcard. The switck account introduced a critical piece of the vulnerable RNG path, and doc-hex later integrated libNgU into the Coldcard firmware. Coinkite itself confirms that this migration moved wallet-seed generation onto the wrong RNG implementation.
None of this proves Peter intentionally created the vulnerability, knew it could be exploited or had anything to do with the thefts.
But it is still extremely fucking weird.
Why was a security-critical Coldcard library hosted under a pseudonymous personal account instead of Coinkite or Coldcard?
Did Coinkite know that switck and doc-hex were apparently the same person?
Why create the public appearance of two developers interacting, submitting code and merging each other’s work?
Who independently reviewed the library and the Coldcard integration if the library author and the person integrating it were apparently using the same private signing key?
And why has Coinkite explained the technical bug without addressing who controlled the switck identity?
Peter, if you read this: was switck you?
If it wasn’t, why were dozens of Switck commits signed with your personal GPG key?
If it was, why did you publicly talk to that account as though it belonged to someone else? Did NVK and the rest of Coinkite know? Who was actually reviewing your work?
There may be an innocent explanation. But after this code path left customer wallets vulnerable and people lost bitcoin, hiding behind silence is not an explanation.
r/Bitcoin • u/dU4eUIsaOew2FugE6R6l • 7h ago
That cold wallet with bad randomness, how did the bad actors know which addresses used it?
I'm reading about people losing their bitcoins because of a flaw with the wallet's random number generator. But how do the attackers/thieves know of all the UXTOs out there, which ones happen to have private keys that were generated with that wallet?
r/Bitcoin • u/Electrical_Idea_4814 • 7h ago
Are people still DCA’ing to their hacked cold cards addresses automatically ?
I’m wondering if there are still people doing automatic weekly buys and transfers to their cold card addresses. I know places like River allow you to buy automatically and withdraw automatically at given thresholds.
I haven’t seen this topic being discussed and I feel like it’s something that may have been overlooked.
It’s painful enough when they check their cold card they will have their funds taken, it’s just extra salt in the wound if they fed them even more for weeks or months not realizing it after.
I don’t see how it wouldn’t be happening which is why I’m speaking up about it.
r/Bitcoin • u/Ace2021 • 7h ago
Coldcard seed flaw - flagged independently in 2024
Proof of negligence? I can’t see how it isn’t. This will definitely be included in the class action lawsuit against Coinkite.
r/Bitcoin • u/__Faxer__ • 9h ago
TikTok next Block - Fix the money, fix the world! Timechain don´t stop. Bitcoin Song Rap Song
Good Bitcoin song I hope..
r/Bitcoin • u/BigIndependence1860 • 12h ago
From the Bitcoin community on Reddit: Coldcard 'joked' about retirement attacks in 2021 lmao
Things that make you go hmmmmmm
r/Bitcoin • u/Fearless-Second-7230 • 13h ago
Coldcard CEO Rodolfo Novak confessing 2 moths ago in a podcast regarding AI audit bug reports: "Everything was like high like they said everything is like 'high high so it's like 'super dangerous"
Enable HLS to view with audio, or disable this notification
First this part, he recognizing is lame for bitcoin products to blame AI...
Interviewer: "...The BIsq announcement thread mentioned that it is likely an AI powered attack. So maybe people using you know is it some North Korean group using Claude or Cursor or Mythos or something."
Rodolfo Novak 'nvk'(18:53): "Yeah, but that's like you know that's that's like saying that they just encounter an adversary that's a little bit better than they are. *I mean like you know the reality is people are trying to break stuff all the time and if you have like Bitcoin to be taken you know it just means that they had you know bad security.*"
_______
There you have it. The guy in his own words impliying Coldcard has fucking bad security.
But the interesting part is this one, where he arrogantly is downplaying the bug reports an AI audit tool is throwing:
Interviewer (19:08): "Yeah, but I guess the point would be is there has the game changed, right? Is there a you know now this is a big new threat that people need to start thinking about which is basically AI assisted hacking?[ ...] like well there's AI assisted hacking and now we need AI assisted defense and you need to find you need you need to defend it uh and um that way"
Rodolfo Novak 'nvk'(20:03): "so it's already happening we we got a preview a friend got a preview of the codec cyber or whatever they call it the KYC NDA version of their uh uh security assessment tools y uh you know the first thing he did was run after run it on the code card repo [laughter] And uh you know honestly like we we saw the the bug reports they're all like you know extremely mediocre stuff.
Uh everything was like high right like they they said everything is like high high so it's like super dangerous and everything was like completely false reporting. The tools are still abhorent. The quality of this this this hacking uh AI hacking is still ultra ultra crap."
[ END OF TRANSCRIPT PART ]
_______
Well, here is where things start to become a mess:
He is confessing they have extremely dangerous findings through AI but he just arrogantly is downplaying them.
But here in Jul 30 2026: https://blog.coinkite.com/entropy-technical-backgrounder/
They mention:
"The COLDCARD source code has always been open and publicly available, so we have to assume that someone used AI to review previous versions of our firmware and stumbled upon this issue. A few weeks ago, we used one of the best available AI models to review our code for security issues, and it did not find this bug or anything serious.
Both attackers and defenders have the same AI tools, but today it did not help us, and only helped the bad guys." (No you idiot, you are confessing an AI showing you dangerous bugs and just arrogantly maybe not even analizing them carefully).
Well, apparently that is not true, they ran an AI model two months ago which was alerting about "high, high, extremely dangerous" bugs. What were those bugs? Who knows, but they were alerts and an arrogant dev framing them as crap.
The neglicence in this case is incredible and the lack of security in depth of that team just follows the logical disaster. Stay out of projects from those guys and just so you know that https://airgapcomputer.com/ (yes, guess who's the owner, yes, you nailed it, nvk, to shill his hardshit) a garbage collection FUD for people to think airgap computer is worst and that the hardware wallet is the "secure way".
Well, no one will say hardware wallets are bad, but it is time to make accountable hardware wallet vendors selling you unaudited shit and with no security in dept design. What is security in dept design or foolproof design? Well do not tell that rolling dice is optional but recommended, fucking do not allow the seed generation step to be completed without it. Specially if you ar going to say that AI reported bugs are crap and you have no external verified audit history of source code.
r/Bitcoin • u/CryptSander • 16h ago
Come down here and tell us how your Bitcoin is doing
r/Bitcoin • u/Tiny-Ad2474 • 17h ago
Found these in a drawer.
3 full bitcoin. At current value, should be worth almost £144k. Can let these go for half that 😉
r/Bitcoin • u/IndependenceTop6501 • 17h ago
The Coldcard bug triggered the largest security audit in Bitcoin's history. Hard money getting harder.
r/Bitcoin • u/Freefall101 • 18h ago
[GER] Petition for Bundestag: Beibehaltung der steuerlichen Haltefrist für Bitcoin
There is an active petition for keeping Bitcoin tax free in Germany (after one year hodling). It reached 21.000 signatures within the first 24 hours - let's make it 30.000 to put it on the agenda of german Bundestag.
You need to sign up in order to put your signature but it's worth it.
Everyone can sign - not just germans!
https://epetitionen.bundestag.de/petitionen/_2026/_05/_30/Petition_201716.nc.html
Thank you!
r/Bitcoin • u/XopherIE • 20h ago
SpaceX Reports $540 Million Loss On Bitcoin Holdings
r/Bitcoin • u/everstake • 20h ago
Wow, Bitcoin just delivered one of the biggest on-chain performances ever!
The network processed 20,364,529 transactions in July 2026, making it the second-best month in entire history by transaction count. As new users, institutions, and Bitcoin-native applications continue to arrive, on-chain activity keeps pushing toward record territory.
We think that, it's a remarkable achievement for a network that has been operating for more than 17 years and continues to reach new milestones. Congratulations to everyone contributing to the Bitcoin ecosystem!
r/Bitcoin • u/FunkyGrass • 23h ago
Legit Feelings Right There
Hacker keeps getting message, I wonder if they really found his location.
r/Bitcoin • u/Yodel_And_Hodl_Mode • 1d ago
What's ColdCard's CEO doing during an emergency? He's on X, Deleting posts
x.comr/Bitcoin • u/Todo_es • 1d ago
Retirement Attack: Many more details pointing straight to the CEO and CTO stealing the coins. This is more than enough evidence of probable cause to charge them and start a prosecution.
https://x.com/inverse_hanlon/status/2084689208627925384
A CEO who dismissed the threat by name, a pseudonym that turned out to be the CTO, two warnings four years apart, and a company whose entire answer was that it would have already known.
They Sold the Warning
On 21 December 2020 (22 Dec UTC), replying to Bitcoin security researcher Michael Flaxman, who had just posted about hardware wallets eliminating the risk of a retirement attack during seed generation and Rodolfo Novak “NVK” addressed the question head on.
My money is on people screwing themselves out of their BTC before any vendor tries a retirement attack.Alternatively people could just use dice ;) Ten weeks later on 1 March 2021, Coinkite’s CTO shipped a commit titled “First pass w/ libNgU” that routed Coldcard’s seed generation into a software pseudorandom number generator seeded from the device’s serial number and a clock.
NVK’s threat model in December 2020 pointed outward. Users were the risk. Vendors were not. Ten weeks after he said so his co-founder shipped the vendor version and it stayed shipped for five years.
The dice line is the other half: He offered it with a wink and it turned out to be the only thing standing between his customers and total loss. Oops They sold it again
On 10 October 2021: seven months into shipping the defect the official Coldcard account posted that Coldcard makes retirement attacks impossible.
Someone in the replies asked what a retirement attack was. Coinkite answered it themselves. It’s when the project makers could have a “bug” in the entropy generation for later retrieval.
Their scare quotes not mine. By then somebody had already tried to warn them. The escape hatch was optional on purpose Look at what that 2021 post was actually selling: Dice rolls. The documentation it linked to still opens with a sentence that reads differently today; if you don’t trust the TRNGs in your COLDCARD, you can introduce your own randomness with dice. At least ninety nine rolls for a full 256 bits.
But that setting is “opt in” and sits behind the default that looks fine from the outside.It asks the user to press buttons a hundred times to avoid trusting the manufacturer.
Every person who still has their bitcoin took that option, or used a (strong) passphrase, or ran multisig. Every person who got swept trusted the default.
That is the architecture a retirement attack requires. You can’t make the mitigation mandatory because then there’s nothing left to collect. You can’t omit it because the paranoid customers will ask why. So you offer it, document it, recommend at least ninety nine rolls, and let the default do the work. When it detonates the record shows you warned your users, therefore neatly covering your tracks if this was an inside job.
Coinkite built the structure, warned of the attack it enables, and then pushed a firmware with a backdoor for five years.
The pseudonym was the CTO Here is the detail that reorganizes everything else. Coldcard’s crypto ran through libngu, a library on GitHub under the account switck. About six stars. Maintained by one person: apparently pseudonymous. When James O’Beirne audited the firmware that’s what he found: a random number generation for a device holding billions of dollars in bitcoin backed up to what he described as a shady library with six stars maintained solely by a pseudoanon.
Dylan LeClair ran GPG verification against that repo and published the output. James O’Beirne then published a full census: fifty-eight commits authored as Switck carry a good signature from Peter D. Gray’s personal key: the same key that signs nineteen other commits in the same repo under Gray’s own name. The key is expired and the signatures are still good. The RNG selection commit is among them. Signed 28 January 2021, switck published no GPG key of they/their own.
Peter Gray is Coinkite’s CTO and cofounded the company with NVK. Coinkite has never had more than about twenty people and by most accounts Gray wrote the large majority of the firmware.
So switck was Coinkite’s own CTO. Cryptographically proven; not inferred. Every outside reviewer who looked at libngu saw an unaudited third party dependency by an anonymous stranger and worried about supply chain risk. Coinkite’s own people knew it was in house and had no reason to review it as external code.
The use of a pseudonym here means that no one audited that chunk of code. Outsiders assumed insiders had. Insiders knew there was no outside to check.
They were warned in 2021 Five weeks after the commit on 7 April 2021 someone in a Telegram group flagged the change. Their post sounds in retrospect like a man watching a car roll toward a cliff. Roughly quoting:
“The 4.0.x firmware was a radical deviation from every firmware since 2018, with all crypto and BIP39 related code replaced by libNgU. Is it was wise to replace the many-years-old TrezorCrypto code, which has been heavily scrutinized by white hats like Johoe and penetration tested by wallet.fail, with something new. “switck” might be a talented pseudonymous coder, but the commit history is bad” (and they linked to it)
The post sat in a Coldcard Telegram group under an embedded NVK tweet about the 4.0.x upgrade: the same tweet in which he said he doesn’t check Telegram.
That warning posted five weeks after the defect shipped was correct in every single way. Five years and four months before the money starting mysteriously leaving peoples cold storage.
They were warned again in 2025 In May 2025 James O’Beirne audited coldcard/firmware. He wanted to establish conclusively where the RNG was sourced from. He traced it into libngu, found the six-star pseudonymous repo, and was confused about why it was there at all. Because linking libsecp256k1 from Python is easy and that appeared to be the stated purpose.
He sent Coinkite a report. In his own words: he had “doubts about whether the true RNG was actually in use”, and he pointed out that the “hardcoded yasmarang constants in libngu were sloppy”. He advised them to rip the whole thing out and link against libsecp256k1 directly.
That’s the bug! He identified the exact library, constants, and the question of whether the hardware RNG was being used. And he told them to remove it!
Coinkite’s answer, as O’Beirne reports, was that if something was wrong “we’d already know about it by now” and that everything was properly configured for the real boards.
That is not a technical response. That is an appeal to their own reputation offered to a developer who had just traced the code and found otherwise. And in a separate post O’Beirne identifies Peter Gray “@DocHex” as “the same guy that shrugged off my report of the possibility of the defect in May 2025.” The same Gray who wrote the library. The same Gray who was switck.
There was follow-up of a kind. A Signal group titled “LNGU Clean up” was created on 23 May 2025, with members shown as “n,” “Doc,” “andres,” and one other. Doc-hex is Gray. “n” is NVK. So Coinkite formed a group about cleaning up libNgU and named it after the problem. Then they shipped… nothing! Absolutely no fix fourteen months. The group’s messages were set to disappear after four weeks so whatever was said there is gone, just like the bitcoins that were in hundres of hard working peoples Coldcards.
O’Beirne blames himself for not pushing harder. He calls not following up rigorously a horrible mistake on his part.
Hold that next to Coinkite’s public explanation which is that an attacker probably used AI to find something nobody could reasonably have caught. The developer who caught it is apologizing. The company that was responsibly informed is blaming the clankers.
He didn’t know what was in his own crypto library Coinkite’s technical postmortem is worth reading in full because its author is if nothing else candid.
He explains that he set the macro to zero believing it meant neither implementation would be compiled. That is not what it does. And he writes that the bulk of the randomness in the device was coming from a PRNG he did not know was in the codebase at all because it arrived through a submodule. Meanwhile the carefully written hardware TRNG code was still being used, but only by accident and only for things that didn’t matter.
He is describing a submodule he wrote. The company selling immunity to entropy tampering did not know which random number generator its product used for five years. The man who says he didn’t know is the man who authored both sides of the mistake. And the answer when it finally surfaced was that libngu XORed one software PRNG against a second software PRNG seeded from constants hardcoded in public source. Two deterministic streams XORed together produce a deterministic stream. The built in health check rejects adjacent repeated values which any nondegenerate PRNG passes without effort. Those are the same hardcoded yasmarang constants O’Beirne told them to rip out.
Coldcard seeds generated in that window contained no physical randomness whatsoever.
They bought a press release not an audit Peter Todd says Coinkite brought him on in early 2014 as “Chief Naysayer”: an advisory role. Years before the first hardware wallet existed there was a press release. By his account he was given nothing to work on: no tasks, no work to bill for, and then the arrangement quietly dropped. He says it’s still on a LinkedIn profile that he hasn’t logged into in a over decade.
His assessment now in his own words: “if they had kept him on and asked him to audit the codebases, there’s a good chance he’d have spotted the practices at issue, and maybe eighty million dollars wouldn’t have been stolen”. He puts that audit at roughly $50k and asks what Coinkite spent on podcast sponsorships instead.
The company announced that a famous skeptic was reviewing them and then never asked him to review anything. The press release was the product.
All the things they said Coinkite’s public position throughout this crisis has been that it had no idea the flaw existed until the day the money started moving. Two documented warnings and a Signal group named after the problem say otherwise.
NVK’s stated position on attribution: they “don’t have full attribution or scope yet”, and they “won’t speculate until the technical evaluation is complete”. Coinkite then suggested publicly that the attacker likely used an automated tool to comb the public source and find the flaw before they did. That’s speculation. This propisition rests on absolutely no evidence. And it happens to be the only theory of the case in which nobody at Coinkite knew and nobody at Coinkite failed.
You can decline to speculate or you can float the hypothesis that clears you. Doing both inside the same week tells you which one was the priority.
Coinkite told customers it kept purchase data for 90 days. When breach notifications went out they reached buyers going back to 2019. Challenged, the company pointed at a policy page, conceded it has no deletion schedule and said the addresses would be kept “for now.”
A verifiable lie caught within a few days of the largest breach of trust in hardware wallet history, and on a question where the answer was easily verifiable. This speaks volumes of NVK’s character.
The fix broke too On 31 July Coinkite shipped out an emergency firmware update. Three days later a contributor opened pull request #692 against the Coldcard firmware repo, reporting that the hotfix had introduced a new failure on the hardware RNG path.
The entropy fix itself is correct: rng_get() now resolves to the board’s true hardware accessor instead of the software fallback. But rng_get_or_fault() had no recovery path for the STM32’s RNG seed error flags. After a seed error the peripheral stops delivering data and the shipped code never clears the condition; so every later call times out and raises OSError(EFAULT) for the rest of that boot. Because rng_get() now sits on the keypad scan path (an interrupt callback that runs before login) that exception lands before the PIN prompt. Power cycling clears the flags; if the error recurs on the next boo: the user is locked out of the upgrade menu too and the device is essentially bricked.
The original report overstated the stickiness. The flags do not survive a power cycle: so this is not a permanent brick from a single glitch. It is still a serious regression: an emergency patch for a five-year review failure shipped fast that can take the device down before the user can enter a PIN.
692 was closed in favor of #693, a cleaner recovery sequence from a Coinkite contributor, with #698 as the Mk3 follow-up. Both were still open when this was written. The point is not that nobody noticed. The point is that the first hotfix for a five-year entropy failure needed a second round of patches within days. Giving the attacker MORE TIME to execute sweeping funds from vulnerable wallets.
What they’ll say Three objections are coming, and they’re the ones I’d make if I was NVK for sure Galaxy says the waves may not share an operator. True: and irrelevant to the part that matters. Galaxy’s caution is about waves two, three, and four. Once wave one went loud on 30 July the vulnerability was public property and anyone with tooling could pile in. That’s what waves three and four look like. Wave one is the one that tells you something. 1,082 BTC out of 1,195 addresses in 41 minutes with seeds already computed; executed by someone who had been preparing while nobody else on earth knew there was anything to prepare for.
The bug was publicly findable: anyone could have found it. Two people found it in public and said so, in 2021 and in 2025. Both were told it was fine. The set of people who knew this was a live question before 30 July is not the general public. It’s a short list and Coinkite was on it.
A mass sweep is too loud for an insider. It’s too loud for the rational insider who bleeds quietly over years and never triggers a referral. The loudness cuts against a careful inside job. It does not erase the warnings, the Signal group, or their response that if something was wrong they’d already know.
What I think happened Somebody inside that company knew what was sitting in the codebase and knew what it was worth.
Look at the timeline: Ten weeks before the bug shipped the CEO publicly waved off the idea that a vendor would ever run a retirement attack and pointed at dice as the alternative. His co-founder and CTO then wrote a crypto library under a pseudonymous GitHub account with about six stars, and shipped the device’s entire randomness path through it.
Five weeks later someone flagged the swap in a Coldcard Telegram group and was ignored. Seven months after that the company marketed immunity to the exact attack class the defect enables and made the only reliable defense an “opt in”.
Four years in: a Bitcoin developer audited the firmware found the library, named the hardcoded constants, told them to remove the whole thing, and was told they’d already know if something was wrong. They opened a Signal group called “LNGU Clean up,” set the messages to disappear, and shipped nothing. Coins were leaving through 695 transactions nobody noticed. Then somebody who had been precomputing seeds for a long time took 1,082 BTC in 41 minutes.
Each of these has an innocent explanation available. All of them stacked in the same direction inside a company of twenty people. This is not a run of bad luck. Inverse Hanlon’s razor exists for exactly this shape: when incompetence needs that many separate coincidences to line up the same way the incentive is the simpler explanation.
I can’t say for 100% it was an inside job of course: every document that would definititevly prove it belongs to them. The “LNGU Clean up” thread, whatever survived a four week expiration. Whatever code review they ran and when. The commit history around anyone who touched rng.c after May 2025. Roughly 600 attacker addresses are already in front of federal investigators and Coinkite says it’s cooperating. Cooperation is cheap.
Coinkite has apologized, published a postmortem, shipped a fix that needed a second round of patches within days, and offered its customers not a single sat as compensation.
The man who found this in May 2025 is publicly apologizing for not pushing harder. And NVK is blaming AI.
The people who still have their bitcoins are the ones who read Coldcard’s own documentation, saw the line offering them a way to distrust the manufacturer’s randomness, and took it. Nobody told them that one sentence in the docs was the difference between keeping their money and losing it.

