I have been using RSA signed/encrypted mailing a lot recently. Naturally, I wanted to use RSA mailing also on my phone, not only on my computer. However, I feel uneasy having my private key on my phone (what if I lose my phone?). Therefore I have been thinking about a scheme which allows RSA on mobile devices without spoiling the private key.
My setup is the following: I usually read/write emails using Thunderbird with the Enigmail plugin on a Linux based laptop. Since this computer is portable and will not be online at all times, it can not be used to forward decrypted emails to my phone.
You need two pairs of RSA keys, two mail addresses (one might suffice) and a server that you can trust. Your first key pair (the one that you usually use) is then placed on the server, the second key pair is placed on the phone.
- The server fetches your mail from the first mail address
- The server decrypts your mail with the first key pair
- The server encrypts your mail with the second key pair
- The server sends the encrypted mail to the second mail address
- Your phone fetches the mail from the second mail address
- Your phone decrypts the mail with the second key pair
If you want to send an email, it works just the other way around. Encrypt the mail with the second key pair on your phone and send the mail to the first mail address. The server decrypts the mail, encrypts it again with the first key pair and finally sends it to the recipient.
In this way, if your second key gets compromised, all you have to do is to revoke the second key pair.
My questions are:
Is this a sensible protocol?
The downside of this protocol is that you obviously need a server that you can entrust your private key. Since the key transfer is only ever really safe if you transfer them physically and personally, the only real option for this would be a personal server located at a safe place (e.g. raspberryPi at home).
Is there a more elegant solution to this?