Sé que esto suena como una pregunta tonta, pero ¿qué tiene de malo? Suponiendo que todos los datos privados están cifrados (por el cliente) mediante PBE AES256, ¿es este esquema más vulnerable que almacenar las claves en su computadora local?
Pros:
- todos sus dispositivos (teléfono inteligente, computadora portátil, cámara?) tienen acceso a las mismas teclas sin tener que copiarlas en todas partes y proteger múltiples dispositivos
- suponiendo que el servidor de claves esté alojado por alguien que sepa de seguridad, los datos deberían ser más seguros que su teléfono inteligente o computadora portátil
Contras:
- un solo ataque exitoso podría derribar millones de claves (encriptadas) de una sola vez (ataque remoto, empleado malicioso, etc.)
Mi comprensión de la situación actual es que usted mantiene sus claves privadas encriptadas en su computadora local protegidas por una frase de contraseña (* .JKS, * .BKS, secring.gpg, etc.). Un atacante podría escribir un troyano que carga todos sus archivos de clave privada a un servidor bajo su control. Esto recientemente comenzó a suceder con los archivos de billetera de BitCoin, por lo que es plausible que podría suceder con los almacenes clave. Eso le daría al atacante muchos almacenes de claves de una sola vez, lo mismo que un ataque exitoso en un servidor de claves y, por lo que puedo decir, para aproximadamente la misma complejidad. Además, los archivos actuales del almacén de claves no proporcionan más protección contra un atacante de lo que lo haría AES256, ya que todos giran en torno a la frase de contraseña del usuario.
Me parece que el punto débil real aquí es la frase de contraseña del usuario y no necesariamente donde se almacenan las claves. ¿Me equivoco? Sé que esta no es la situación ideal, pero la estoy comparando con la situación actual.