In brief, a Hardware Security Key is a physical device that prevents unauthorized access to accounts by using public
Before describing how a hardware security key works and what it consists of, the question that needs to be
answered first is: Why use it and why is it better than using a password (and other “second factors”)?
Firstly, let’s look at the “public key cryptography” part of the description. One of the problems with passwords
is that they are in essence “symmetric” keys. This means the actual password has to be typed (or copied from a
password manager) into a password form field of a browser (or application). From the form field it is then transferred to
a server. The problem is that the OS, browser or even
server is not necessarily secure - as many people who have been the victims of phishing attacks and ransom ware can
testify. There are many opportunities for a hacker to obtain a copy of this password by using key loggers,
browser plugins, posing as the real server or even hacking the server itself.
(Also have a look at our blog post on Webauthn).
In contrast, a hardware security key uses a private key to digitally sign a random chunk of data to prove to the server
that it has ownership of the private key. The server verifies this signature by using the public key. The private key is never
transferred out of the security key so there is no opportunity for the hacker to obtain the private key.
From a hardware point of view, a well designed hardware security key like the MIRkey is in essence a simplified
form of a hardware security module. This means the
private keys are protected by using a secure element in secure silicon and the cryptographic
operations are performed in a secure environment - no other software is allowed to execute in the
secure environment. The only way to obtain the private key is to get physical access to the security key and even then it
is very difficult, costly and time consuming to retrieve the private key from the device. This provides you with ample