CoinKite fucked in a major way, and there are MANY red flags, but all are explained by sloppy practices and incompetence.
People who were not sucking off nvk are not surprise by the low standards.
I get that people are angry and want an explanation, and the backdoor explanation will make you feel better as coinkite conspired against you, but this is an emotional way to think.
The reality is you listened and trusted people who are clueless and don't have even a basic understanding of how Bitcoin works.
All the trust was strictly based on social dynamics and 0 verification.
It is easier to claim backdoor than to admit you are a bad judge of character, as that would mean you COULD have somehow avoided this somehow.
Backdoor makes it feel unavoidable, which sorry to say it was not.
- there is no way to make a backdoor like this an get away with it. this adds permanent damage, and when it gets out you are done, reputation burned for life.
- don't say they did this for money because the cost vs. benefit makes no sense, too much risk for not that much reward.
business was very successful, they had too much to lose. - if you do this for money when bug gets out others will also attack it so you are competing with other hackers
- look at the fucking code, it a typical mistake that happens in this type of things. the lack of review and using social status to push away scrutiny from project is why it was not caught
You did absolutely NOTHING wrong in using single sig and not rolling dice.
The understanding between coinkite and user is that they provide secure key generation, which is industry standard and works if you have the right internal practices and correct way of doing business.
YES, I have saw both of jamesob posts with the strange github stuff https://gist.github.com/jamesob/ca9b4ca384969b4cfd62813419854d69 which indeed looks VERY, I mean VERY sus, but still NOT pointing to backdoor.
Yes, from what Zach found here, looks like https://x.com/switck and https://x.com/DocHex and the github user switck COULD be the very same person, still not a good way to insert a backdoor. Minimal effort to remove links between real person and nym.
https://x.com/zherbert/statu s/2084647957526167853
And his 2nd post is direct evidence they they did not take suggestions about their security being bad serious.
https://x.com/jamesob/status/2084624605969350915
In times of crisis and emotions, the most important thing is to push emotions away(and I get that is hard), but if you don't you just make a VERY bad situation worst.
EDIT: added Zach's post
Maybe we are wrong for not rolling dice or being responsible for our own entropy
I'm with you completely re the backdoor. The conspiracy theories seem far fetched.
This part I don't fully get:
First of all, who are these people who weren't blowing NVK? It seemed like a community orgy. Were they hiding?
Secondly, they were not surprised? It seems to me that everyone was surprised. Who wasn't surprised?
Well his competitors are the obvious ones, but there are people here and there, but nvk used his influence to make sure they don't get visibility.
But is also more subte, the group would by default ignore those people as they talked back to nvk.
Besides Foundation, it seems that most people had a problem with the fact that he was an arrogant asshole. Personally, I couldn't listen to the guy talk for more than five minutes. But saying cold card wasn't secure? Problems with the code? I don't recall hearing that.
You make a good point. People who thought about self-custody were not surprised about a single point of failure failing. People who used multi-vendor multisig were pleasantly surprised and reassured they were right.
My multisig was a mix of hot wallet (Nunchuk), ledger, jade and other keys on Liana (unfortunately just a few wallets are miniscript compatible).
I think people at Casa are probably those who are pleasantly surprised. Expecting single points of failure failing, not multisig. Jameson Lopp talked about multi-vendor multisig way before Coldcard failed, this is how I got the idea.
One of the first example of big failure I have learned in computer science was a rocket which exploded because of a type issue (I think integer and float). Also the patriot missile, which blew up an American boat in the 90s if my memory is correct, is taught in textbooks.
Looks like incompetence to me. People seem to love coming up with conspiracies about anything these days.
The main reason I do not think this was intentional is that a low entropy backdoor seems like a pretty risky way to do it: you have to believe that bots are constantly scanning the blockchain for addresses that fit low entropy keys. Such a backdoor would be inevitably discovered and on a timeline which its creator did not necessarily control.
On the other hand, such a backdoor does allow for plausible deniability.
Yup, but in all fairness you would not be able to detect this via scanning the blockchain, the reason these keys could be detected, is because we have information on how they were generated on the device.
ah i see! this is something i've been trying to figure out: how much did the fingerprint of a coldcard (or information about how coldcards work) help people identify these addresses.
I've always assumed that low entropy hacks happen by someone grinding all the keys in a search space and then checking the utxo set for addresses that might be derived from these keys.
but that mental model didn't really match up with what was happening (gradual address sweeping, spotty sweeping).
i'd love to read a description of how an attacker might go about performing this specific coldcard attack (how specifically do they find addresses to sweep?). Do you know if anyone has written about this?
You are correct on how the grinding and exploring the search space happens, just the smoking gun is in the code not on the blockchain.
The way the alarm would be set is by wallets getting drained, as it would make people think, hmm maybe there is a vulnerability and I can exploit it too, let me check the code.
Welp. Thank y'all that contributed. Publishing this kind of information, no matter whom it is dealing with, leaves a stain, a stink and a lifelong label with the word "avoid".
There is herd mentality on Twitter, and people overreact.
Most of the software we often use still works. In my case Bitcoin core, mempool, Phoenix, etc. no issues.
Absolutely agreed.
If nvk or another high-level CoinKite employee had wanted to execute a rug-pull, they'd have far stealthier and more effective ways of accomplishing it than committing their malicious code directly to github in a signed commit.
For example, just distribute malicious firmware builds but keep the git tree "clean". 99.9% of people, even experienced devs, aren't going to build their own firmware from source or reproduce the firmware's hash - they just install whatever binaries the devs ship. A backdoor inserted through a malicious build is undetectable without some serious reverse-engineering skills. If anyone does call you out on the build being impossible to reproduce, you can just blame some unknown "bug" in the dev's local build system, change the tooling a bit, and call it "fixed" before anyone catches on.
And if you were going to introduce a vulnerability into a git tree, you wouldn't do it in the main firmware repo. You'd place the vulnerability deep in the dependency graph, so that when the rug is pulled, you can blame some anonymous 3rd party library as a scapegoat and maybe recover a semblance of your reputation.
Hanlon's Razor applies here.
So there is no way that damaging the self-custody movement while also sweeping funds to a third party entity could have been the entire goal all along? Right before a possible chain split too... Some people are ideologically motivated and can sacrifice everything for their beliefs.
please stop being retarded.
The switck / doc-hex connection is definitely sus though.... what's the explanation there?
https://twiiit.com/jamesob/status/2084624605969350915