-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Acabo de cambiar recientemente de nick, y me he registrado en el foro. Quería comentaros que ultimamente
ando algo paranoico en cuanto a criptografía, en base a los siguientes puntos:
1) El algoritmo SHA-1 está diseñado por la NSA, y se han hecho estudios que indican que este algoritmo va a seguir la misma suerte que el difunto MD5
2) La seguridad de OpenPGP ( o de una de sus implementaciones, por ejemplo gnupg ), no se sustenta solo sobre el algoritmo RSA. RSA se utiliza para cifrar la clave simétrica que cifrará con AES el mensaje. AES funciona mediante una serie de rondas que hacen un buen batiburrillo de bits, y ya se han desarrollado ataques contra versiones reducidas de AES con un número de rondas poco por debajo del real de AES. Esto no afectaría solo a gnupg, sino que también afectaría a openssl por ejemplo ( da igual el método que uses para el intercambio de claves, si la clave simétrica AES ( o peor aún, RC4 ) que se usa para cifrar la transmisión no es segura, mal vamos. También afectaría a LUKS ( un sistema para cifrar el disco duro bajo linux ).
3) ¿ Por qué quitaron en gnupg la posibilidad de usar elgamal tanto para cifrar como para firmar ?. Pues porque elgamla es un cifrado maleable y como en gnupg se usan los mismos datos ( números aleatorios, primos y demás ) en ambas claves, pues con que alguien firmase con elgamal se le podía reventar la clave principal, debido a ciertas relaciones matemáticas.
4) El algoritmo DSA ( firma digital ) también está diseñado por la NSA. He estado investigando en la web los fundamentos del DSA y no me gusta ni cala. Es un algoritmo muy limitado a ciertos tamaños de firma para determinados hashes y no tiene pinta de ser demasiado robusto que digamos ...
Por todo lo expuesto, usando el modo experto de GPG, he creado mi clave actual, con Elgamal para cifrar y RSA para firmar. El proceso es el siguiente :
1) Creamos una clave en modo RSA Sign Only ( solo firmar )
Cuando termina de generar la clave, nos avisa de que solo vale para firmar y que podemos generar una subclave con el propósito de cifrar, de forma que con :
2) gpg --edit-key identificador
Podemos editar esa clave y con el comando addkey crear una subclave, y ya en este modo nos da una opción antes bloqueada : Usar Elgamal el solito, solo para cifrar, SIN usar esa patata de DSA para firmar. De forma que ahora tengo una clave ELGAMAL-4096/RSA-4096.
A partir de ahora, voy a ir firmando todos mis mensajes en el foro con la clave RSA. Eso sí, una cosa que he notado, es que cuando se hace una firma OpenPGP Armor, obviamente depende del charset que se use, porque por ejemplo este mensaje que va firmado desde un linux, si alguien lo copy-pastea en un fichero en windows y trata de verificarlo, no le va a funcionar porque los saltos de línea en windows tienen otros bytes, eso cambia el hash y por tanto la firma. Supongo que habrá alguna opción en gpg que permita sortear esto especificando el charset en alguna cabecera, pero todavía no la he encontrado.
Saludos !!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iQIcBAEBAgAGBQJVBIPCAAoJELaXTTOvSgvr6x0P+gPwSSGNqZv+zHt4Ey3CIgO5
XMnXS3Bb/aTTjnHxQiNCZjC+QIaUOkmpmJhnPG3AbWZXdSZhiiYkeavZn6uaf0C+
Y/A3Q3g/sSQBpX/74kiVA1keamQjergps5TgBUpD8VU6vmT1XGNOEdmReoFPT/fJ
yEY8FHrq3QwXG/P8CJZRKK5uF1xXTD8+FMIbsNWBofPLu0GjAXLwW6XCYM7cnzeB
m9UL1LIMxB7YsMl7GB2/VNq/+xT6WQwhO+GyUS1I+kg2Tf2P2UKrtWulX4/ENRXX
M09ETr6HaNwydMX+Ay8G4SbUUSeUOb6mUyU0KUSI5EQq46gMq1Ce7IIhEOZg79sz
oCgu1kVnT1Ojn8AFEYOyjzjtbmogL6bbQqwEk5oJ3WqdqYfIaWvj6z4XwPto9Vz2
C7Tvgc1ljF5vYLhUc6ZLktXr3rxx+IyFiYxBFpKnVaCz2QnikFpJhgYsGbUw/TcL
2fu6Pea0e1MM3V3VAqx862dAo+mIhHZ2e12fJVl3iHbWsei+PcRf4hlwj3EzdqkY
7pW/l6CBtBOnLMXhfcsx+Hy76LciXU1Y8FglbleF50Mi06gd5Y/SBUrsm6Ica3gC
3kFHC/4zXynicg/ER6DlsdMD9byNZJttrw+DdsIBOYQb1cZ52QIxR7MrQOXpDBTV
E668lfGabvkJ7nMIfJnP
=5r56
-----END PGP SIGNATURE-----
Hash: SHA1
Acabo de cambiar recientemente de nick, y me he registrado en el foro. Quería comentaros que ultimamente
ando algo paranoico en cuanto a criptografía, en base a los siguientes puntos:
1) El algoritmo SHA-1 está diseñado por la NSA, y se han hecho estudios que indican que este algoritmo va a seguir la misma suerte que el difunto MD5
2) La seguridad de OpenPGP ( o de una de sus implementaciones, por ejemplo gnupg ), no se sustenta solo sobre el algoritmo RSA. RSA se utiliza para cifrar la clave simétrica que cifrará con AES el mensaje. AES funciona mediante una serie de rondas que hacen un buen batiburrillo de bits, y ya se han desarrollado ataques contra versiones reducidas de AES con un número de rondas poco por debajo del real de AES. Esto no afectaría solo a gnupg, sino que también afectaría a openssl por ejemplo ( da igual el método que uses para el intercambio de claves, si la clave simétrica AES ( o peor aún, RC4 ) que se usa para cifrar la transmisión no es segura, mal vamos. También afectaría a LUKS ( un sistema para cifrar el disco duro bajo linux ).
3) ¿ Por qué quitaron en gnupg la posibilidad de usar elgamal tanto para cifrar como para firmar ?. Pues porque elgamla es un cifrado maleable y como en gnupg se usan los mismos datos ( números aleatorios, primos y demás ) en ambas claves, pues con que alguien firmase con elgamal se le podía reventar la clave principal, debido a ciertas relaciones matemáticas.
4) El algoritmo DSA ( firma digital ) también está diseñado por la NSA. He estado investigando en la web los fundamentos del DSA y no me gusta ni cala. Es un algoritmo muy limitado a ciertos tamaños de firma para determinados hashes y no tiene pinta de ser demasiado robusto que digamos ...
Por todo lo expuesto, usando el modo experto de GPG, he creado mi clave actual, con Elgamal para cifrar y RSA para firmar. El proceso es el siguiente :
1) Creamos una clave en modo RSA Sign Only ( solo firmar )
Cuando termina de generar la clave, nos avisa de que solo vale para firmar y que podemos generar una subclave con el propósito de cifrar, de forma que con :
2) gpg --edit-key identificador
Podemos editar esa clave y con el comando addkey crear una subclave, y ya en este modo nos da una opción antes bloqueada : Usar Elgamal el solito, solo para cifrar, SIN usar esa patata de DSA para firmar. De forma que ahora tengo una clave ELGAMAL-4096/RSA-4096.
A partir de ahora, voy a ir firmando todos mis mensajes en el foro con la clave RSA. Eso sí, una cosa que he notado, es que cuando se hace una firma OpenPGP Armor, obviamente depende del charset que se use, porque por ejemplo este mensaje que va firmado desde un linux, si alguien lo copy-pastea en un fichero en windows y trata de verificarlo, no le va a funcionar porque los saltos de línea en windows tienen otros bytes, eso cambia el hash y por tanto la firma. Supongo que habrá alguna opción en gpg que permita sortear esto especificando el charset en alguna cabecera, pero todavía no la he encontrado.
Saludos !!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iQIcBAEBAgAGBQJVBIPCAAoJELaXTTOvSgvr6x0P+gPwSSGNqZv+zHt4Ey3CIgO5
XMnXS3Bb/aTTjnHxQiNCZjC+QIaUOkmpmJhnPG3AbWZXdSZhiiYkeavZn6uaf0C+
Y/A3Q3g/sSQBpX/74kiVA1keamQjergps5TgBUpD8VU6vmT1XGNOEdmReoFPT/fJ
yEY8FHrq3QwXG/P8CJZRKK5uF1xXTD8+FMIbsNWBofPLu0GjAXLwW6XCYM7cnzeB
m9UL1LIMxB7YsMl7GB2/VNq/+xT6WQwhO+GyUS1I+kg2Tf2P2UKrtWulX4/ENRXX
M09ETr6HaNwydMX+Ay8G4SbUUSeUOb6mUyU0KUSI5EQq46gMq1Ce7IIhEOZg79sz
oCgu1kVnT1Ojn8AFEYOyjzjtbmogL6bbQqwEk5oJ3WqdqYfIaWvj6z4XwPto9Vz2
C7Tvgc1ljF5vYLhUc6ZLktXr3rxx+IyFiYxBFpKnVaCz2QnikFpJhgYsGbUw/TcL
2fu6Pea0e1MM3V3VAqx862dAo+mIhHZ2e12fJVl3iHbWsei+PcRf4hlwj3EzdqkY
7pW/l6CBtBOnLMXhfcsx+Hy76LciXU1Y8FglbleF50Mi06gd5Y/SBUrsm6Ica3gC
3kFHC/4zXynicg/ER6DlsdMD9byNZJttrw+DdsIBOYQb1cZ52QIxR7MrQOXpDBTV
E668lfGabvkJ7nMIfJnP
=5r56
-----END PGP SIGNATURE-----