Add support for Krypton to the desktop app
As an alternative to sync'ing private key material via an AES256-encrypted replication method, it might be useful to support Krypton (https://krypt.co/developers/) with Termius. With Krypton, we now generate the private key within the secure element of a mobile phone, so that it can not be viewed or exported, EVEN BY THE USER, only utilized for crypto operations (similar to a TPM or HSM.) It also now introduces the opportunity to add an additional factor, by making the use of the private key require authorization on the phone before processing. In all, in signficantly improves the security model of SSH when used, as it removes the biggest risk in the process - protecting the private key stored on local disk.
Because the role of the private key in ssh is to sign the ssh handshake, It replaces needing direct access to the private key with making a proxy request to a mobile app, which then prompts the user for authorization and then forwards the handshake to the secure element for it to be signed in hardware. On a linux box, the integration looks like a pkcs#11 plugin and a ProxyCommand entry like so (from ~/.ssh/config):
ProxyCommand /usr/bin/krssh %h %p