I have this idea of a "Most Personal Device", which is this little computer you always have with you, never leave it out of your sight, and use it as an authenticator and recovery seed for everything else.
It should be something personal, something small and something that you'll feel comfortable using. It allows you to authenticate on your system, encrypt files so that you don't have to store encryption keys in your computer (see OpenPGP smartcards for details), and ideally also can store some sensible amount of data.
For a long time, I thought that it could be something like Yubico's Yubikey authentication token:
I have it pretty much all the time, and never leave it too much out of my range. Practical experiments showed, that sadly no, this is not really the thing I would like to use.
First - you have to physically plug it into the USB. That's a big annoyance. It may sound like a first world problem, but if you have it on your keys, that means that you have to find your keys, plug them all to the notebook or whatever and then don't forget them there. When I come home, I usually leave my keys in the lock, which also means, that I never have a Yubikey in reach to plug into my computer.
Yubikey still has its use, mainly for pgp/gpg encryption of files, where I very often encrypt files to myself, for all kinds of backups, and only from time to time need to decrypt them. To use it for something like login to my computer would be annoying and would require different solution.
I've realized, that I would ideally want different kind of device, something with a display and several buttons. Then I've realized that I want programmable smartwatches.
Really, think about it. You want to login into something, the plugin in your browser notices that, asks the watches for a password, they show you the prompt, you click on yes or no and computer gets the password.
You can also implement all kind of other sweet things, like one-time challenge/response questions for SSH authentication, sudo password authenticator and so on.
Evaluated at the moment
Fitbit versa 2
Friend of mine recommended me fitbit versa 2, which should have some kind of SDK, so I've bought them, and I am trying to develop little apps for them.
- LILYGO® TTGO T-Watch-2020 ESP32 Main Chip 1.54 Inch Touch Display Programmable Wearable Environmental Interaction Watch
- DSTIKE ESP32 Watch DevKit ESP Development Board OLED Version or TFT Color Version I2-006-007 (and other variants of "DSTIKE")