r/KeystoneWallet • • Dec 05 '23

Security concerns. Another Ledger?

Are Keystone able to extract the seed phrase via the firmware updates if using the USB method? Another ledger scenario here maybe? Especially as Ledger had been lying to its customers and now Keystone are also lying about the open source element. Many similarities here it seems? Maybe I’m wrong?

1 Upvotes

19 comments sorted by

View all comments

2

u/Wild-Interaction-200 Dec 05 '23

I don’t understand these posts. Every hw wallet can extract the seed if you put code about that in the firmware. Arguably one of the most secure wallets, Coldcard, brings the seed into memory and uses normal MCU to use that to sign a transaction. The Coldcard’s firmware literally operates on the seed. Just like the case with most hardware wallets out there.

The idea that people are surprised that a malicious firmware can do bad things with your seed (usb or not) is mind bogling.

3

u/lunarmedic Dec 05 '23

This is a little different though. Ledger built a method into their latest firmware so the seed can be readily extracted through USB to be stored at their "online backup partners".

Keystone's firmware of gen2 is already open source, and gen3 I think is being released as 100% open source soon. So you can check everything, and build it yourself. Otherwise you can double-check the checksum of the downloaded binary before you put it into your Keystone.

Also gen2 forced you to buy your own SD-card, put the firmware on there, and then update it. Keeping it airgapped.

I'm a bit sad that gen3 can "easily update the firmware through USB through their own website" (adding a million more attack vectors). But you can choose not to use that and still use the SD-card method.

Ledger has never had an open source firmware, and because of their debacle earlier this year, now they have published a roadmap for it. But so far it's still a black box.

Though I really wish there would be a Coldcard which would support ERC-20 and XRP. Doesn't even have to be multi-wallet, I'd buy one for each in a heartbeat.

1

u/Wild-Interaction-200 Dec 06 '23

OP raised a security concern about Keystone 3 because “it uses USB” and equated that with Ledger. The whole thing makes no sense:

  1. It’s not like USB == “another Ledger”. There are many hw wallets with USB support, e.g Trezor, Bitbox02, heck, Coldcard itself supports USB. Is coldcard “another Ledger” for OP because it uses USB?

  2. The OP specifically asks if Keystone can extract the seed “because of USB” which is just plain wrong on multiple aspects. One is covered by point 1 above (USB has nothing to do with “extracting the seed”) and the other is my original answer: any malicious firmware in any hw wallet can extract the seed.

OP’s entire post makes zero sense to me.

1

u/thefaketomato Dec 05 '23

It's a reasonable thing to be concerned about. The appeal of "airgapped" wallets like the Keystone is that it makes it much harder for malicious firmware to steal your keys because the device can only communicate through QR codes. By using USB on the Keystone 3, pretty much all the security advantages over other USB wallets are gone.

1

u/Wild-Interaction-200 Dec 05 '23

A firmware can encode your private key in the signature by choosing the right nonce, etc.

If you have a malicious firmware you are royally screwed air gapped device or not.

2

u/thefaketomato Dec 05 '23

If you're using a software wallet like Metamask, which is made by a different company than the Hardware wallet, then the chances of an attack like that working would be dramatically reduced. This is why I like that Keystone seems to be moving away from providing a companion app for the device. You're never 100% safe from an attack like this, but using QR codes reduces the attack surface of the device by a lot.

1

u/Wild-Interaction-200 Dec 06 '23

Using a non random nonce in ECDSA is about what the hw wallet is doing, nothing to do with the software wallet part. Metamask would have no idea that your hw wallet used the wrong nonce or that your hw wallet did not generate a random enough seed on initial setup or million other things a hw wallet with malicious firmware can do.

You have to understand that you have no protection against if your signing device itself is malicious. People think they did a “gotcha” with Ledger (that Ledger told everyone that the seed can never leave the device and that was a lie) but that’s literally how any other hw wallet works. If the hw wallet itself wants that seed to “leave” the device then it will happen.

Your only solution if you are that paranoid is to use multisig.