He oído que el hash SHA-1 se está volviendo menos seguro, y que la mayoría de las claves GPG están aseguradas con SHA-1. ¿Hay alguna forma de determinar si SHA-1 está en mi clave de GPG y qué debo hacer si este es el caso?
SHA-1 es solo uno de los muchos algoritmos de hash disponibles en el Estándar OpenPGP. Puedes (y debes) elegir mejores algoritmos para firma de documentos o llaves.
Sin embargo, SHA-1 es el algoritmo only utilizado para generar un OpenPGP Huella digital V4 .
¿Esto es un problema? Creo que no para el futuro inmediato. Hay dos Tipos de ataques en un algoritmo hash. Ataques de colisión permiten el El atacante puede encontrar dos mensajes que tengan el mismo hash. Preimagen los ataques permiten que el atacante encuentre un mensaje que contiene hashes a un determinado hash.
Se conocen los ataques de colisión en SHA-1, mejor que la fuerza bruta, por un largo tiempo y están mejorando tiempo . Se cree que los ataques prácticos están al alcance de fondos bien financiados organizaciones ahora , y se abaratará con el tiempo debido a la ley de Moore.
Sin embargo, dado que las claves PGP generalmente son generadas por sus usuarios, la colisión Los ataques no son un problema. Posiblemente podrían ser un problema en contextos donde la clave de alguien es generada por un tercero, lo que podría Ocurren en algunos entornos corporativos u otras grandes organizaciones. Eso También podría ser un problema para cualquier software de servidor de claves que espere La huella digital debe ser una clave única: alguien podría cargar dos claves con el la misma huella dactilar y posiblemente las cosas bollix hasta que el software esté parcheado (No sé si algún software de servidor de claves realmente lo hace esto.)
Los ataques de preimagen en SHA-1 podrían ser un problema, si uno solo se basa en el huella dactilar. Puedo imaginar varios escenarios donde un atacante podría engañar a alguien para que acepte su clave en lugar de otra clave. Alicia descarga una clave de algún lugar y llama a Bob para verificar la huella digital. Un atacante organiza una fiesta de firma de claves y sustituye su clave por de alguien más. Tales ataques serían difíciles, pero factibles.
Sin embargo, por lo que puedo decir, no hay perspectivas de una práctica ataque de preimagen en SHA-1 en el corto plazo. El mejor que puedo encontrar es documento de Kelsey y Schneier de 2004 que encuentra una imagen previa en 2 106 pasos .
Dicho esto, SHA-1 definitivamente muestra su edad, y nunca se sabe cuándo Se encontrará un mejor ataque. Estaría muy feliz si el OpenPGP se modificaron los estándares para agregar una huella digital V5 usando SHA-2 o SHA-3. yo Espero que la gente comience a trabajar en eso pronto.
'gpg --version' mostrará tus preferencias.
Agregue similar a gpg.conf (sus preferencias, por supuesto):
preferencias de cifrado personales AES256 TWOFISH AES192 AES
personal-digest-preferences SHA512 SHA384 SHA256
personal-compress-preferences ZLIB BZIP2 ZIP
En cuanto a su clave, no tengo esa respuesta. Pero, como su clave diaria debe ser un SUB, revoque el SUB y vuelva a emitir una nueva clave. Si no es un SUB, entonces tienes un problema mayor.
GnuPG es una implementación de OpenPGP . Puede usar GnuPG (GPG) para cifrar y firmar sus datos y mensajes. También puede usar GPG para calcular el hash de algunos datos . . Cuando haces esto, puedes elegir el algoritmo de hash que usas. Parece que GPG admite una variedad de algoritmos que incluyen las funciones "más nuevas" de SHA-2.
Puede usar varios cifrados para cifrar sus datos con GPG. Cuando usted encripta usted elige una frase de contraseña. De esta frase de contraseña se genera una clave. Entonces, si usa AES 256, la clave será de 256 bits. La forma en que la clave se genera a partir de la frase de contraseña es mediante la programación de claves. Algunos algoritmos pueden usar SHA1, pero no creo que GnuPG lo haga.
El único lugar en el que aparece el algoritmo de hash es cuando se firma. De acuerdo con este blog aleatorio post (desde 2013 ) GPG usa SHA1 por defecto. Pero puede cambiar esto como se alude en la otra respuesta (y como se describe en la publicación aleatoria del blog).
Al final, no debes preocuparte porque SHA1 no tiene nada que ver con la clave.
También, por lo que entiendo, SHA1 todavía se considera seguro en general. Supongo que muchas personas están tratando de alejarse porque ha existido por un tiempo. A pesar de que es una figura controvertida, el "experto en seguridad" Steve Gibson discutió SHA1 en un episodio reciente de Security Now . Esto podría ser interesante (aunque en realidad no sea un "experto en seguridad"). (Por favor, no votes solo porque no te gusta Steve Gibson). Un punto que señala es que cuando se descubrió que el MD5 era inseguro, la gente se sorprendió un poco. Entonces, para evitar esto, algunos sugerirían no usar SHA1 simplemente porque es demasiado viejo y es probable que se desmorone pronto (si es que aún no lo ha hecho). Y eso es supuestamente el motivo por el que Google dejará de usar SHA1 (consulte también aquí ).
Algunas otras lecturas interesantes podrían ser