In the Bitcoin world I see people using hardware key stores (and hardware signing devices) as the de-facto only secure way of storing and transmitting $M values.

Wouldn't a hardware SSH keystore be the best way to go forward as well? I rarely see this option being promoted in any best practices and SSH hardware keystores (e.g. USB dongles such as Yubikey) seem to be a relatively niche market. Why is that route so unpopular?

  • 1
    When you have malware on the machine you SSH from you're doomed anyways. Apr 4, 2017 at 10:20

2 Answers 2


Wouldnt a hardware SSH keystore be the best way to go forward as well?

Yes. In ideal world it would be best. But the requirement of the hardware and additional software handling the interface makes it less affordable. I would not say unpopular.

The most of the guides are for beginners to set up their first connection to github or to their first cloud box. In case you have a passphrase encrypted key, it is already very secure against offline attacks.

Using hardware device for private key operations should protect you against little bit more attacks (impossibility to copy the key, use it unauthorized), but you are not gaining much that would general user appreciate. Smart Cards are quite common in security-aware environments.


Software key stores and hardware ones have different use cases. When you need a certificate for a server to authentify that a client has hit the correct server a software key store is enough. It will be simpler to have it both in a production server and in a spare server in order to speed up recovery procedures. In that case the certificate does not guarantee much more that this server is currently acting under that name for that organization. But at a different moment, it could be a different machine, in a different computer center and running a different version of the application. In that context, sofware key stores are enough.

Now say that you need to securely prove that one document has actully be signed by Mr. X head manager of society Y. If Mr. X only uses a software store on his computer, a sysadmin of the Y society could make a copy of the store and have plenty of time to try to brute force the secret key without anybody being aware of the attack. But if Mr. X uses a smartcard to store his secret key, the attacker have to first steal the smartcard which should be immediately noticed and the certificate would be likely revoked before the key could be compromised. That's the reason why when you really need strong personnal authentication, you absolutely need a hardware store. BTW it immediately comes to be a 2 factor authentication because it involves something you have (the smartcard) and something you know (the pin code to unlock the secret key). In some countries, a digital signature is only valid if you can prove that the secret key has only be under the exclusive control of its owner, which is almost impossible in real world (read in a corporate organization) without using a hardware container for the key.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .