¿Cómo mantener segura la clave de cifrado AES? [cerrado]

0

Estoy utilizando el cifrado AES para proteger algunos datos confidenciales. Para eso tengo que proporcionar una cierta clave para cifrar y descifrar.

No es seguro mantener la clave en algún lugar del servidor. Entonces, en lugar de ingresar la clave directamente, me gustaría convertirla y luego volver a convertirla a su original cuando la ingrese al cifrar o descifrar el valor.

Pensé en hacer la conversión de clave a través de PHP. ¿Es una buena práctica o hay otras sugerencias?

    
pregunta 웃웃웃웃웃 25.07.2013 - 05:38
fuente

3 respuestas

1

Dependiendo de su presupuesto, es posible que desee verlo como un módulo de seguridad de hardware. Este sería un dispositivo conectado al servidor que almacena la clave y realiza el cifrado, no forma parte del sistema operativo y sería más o menos como una caja negra mágica.

También puede usar otro servidor que tenga el único propósito de hacer criptografía, y de nuevo funciona como una caja negra. Con una configuración de firewall muy estricta y otras comprobaciones, esto también puede ser efectivo.

    
respondido por el Eric G 25.07.2013 - 05:44
fuente
1

¿Cree que todas las vulnerabilidades le dan a un atacante acceso completo a su aplicación?
¡Demonios, no!

Entonces, ¿cómo se explotan las aplicaciones? La inyección SQL es muy común , y si tiene una inyección SQL en una aplicación, debe tener acceso completo de lectura a la base de datos. Eso significa que puedes leer valores encriptados. Entonces, ¿qué pasa con la clave? Bueno, un atacante podría obtener acceso a la clave utilizando un MySQL load_file() , pero no si la aplicación se creó correctamente. MySQL no debería estar en el mismo sistema, y si su DBA tiene algún sentido de seguridad, la aplicación web no tendrá file_priv .

Pero incluso más al punto, los secretos se pueden almacenar en lugares que no están en archivos accesibles, por ejemplo: variables de entorno . Los privilegios del sistema de archivos se pueden usar para hacer que los archivos sean ejecutables, pero no legibles ni grabables desde un atacante. El cifrado se trata de planificar un error y usar la debilidad de un atacante en su contra.

    
respondido por el rook 25.07.2013 - 07:32
fuente
0
Principio de

KISS : coloque la contraseña en un archivo de texto en una memoria USB o en una unidad de almacenamiento similar.

Eso separa los datos cifrados de la clave relacionada, y puede tener la clave "en usted" cuando la necesite. De esta manera, no tiene que recordar la clave, o idear alguna teoría de ofuscación salvaje que pueda fallar.

Todo lo que necesita recordar es dónde colocó esa memoria USB (o una unidad de almacenamiento similar) y la protege contra robos o copias. Puede confiar en el hecho de que será mucho más fácil proteger un dispositivo de almacenamiento en su bolsillo que intentar asegurarse de que su clave esté segura en algún servidor, junto a los datos cifrados.

"Mantenlo simple y seguro" ~ enlace

    
respondido por el e-sushi 25.07.2013 - 06:17
fuente

Lea otras preguntas en las etiquetas