¿Cómo se almacenan las claves privadas PGP / GPG?

4

El formato predeterminado en el que se almacenan las claves privadas SSH es notablemente bastante inseguro contra los ataques de fuerza bruta. Esta pregunta proporciona una muy buena solución al problema al cifrar las claves privadas SSH en el formato PKCS # 8 con 1 millón de rondas de PBKDF2 para hacer que las contraseñas de computación sean realmente caras, computacionalmente hablando.

¿Cómo se almacenan las claves privadas PGP / GPG? ¿Son computacionalmente baratos a la fuerza bruta o les va un poco mejor que el formato predeterminado utilizado por OpenSSH? Si son baratos a la fuerza bruta, ¿hay formas de mejorar la seguridad en ellos?

    
pregunta Naftuli Kay 30.04.2014 - 01:44
fuente

1 respuesta

8

El OpenPGP standard incluye formato para codificar claves privadas como secuencias de bytes, y para cifrar simétricamente secuencias de bytes con un clave derivada de contraseña. Si bien cualquier implementación de PGP es libre de almacenar claves privadas de la forma que crea conveniente, la mayoría (si no todas) usarán los formatos OpenPGP.

El punto crítico en el cifrado basado en contraseña es cómo la contraseña se deriva en una clave. Esto es todo el hashing de contraseña : el proceso de derivación ser lento (por ejemplo, con un número configurable de iteraciones) y debe usar un parámetro de variación llamado salt . OpenPGP incluye una derivación de clave "decente" basada en contraseña, llamada S2K iterado y con sal . Si se preocupa por especificar un conteo suficientemente alto (es decir, tan alto como sea tolerable en su máquina), entonces puede obtener una buena seguridad. Con la implementación de OpenPGP en GnuPG , el recuento de iteraciones se especifica con la opción de línea de comandos --s2k-count .

Por supuesto, la defensa principal contra la fuerza bruta en una contraseña es elegir una contraseña segura, que es una contraseña con mucha aleatoriedad. Las iteraciones y las sales son solo métodos para hacer frente a las contraseñas no tan fuertes que surgen dentro del enredo de las neuronas humanas.

    
respondido por el Thomas Pornin 30.04.2014 - 03:56
fuente

Lea otras preguntas en las etiquetas