Claves de firma digital inseguras en GnuPG

Las claves de firma digital ElGamal generadas con versiones recientes
de GnuPG puede filtrar información como para regenerar la clave secreta
de firma.

GnuPG es un software Open Source (GPL) y gratuito, que permite la

firma y cifrado de documentos mediante criptografía simétrica y

asimétrica. GnuPG está inspirado en el popular PGP (Pretty Good

Privacy), y nació como respuesta a la introducción de las variantes PGP

comerciales. GnuPG cumple el estándar OpenPGP. Aunque GnuPG es una

herramienta fundamentalmente UNIX y línea de comando, existen

implementaciones también para plataformas Windows, y frontales gráficos

para un uso más simple.

Las claves de firmado digital

ElGamal generadas con las últimas versiones de GnuPG (a partir de

1.0.2, inclusive) resultan inseguras, de forma que un atacante puede

obtener información suficiente como para obtener la clave secreta de

firma y conseguir la falsificación de firmas digitales.

Los

usuarios que empleen claves ElGamal para firma digital deberían

revocarlas y regenerar claves de firma nuevas.

La vulnerabilidad

afecta exclusivamente a las claves de firma ElGamal. Las claves de

cifrado RSA y ElGamal, y firma DSA y RSA no se ven afectadas.

Es

de señalar que para generar ese tipo de claves se requiere activar un

modo especial en el programa, al ser consideradas ineficientes, por lo

que es de esperar que el número de personas afectadas por esta grave

vulnerabilidad sea reducido. Las primeras estimaciones indican unas

1.200 claves vulnerables en los servidores de claves públicos o,

aproximadamente, el 0,04 por ciento del total disponible de forma

pública.

La vulnerabilidad introducida en GnuPG 1.0.2

consiste en intentar generar claves de firma ElGamal con parámetros que

permitan su procesado más eficiente. Lamentablemente los parámetros

seleccionados hacen que las claves generadas sean inseguras, de forma

que a partir de una firma digital se puede descubrir la clave secreta.

Es de destacar que una clave ElGamal generada por una versión previa de GnuPG

será segura mientras no se utilice dicha clave para generar nuevas

firmas en versiones modernas de GnuPG. Por ello, lo más recomendable es

revocar y regenerar las claves ElGamal de firma, independientemente de

su fecha de generación original.

Para identificar claves

vulnerables, basta con listar sus parámetros y comprobar si se trata de

una clave de firma ElGamal (letra G mayúscula), en cuyo caso será

vulnerable. Cualquier otro tipo, como cifrado Elgamal (letra g

minúscula), RSA o DSA, no presentan ningún problema.