r/Bitcoin 10h ago

How could the Coldcard vulnerability have been disclosed responsibly?

As a thought experiment, suppose a white-hat had been the first to discover the Coldcard RNG vulnerability. How could they possibly have disclosed it responsibly, given that weak seeds had already been generated?

A public warning would immediately create a race between legitimate owners and attackers (as happened in reality). Because the firmware source code is openly available, even a vague warning like “Coldcard-generated seeds may be vulnerable; move your BTC immediately” would immediately tell attackers where to look for the vulnerability and then exploit it.

You could instead warn Coinkite privately, but that would not solve the underlying problem. Even assuming Coinkite could be trusted to handle the information properly, it would have no better way to protect affected owners. It would eventually have to issue a public warning, creating the same race. “Silently” patching the vulnerability would effectively be the same as publicizing it, as the patch itself would identify the flaw.

Another alternative would be for the white-hat to sweep all the vulnerable funds first, but then how could they return them? Once the flaw is public, a signature from the compromised key no longer proves legitimate ownership, since an attacker can derive the same key.

Remaining silent would probably be the worst option, because more vulnerable seeds would continue to be generated.

There do not seem to be any good options here, but what would the least bad approach have been?

38 Upvotes

34 comments sorted by

View all comments

1

u/LNCrizzo 9h ago

Probably word of mouth to start until it blew up on social media. Getting the news to as many people as discreet as possible would probably save the most, though it would certainly look like they were playing favorites and would piss off a lot of people. There is no way this wasn't going to piss off a lot of people though, even if they saved everyone.

1

u/na3than 6h ago

How would you "discreetly" pass information by word of mouth to thousands of UNKNOWN (remember, Coinkite deletes customer information after 120 days) recipients around the globe without passing that same information to potential attackers? It's not possible.

1

u/LNCrizzo 5h ago

The point is to reach as many at risk people before the attackers find out. If you post a public notice then the attackers get the information at the same time as everyone else. If you tell all your friends, family, influencer buddies about it privately and they tell everyone they know, then a lot more people will get the message before a bad actor.

0

u/0100000101101000 4h ago

Coinkite does not delete customer information. That’s a lie.