Adding this, from the other thread. I bolded the part that makes me want to scream:
Here's a post in X about WHY it may have happened,
Regarding the Coldcard entropy bug – many folks are explaining what happened but I wanted to take a minute to explain why it may have happened.
It's a disastrous situation and our heart goes out to all the Bitcoiners affected.
Here's a timeline of events:
On July 28 2020: @FoundationHQ announced our first Passport hardware wallet and noted that we were building on Coldcard firmware which at the time was GPLv3 licensed (FOSS license).
On July 30 2020: NVK publicly said he regretted choosing GPL because Coldcard now had a “clone” and that they would change things in future updates. x.com/nvk/status/128…
On November 18 2020: Coldcard added its MIT + Commons Clause license, prohibiting commercial products substantially derived from the software. github.com/Coldcard/firmw…
On January 8, 2021: Coldcard firmware 3.2.1 formally announced, “License changed from GPL to MIT+CC on files for which the GPL doesn’t apply.” CC is the "Commons Clause" license addendum which is "source available" instead of FOSS.
On March 1, 2021: The “First pass w/ libNgU” commit removed the GPL @Trezor-derived crypto libraries and replaced them with libNgU. That same 120-file commit changed seed generation code. libNgU was licensed with a novel “Licensed for Bitcoin Only” license.
On March 17, 2021: Version 4.0.0 announced that all crypto and BIP39 code had been replaced and that the “last remaining GPL code” was removed. blog.coinkite.com/version-4.0.0-…
github.com/Coldcard/firmw…
Our best understanding right now is that the entropy bug was collateral damage from this major overhaul of the codebase.To be clear, this overhaul was not solely about licensing. Coldcard also cited technical goals including adopting Bitcoin Core’s libsecp256k1, faster AES and SHA implementations, and reproducible builds.
But the timeline establishes two things:
(1) Foundation’s launch was the obvious impetus for Coldcard’s licensing change, and
(2) removing the remaining GPL code was an explicit goal of the subsequent v4 rewrite.
We don't know by how much the licensing pressure affected the scope or timeline of the rewrite.
All we can determine is that the entropy bug was introduced inside the same 120-file commit that removed the old GPL code dependencies.
https://x.com/zherbert/status/2082993276324319713Personally, for people who use ColdCard, remove all your assets, throw the wallet away, AND NEVER buy another hardware wallet from them again.
It's infuriating.
I don't even know how to put in words how devastating a decision they made based on greed was for customers who trusted them.
I said this in the other thread, but it's worth repeating here.
I'm a former Ledger user. When Ledger added internet-based key extraction to their firmware, it shook me to my core. It made me rethink everything I thought I knew about doing self custody right.
I decided the only way to be sure my seed phrase was safe was to generate it myself so I could prove the randomness by doing it randomly.
I did this by printing the BIP39 word list. I cut the paper into strips with a word on each strip. I put the strips in a giant popcorn bowl.
Pick a word. Write it down. Put the strip back in the bowl and stir them up to scramble ‘em. Pick another word.
I did this 23 times.
I entered those 23 random words in a SeedSigner and let it generate the 24th word. With a 24 word seed phrase, there are usually only 7 or 8 words that can form a valid checksum, so I felt safe letting code find the final word.
I trust code, but not for generating the entropy my wallet is generated from. That being said, I also use
a very strong passphrase because I take this stuff seriously. As should we all.
Brand loyalty for securing Bitcoin is proof of stupidity.
I expect the fallout from this current exploit to get worse. ColdCrd has already acknowledged that it goes beyond the MK3. A decision based on greed is making hodlers poor and hackers rich. I'd spit in MVK's face if he was standing in front of me now, and I'm not even affected by this hack.
This is awful, but it's only going to get worse.
If you're a ColdCard user, assume your seed is compromised and move your coins to a wallet protected by a passphrase or multisig. Long term: Generate your own seed phrase and move to ShieldSigner.
If you're a Ledger user, you're a fool. Assume your wallet is compromised, because if it isn't yet it's only a matter of time before it is. Move your coins to a wallet generated by a seed that has never touched a Ledger device.
If you're using some cool mofo brand device, you're a fool. Learn real self custody security. Take the security of your coins seriously. If you don't have the technical skills, you should seriously consider selling your coins and using the money to buy into an ETF instead. It saddens me to say that, but self custody comes with self-responsibility. Anyone who isn't up to it shouldn't do it.
Sigh.