Conversation

Trezor Model T is a great product. I bought it for hardware-based Bitcoin wallets but it's working well for SSH via trezor-agent (ed25519) and U2F. It has per-identity keys for SSH and requires auth to use U2F or an SSH identity via the touchscreen just like Bitcoin payments.
2
13
It generates and stores a high entropy seed as 12/18/24 words from a 2048 length word list. The seed gets written down to allow recovery. It has the option of using a passphrase as an extra non-stored seed word and every passphrase is valid so you can have multiple wallets, etc.
1
2
Replying to
It works deterministically from the generated random seed + passphrase to support full recovery. U2F has the complication of a global counter but their suggestion of setting it to the Unix timestamp for recovery works well. It's a far better design than typical HSM designs.
1
2
The only way I've been able to use an HSM in the past is by generating keys on my workstation in a ramdisk, backing up on cold storage, importing them onto the device and then clearing them. The approach supported by Trezor is far better since it doesn't ever trust the computer.
1
1
For recovery, typical HSM design would also end up exposing a key to a computer again in order to import them onto a replacement. For the Trezor Model T, you enter the recovery seed into the new device directly. I was never happy with the approach needed for a YubiKey, etc.
2