Conversation

It doesn't include any proprietary software and the whole thing is an open design that other people are able to build (and have successfully done so in practice). The primary purpose is for cryptocurrency wallets but it works well for U2F, GPG, SSH and various other purposes too.
1
There are definitely options beyond proprietary ones, including options with much different approaches than a traditional HSM storing the keys with / without encryption (ideally with a passphrase entered onto the device). I really like the approach pioneered for Bitcoin wallets.
1
1
Since that lets you generate keys on the hardware wallet, back up the high entropy recovery seed as a phrase, verify you backed it up correctly and then if you need to recover on a new device you can enter it directly onto a new hardware wallet without exposing it to a computer.
1
The traditional approach is good if you have existing SSH and GPG keys that need to be moved onto an HSM. I'll definitely prefer the deterministic wallet approach for new keys though. It's not that bad to migrate to new SSH keys but GPG tends to make rotating keys very painful.
1
Signing keys for firmware usually can't be rotated at all since they're burned into fuses so that's another case where a more traditional HSM is the best option since existing keys need to be migrated. Android app signing keys were similar, but they've finally added key rotation.
1
I find the recovery model to be the biggest advantage of the approach based on deterministic wallet design. The hardware wallet generates a high entropy seed, displays it as a recovery phrase and you can write it down, store it and recover without exposing it to the computer.
1
1
I need backups for my keys. For a traditional HSM, that means I need to generate them on my computer, back them up onto cold storage and import them onto the HSM. If I ever need to do recovery, I need to expose them to a general purpose computer again too. That's problematic.
2
3
I greatly prefer only trusting only the HSM and having a physical backup of the seed recorded directly from it. The approach to passphrases is also really nice. Trezor *only* stores the seed, not any state for wallets, SSH/GPG keys, etc. which are derived from seed + passphrase.
1
1
If it dies, I can do recovery on a new one (or a compatible implementation) by entering my recovery seed into it directly and I'll have back all of my wallets and keys. I also really like that I could quite feasibly memorize a recovery seed since it's 12 / 18 / 24 common words.
1
1
Show replies