¿Cómo sabe gpg que una frase de contraseña es mala en el cifrado simétrico?

1

Siguiendo de, ¿Qué información se ha filtrado de un ¿Archivo encriptado OpenPGP? , que fue muy útil, me gustaría hacer una pregunta similar con respecto al cifrado simétrico. Por ejemplo, en un archivo encriptado con

gpg -c --cipher-algo AES256 --armor -o file.asc file.txt

¿El hash de frase de contraseña (con sal e iteraciones según lo especificado por --s2k-count) está almacenado en el archivo.asc? ¿Cómo sabe gpg que una frase de contraseña es correcta?

    
pregunta Fermion Portal 25.03.2014 - 19:08
fuente

1 respuesta

2

La respuesta se encuentra en RFC4880, enlace en la sección "5.7. Paquete de datos cifrados simétricamente (Etiqueta 9) " En resumen, la clave generada a partir de la frase de contraseña se utiliza para cifrar un bloque de datos aleatorios, y se repiten los dos últimos octetos de los datos. Estos datos cifrados se incluyen en todos los mensajes cifrados simétricamente, en el paquete. GPG primero descifra este bloque con una clave dada derivada de la frase de contraseña (ver cadena a clave en el RFC), y verifica que los dos últimos octetos sean repeticiones de los dos octetos anteriores. Si no, la frase de contraseña definitivamente no es correcta. Si es así, la frase de contraseña PUEDE ser correcta. Entonces se produce el descifrado de datos.

Por lo tanto, no se almacena ningún hash en el paquete de datos.

    
respondido por el Fermion Portal 26.03.2014 - 14:55
fuente

Lea otras preguntas en las etiquetas