Estrategia para migrar contraseñas de forma segura de una aplicación a otra

3

Estamos trabajando en una herramienta que exporta datos de la aplicación de origen "S" a archivos CSV. Estos archivos CSV se migran manualmente al cuadro donde reside la aplicación de destino "T". Cada línea en este CSV está encriptada. Los datos confidenciales que se migran son contraseñas, historiales de contraseñas y preguntas y respuestas de desafío, etc.

Estaríamos utilizando el cifrado AES cifrar los datos del usuario. La pregunta es: ¿debemos generar una clave secreta para cada usuario por separado para cifrar / descifrar los datos de ese usuario específico?

En caso afirmativo, ¿cómo podemos administrar claves secretas para miles de usuarios y en qué forma debemos almacenarlas?

Otra alternativa fácil es usar una clave secreta para todas las contraseñas y almacenar esta clave en un almacén de claves JCEKS.

¿Cuál sería un enfoque mejor y más seguro?

    
pregunta Rajesh Choudhari 14.10.2015 - 14:13
fuente

1 respuesta

3

La pregunta que debe hacerse es: ¿qué riesgo intenta mitigar?

Al usar una clave diferente para cada fila, está intentando mitigar el hecho de que, si una clave se filtra, no comprometerá las otras filas. Esto se ve compensado por el hecho de que, cuantas más claves tenga, más difícil será gestionarlas de forma segura.

Ahora, suponiendo que va a realizar una migración única, tendrá que usar TODAS estas claves al mismo tiempo, dos veces: una durante la exportación y una vez durante la importación. Esto significa que su ventana de vulnerabilidad en realidad no se reducirá: hay pocas posibilidades de que una de estas claves pueda verse comprometida sin que TODAS se vean comprometidas.

Por lo tanto, en mi opinión, no creo que generar claves diferentes para diferentes filas le proporcione una mejora significativa en la seguridad, pero estoy bastante seguro de que hará su trabajo más difícil.

    
respondido por el Stephane 14.10.2015 - 15:01
fuente

Lea otras preguntas en las etiquetas