Nota: Esta respuesta se publicó antes de que la pregunta se migrara desde Cryptography Stack Exchange. Como tal, solo aborda los aspectos puramente criptográficos de la pregunta.
Lo que podrías hacer es configurar un solo par de clave pública / privada mediante, por ejemplo, RSA o (EC) DSA, y haga que su programa de correo electrónico almacene la clave pública y cifre sus mensajes usándola.
Luego puede almacenar la clave privada en un archivo encriptado sucesivamente usando otras tres claves (públicas / privadas o simétricas), y almacenar esas otras claves en diferentes ubicaciones. Por lo tanto, para descifrar los mensajes, primero deberá descifrar la clave privada, lo que requeriría todas las demás claves.
Alternativamente, puedes dividir el archivo de clave privada en múltiples recursos compartidos, por ejemplo. intercambio secreto de Shamir , y almacene las acciones en ubicaciones separadas. Una ventaja de este método es que puede configurar el esquema de intercambio secreto para que solo requiera una fracción predefinida de los recursos compartidos para poder reconstruir la clave. Por ejemplo, podría generar cuatro acciones de modo que tres de ellas serían suficientes para reconstruir la clave; de esa manera, aún podría descifrar los mensajes incluso si perdió un recurso compartido.
En cuanto a recomendar un buen cliente de correo electrónico para mensajes cifrados, me temo que no puedo ayudarte mucho allí. En cualquier caso, es realmente off topic para Cryptography Stack Exchange; puede obtener mejores respuestas a esa parte de su pregunta en Superusuario o en Intercambio de pila de seguridad de la información .