La aplicación web que estoy desarrollando debería estar encriptada de extremo a extremo, pero para una mejor experiencia de usuario, no quiero que el usuario ingrese claves privadas en el cliente.
En cambio, estoy planeando almacenar la clave privada cifrada en el servidor de aplicaciones. Luego, el cliente lo descifra con una contraseña proporcionada por el usuario. Por supuesto, para descargar la clave privada cifrada, el usuario debe iniciar sesión en la aplicación. Esperemos que con una contraseña diferente como para cifrar la clave. (Ver abajo)
Un riesgo sería que el usuario use la misma contraseña para el inicio de sesión y el cifrado de clave privada, de modo que la aplicación no se cifraría más de un extremo a otro.
¿Qué piensas de esto? ¿O hay algún problema de seguridad que no veo?
(Para evitar este riesgo, ¿debería prehashear la contraseña de inicio de sesión en el lado del cliente?)
Gracias de antemano.