Boletín ENIGMA - nº 70
1 de Octubre de 2009
Boletín del Taller de Criptografía
de Arturo Quirantes Sierra
Dirección original: http://www.cripto.es/enigma/boletin_enigma_70.htm
CRIPTOGRAFÍA IMPRESENTABLE - Criptografía Nikon
TEMAS DE ACTUALIDAD - AES bajo ataque
TEMAS DE ACTUALIDAD - Reivindicando a Alan Turing
TEMAS DE ACTUALIDAD - Concurso SHA-3: segunda ronda
!Bienvenidos a Boletín de Otoño! Después de un largo verano y un descanso que
falta nos hacía (por lo menos, a mí), el Boletín ENIGMA vuelve a la Red. Se
mantiene el formato de siempre, porque creo que cuanto más simple mejor, y
confío en que los resulte tan interesante como los otros 69 (buen número).
En la web no hay novedades dignas de mención. Me gustaría poder deciros que está
nuevecita y más interesante que nunca, pero el hecho es que este verano he
desconectado del trabajo. Si acaso, puedo mencionar una novedad: el foto "La
Cámara Negra" no funciona. No sé dónde estuve tocando, pero lleva ya algún
tiempo fuera de servicio. En cuanto tenga tiempo me pondré a ello, aunque la
verdad es que los pocos mensajes que contenía no animan mucho.
Sí me ilusiona, como siempre, volver a escribir de los temas criptográficos.
Primero echaremos un vistazo al pasado, recordando el final del criptógrafo Alan
Turing y su reciente reivindicación. De vuelta a temas más técnicos, veremos
cuál es el estado en el que se halla el Concurso SHA-3 organizado por el
gobierno de EEUU para definir un nuevo estándar de función hash. Catorce
candidatos han pasado a la segunda fase, en un concurso que no se decidirá hasta
dentro de un par de años. Y eso que el tiempo apremia. El pasado Junio se hizo
público un nuevo ataque contra SHA-1 que tiene una complejidad de 2^52 (es
decir, es tan difícil como probar 2^52 claves), lo que lo pone al alcance de
organizaciones con grandes medios. Afortunadamente, dicho ataque solamente tiene
éxito contra las llamadas "colisiones de cumpleaños", en las que el atacante
controla ambos mensajes. SHA-1 sigue siendo resistente a ataques de preimagen,
pero este nuevo ataque muestra que se acerca el tiempo para su obsolescencia.
Por desgracia, acelerar las cosas puede dar lugar a funciones hash mal
diseñadas, y por tanto vulnerables, y como dicen los norteamericanos, eso no es
una opción.
También tenemos aquí las últimas novedades sobre ataques contra el algoritmo de
cifrado AES, y remataremos la faena con el Affaire Nikon. Y lo que me dejo en la
pluma, que este verano ha sido pródigo en noticias.
Aprovecho la ocasión para informar al respetable que este fin de semana quien
esto escribe saltará al éter. El próximo sábado-domingo, en el programa de
madrugada "La Rosa de los Vientos", de Onda Cero, el que firma hablará con Bruno
Cardeñosa de temas de criptografía. No es "prime time", pero todo se andará. Y
ahora, de vuelta al Boletín. Que lo disfrutéis.
CRIPTOGRAFÍA IMPRESENTABLE - Criptografía Nikon
De
todos los aparatos electrónicos que tenemos a nuestro alrededor, creo que la
cámara fotográfica es uno de los últimos que podríamos sospechar que contienen
cripto. ¿Para qué? En principio, sólo se me ocurre que un espía podría necesitar
protección criptográfica, por si acaso alguien echa mano de su cámara y descubre
que ha fotografiado los planos secretos de los misiles iraníes.
No es de extrañar la sorpresa que embargó a los amantes a la fotografía cuando,
en Abril de 2005, se desveló que Nikon había tomado la decisión de cifrar parte
de la información que contienen las imágenes tomadas con los modelos D2X y D2H.
Tome buena nota el lector que no se trata de métodos de compresión (que se
limitan a hacer un archivo más pequeño, no requiren cifrado y se basan en
formatos abiertos y conocidos). Las cámaras digitales Nikon guardan las
fotografías en el llamado formato NEF (Nikon Electronic Format), que a veces
recibe el apodo de "negativo digital". Los usuarios típicos (vamos, usted y yo)
manejan los más conocidos formatos JPG o TIFF, pero los profesionales gustan de
trabajar directamente con el formato NEF, ya que guarda más información.
La parte que sufre el cifrado es la que guarda la información sobre balance de
blancos en los archivos NEF. De tal modo, si un fotógrafo profesional quiere
modificar la imagen en su ordenador, se verá forzado a utilizar software
especial de Nikon. Que, por supuesto, no es gratis. Las demás empresas de
software se verían en la disyuntiva de crackear el cifrado (lo que les podría
valer una demanda de violación de copyright según la ley DMCA), o resignarse a
no poder utilizar tal formato, lo que daría una ventaja competitiva a Nikon.
No es de sorprender, por tanto, que la persona que levantó la liebre fuese
Thomas Knoll, el ingeniero que desarrolló el popular programa de tratamiento de
imágenes Photoshop. Citando a Knoll: "Es improbable que nosotros [se refiere a
Adobe, propietaria de Photoshop] corramos el riesgo legal de romper el cifrado
de balance de blancos a menos de que consigamos garantías por parte de Nikon de
que no demandarán a Adobe. Puesto que Nikon claramente no quiere que ningún
convertidor de otra empresa pueda leer sus ficheros (prefieren claramente
venderte una copia de Nikon Capture), la probabilidad de que Nikon proporcione
esas garantías no es muy grande."
La medida de Nikon lleva a graves reflexiones. NEF es un formato de imagen
propiedad de Nikon. Vale. Pero se supone que cualquier información de una imagen
tomada por una cámara pertenecen al usuario, que es quien aprieta el disparador.
Resulta poco menos que increíble que Nikon considere que le pertenecen los
metadatos de balance de blancos hechos por los usuarios con sus propias cámaras.
A pesar de que solamente afecta a los profesionales, el hecho es que el usuario
no controla su propia cámara.
Por contra, formatos como JPG, TIFF o PNG son libremente usados y manipulables
por cualquier programa de tratamiento de imágenes. Pero NEF es un formato
propietario de Nikon. Si hoy toca unos datos aquí, ¿por qué no otros datos
mañana? ¿Y si un día decide que ningún fabricante de software puede abrir sus
fotos? Imagínense si un día los usuarios de Nikon se despertasen con la noticia
de que sus cámaras deben ser actualizadas para ser compatibles con nuevos
formatos de NEF, por un precio, claro. Por mucho que Nikon ofrezca compartir esa
información con terceros, o ponga a disposición pública plug-ins, drivers para
otros programas, siguen teniendo la sartén por el mango.
En efecto, Nikon emitió un comunicado de prensa en el que ofrecía un equipo de
desarrollo de sofware (SDK) para que "los desarrolladores AUTORIZADOS [la
mayúscula es mía] puedan producir software aplicando conceptos cretaivos a su
implementación y añadiendo capacidades para abrir el archivo Nikon NEF". Sin
embargo, Nikon deja bien claro que el formato NEF es suyo, y la alusión a los
desarrolladores autorizados indica que se atribuyen la facultad de decidir quién
puede trastear imágenes NEF, y en qué casos. Por supuesto, a los usuarios
normales, por no hablar de los profesionales, ni palabra.
En cualquier caso, y a despecho de la DMCA y demás artillería legal, el hecho es
que si Nikon cifra metadatos en su formato NEF, dicho cifrado ha de tener una
clave. Dicha clave estará inbuida en el software de tratamiento de imágenes de
Nikon, así como en el de los "desarrolladores autorizados". ¿Imaginan lo difícil
que ha sido crackear el cifrado?. A los pocos días de que Knoll saltase la
liebre, la empresa Bibble Labs anunció que su programa de tratamiento de
imágenes soportaba los formatos NEF de Nikon, incluidas las de las cámaras D2X y
D2H. Su programador, Dave Coffin, incluso ha compartido el código fuente en
Internet (http://www.cybercom.net/~dcoffin/dcraw/).
Lo irónico de caso es que el formato NEF varía de cámara a cámara, e incluso
depende del firmware de la cámara en cuestión. Es un problema que ha irritado a
los profesionales del ramo. Como remate, resulta que Nikon pretende regir cómo
se usa. Esta historia ya la conocemos: empresa X se cree muy lista, empresa X
usa cifrado, usuarios se enfadan, expertos Yn revientan el sistema, empresa X
queda en ridículo, problema resuelto. Pero nos ha proporcionado un preocupante
ejemplo de lo que puede suceder cuando dependemos demasiado del software de una
sola empresa y ésta decide imponer sus reglas. Hace cuatro años fue una cámara
digital, hoy puede ser un móvil, mañana un sistema de TDT digital ... y mejor no
sigo.
TEMAS DE ACTUALIDAD - AES bajo ataque
Dos nuevos artículos con ataques contra el algoritmo de cifrado AES fueron
publicados recientemente. El primer artículo, escrito por Alex Biryukov y Dmitri
Khovratovich, de la Universidad de Luxemburgo, presentan dos ataques diferentes.
Para entenderlos, hemos de recordar que el algoritmo AES puede usar claves de
diferente tamaño. Así, por ejemplo, hablamos de AES-256 para claves de 256 bits.
Por otro lado, como contamos en este mismo boletín, cada algoritmo de cifrado
suele consistir en la repetición de conjuntos de operaciones llamadas "rondas" (rounds),
algo así como el número de vueltas que hay que darle a la llave. AES-128 utiliza
10 rondas, AES-192 usa 12 y AES-256 usa 14.
En ocasiones, se descubren ataques contra algoritmos de cifrado, pero con un
número de rondas más pequeño. Por ejemplo, se han descubierto ataques contra
AES-256 en su versión de 12 rondas, lo que significa que el "algoritmo
completo", que utiliza 14 rondas, sigue siendo sólido. Hace poco, Biryukov y
Khovratovich anunciaron un ataque contra AES-256 completo. El ataque tenía una
complejidad computacional de 2^96, es decir, es tan difícil como probar 2^96
claves. Es mucha fortaleza todavía, pero ver un algoritmo de 256 con una
fortaleza equivalente a la de uno de 96 no resulta nada alentador.
Afortunadamente, es un ataque muy limitado, ya que solamente funciona con una
clave de cada 2^35. Dicho de otra manera, si tengo un mensaje cifrado con una
clave AES-256, la probabilidad de que esa clave sea atacable es de una entre
34.000 millones. Respiremos aliviados.
O no. El primero de los ataques Biryukov-Khovratovich, contra AES-192 completo,
tiene una complejidad de 2^123 en datos, 2^176 en tiempo y 2^152 en memoria; es
decir, requiere tanta cantidad de datos como la de 2^123 claves, tanta memoria
como 2^152 claves y tanto tiempo como probar 2^176 claves. Pero el segundo
ataque, contra AES-256, es mucho más efectivo: 2^119 en tiempo y datos, y 2^77
en memoria. Es decir, reduce a AES-256 a un mero cifrado de 119 bits. Y eso para
cualquier clave de 256 bits que usemos. Los autores afirman que pueden reducir
la complejidad a 2^110.5. Este ataque puede representar un problema para algunas
aplicaciones que usen AES, como por ejemplo algunas funciones hash de la
competición NIST que la utilizan. Irónicamente, la mayoría de aplicaciones de
AES son de 128 bits, que no parecen estar afectados por este ataque.
Un segundo artículo, de Alex Biryukov, Orr Dunkelman, Nathan Keller, Dmitry
Khovratovich, and Adi Shamir es mucho más grave. Note el lector que algunos de
estos nombres aparecen en el artículo "Concurso SHA-3: segunda ronda", de este
mismo boletín. Es decir, son expertos de primera fila. Y los ataques que
presentaron este verano contra AES-256 de rondas reducidas son devastadores. Una
versión AES-256 de 9 rondas cayó bajo un ataque con una complejidad de 2^39. La
versión de 10 rondas fue derrotada tras un trabajo de complejidad 2^45. !Más
débil que DES! Y la versión de 11 rondas puede, según ellos, caer en un ataque
con complejidad 2^70.
Como puede verse, no atacaron el AES-256 completo, que tiene 14 rondas. Pero si
llegan tan lejos con 11 rondas, ¿qué garantía hay de que siga siendo un
algoritmo seguro? Podemos consolarnos pensando en que, en primer lugar, catorce
rondas siguen siendo catorce rondas, y el ataque no llega hasta las 11, así que
el algoritmo ha de considerarse seguro. Es como en un episodio futurista de Los
Simpson, en el que un grupo de médicos halla remedio para 11 de las 14 heridas
mortales sufridas por el señor Burns. Magnífico, pero eso no sirve si seguimos
teniendo tres heridas mortales no resueltas. En el caso de los algoritmos AES en
sus diversas versiones, no resultaría difícil aumentar el número de rondas.
AES-256 con treinta rondas, o AES-128 con 20, nos permitiría dormir tranquilos a
cambio de un incremento aceptable en la velocidad del algoritmo.
En segundo lugar, estos ataques resulta difíciles de llevar a cabo en el mundo
real. El motivo es que son "ataques de claves relacionadas", en los que el
criptoanalista se supone que tiene acceso a textos llanos que han sido cifrados
con múltiples claves, las cuales están relacionada de forma específica. No vale
para un mensaje cifrado con una clave y ya está.
Resulta curioso que este nuevo ataque no haya sido realizado contra AES-192. De
hecho, en el primer artículo que he mencionado, la complejidad computacional del
ataque era menor para AES-256 que para AES-192. Es decir, a mayor tamaño de la
clave, menos dificultad para romperla. Según eso, una clave AES-2048 podría caer
en tiempo cero, ¿no? Bromas aparte, parece que hay una razón técnica para ello.
Según parece (lo que significa: a ver si un día me entero bien y os lo explico),
la clave es sometido a un conjunto de operaciones llamado "key schedule", y que
da como resultado un total de 15 sub-claves para operar. En el caso de AES-128,
se hacen casi las mismas operaciones de "key schedule" que en AES-256. Pero las
diferencias, aunque pequeñas, hace que AES-256 sea mucho más vulnerable a los
tipos de ataques que han desarrollado los autores antes citados. Es decir, hay
un fallo en la forma en que la clave se utiliza en las versiones AES de 192 y
256 bits.
A la vista de estos resultados, nuestro gurú favorito, Bruce Schneier, ha
llegado a recomendar que usemos AES-128 en lugar de AES-256. Resulta irónico,
pero en este caso menos bits es mejor.
TEMAS DE ACTUALIDAD - Reivindicando a Alan Turing
El
7 de Julio de 1954, Alan Turing falleció en su dormitorio. La causa oficial,
suicidio por cianuro. Los motivos que le llevaron a ello forman parte de un
triste capítulo no sólo de la criptografía, sino también de la historia de
Inglaterra.
Turing fue probablemente la persona que contribuyó más fuertemente al descifrado
de los códigos de Enigma. Sin embargo, al acabar la Segunda Guerra Mundial,
abandonó todo trabajo relacionado con la criptología. Desde 1945 hasta 1948,
Turing pasó a trabajar en el Laboratorio Nacional de Física del Reino Unido (NPL),
centrándose en el diseño del ACM, una computadora automática en la que volcó sus
ideas de preguerra sobre máquinas programables. Después, en 1949, pasó al
laboratorio de computación de la Universidad de Manchester, donde trabajó en el
software de la Manchester Mark I, uno de los primeros ordenadores. En 1952,
escribió el software de un programa de ajedrez.
Su trabajo, eminentemente civil, contrasta con el de muchos colaboradores y
amigos tanto británicos como norteamericanos, que pasaron en años posteriores a
ocupar prominentes cargos en el entramado de "criptoguerra" del futuro. No está
claro el motivo, aunque hay que recordar que ya durante los años 30 trabajaba en
el campo que hoy llamamos informática, y probablemente quiso volver a su trabajo
original.
O quizá influyese el hecho de su tendencia sexual. En efecto, Alan Turing era
homosexual, lo que en lenguaje de la época significaba un riesgo para la
seguridad. Un homosexual, se decía, es mucho más fácil de chantajear o
extorsionar. Por supuesto, este hecho se sustentaba en la aversión que en
aquella época existía por los homosexuales. En realidad, a lo largo de la
historia de la Guerra Fría, muchos hombres han traicionado a su país, pero la
mayoría eran heteros. En cualquier caso, parece que a Turing se le mantuvo
alejado de trabajos sensibles (léase criptoanálisis gubernamental), pero se le
dejó tranquilo en su laboratorio, donde no trabajaba con material confidencial
ni códigos secretos.
Tal estado de cosas duró hasta un infortunado día de enero de 1952, cuando un
ladrón entró a robar en casa de Turing. Mientras ponía la denuncia, tuvo que
explicar por qué el principal sospechoso del robo era un amigo que había alojado
en su propia casa. Pensando ingenuamente que no hacía nada malo, lo explicó. No
pareció caer en la cuenta de que declarar un acto homosexual consentido
significaba confesarse culpable de "indecencia mayor", un delito creado en 1885
que aún seguía vigente, y cuya pena máxima era de dos años. Ignoramos si el
ladrón acabó siendo detenido, pero en palabras de Stephen Budianski, "Ir
persiguiendo ladrones de casas es trabajo duro, pero procesar a gente que entra
en una estación de policía ofreciendo una confesión es fácil."
La homosexualidad de Alan Turing era ahora de dominio público. A pesar de su
condecoración OBE (Orden del Imperio Británico), sus logros de guerra y su
brillantez académica, se le retiró su acreditación de seguridad y se le prohibió
trabajar en proyectos de investigación relacionados con ordenadores. Consiguió
evitar la prisión, pero el precio fue alto: hubo de aceptar la castración
química mediante inyecciones de hormonas femeninas.
Alan Turing pasó los últimos dos años de su vida en condiciones penosas. El
tratamiento químico le produjo impotencia y obesidad, e incluso desarrolló
pechos como efecto secundario. Su trabajo con ordenadores se acabó. De volver al
nuevo Bletchley Park, ni pensarlo. Tras una grave depresión, mojó una manzana en
cianuro y le dio varios mordiscos. Así murió uno de los más brillantes
criptoanalistas de su generación.
El propio trabajo de Alan Turing durante la guerra no fue reconocida (de hecho,
ni tan siquiera conocida públicamente) hasta los años ochenta. Durante estos
años, tanto su labor como la de sus compañeros de Bletchley Park ha sido
reconocida y honrada. Pero el final de Turing, denigrado y acorralado por su
condición sexual, ha permanecido como un punto negro en la historia de la
criptografía. Hasta hace muy poco. Un grupo de peticionarios, entre los que se
encontraba el científico Richard Dawkins, promovió una apelación al Primer
Ministro, Gordon Brown, para que reivindicase la memoria de Turing.
El pasado 10 de septiembre, lograron su objetivo. En una declaración oficial (http://www.number10.gov.uk/Page20571),
el Primer Ministro se disculpó en nombre del gobierno:
"Su tratamiento fue, por supuesto, de lo más injusto, y me alegro de tener esta
oportunidad para decir lo profundamente que lamento lo que le ocurrió ... Es
gracias a ... gente como Alan Turing que los horrores del Holocausto y de la
guerra total son parte de la historia de Europa, y no de su presente. En nombre
del gobierno británico, y de todos aquellos que viven libres gracias al trabajo
de Alan, me siento orgulloso de decir: lo sentimos, te merecías algo mejor"
La declaración de Brown ha propiciado muchos comentarios. Ha habido quienes han
visto en ella poco más que un gesto hacia la comunidad gay del Reino Unido, en
una período políticamente débil para el actual Primer Ministro. Parece que en
algunas líneas, en efecto, Brown arrima el ascua a su sardina respecto al
tratamiento a la comunidad homo ("Me enorgullece decir ... que en los últimos 12
años este gobierno ha hecho mucho para hacer la vida más justa y equitativa para
nuestra comunidad LGBT [Lesbiana, Gay, Bisexual y Transexual]"). Asimismo,
parece aprovechar para vestirse la chaqueta de cruzado y estadista ("A comienzo
de este año, estaba yo con los presidentes Sarkozy y Obama para honrar el
servicio y el sacrificio de los héroes que asaltaron las playas de Normandía
hace 65 años"). Algunos líderes de la comunidad gay critican el que miles de
personas a las que se sometió a la misma ley no han sido siquiera mencionadas, y
que disculparse ante Alan Turing solamente porque es famoso no está bien. Más de
uno lo han visto como un gesto vacío, una declaración vacua que queda bien y
poco más.
Otra punto polémico que se ha planteado es el de la necesidad de una disculpa.
Por mucho que nos repugne el tratamiento dado a Turing en su día, hay que tener
en cuenta que no se cometió ninguna ilegalidad. Se le aplicó la legislación
vigente en su época. No vemos la necesidad, opinan algunos, de disculparnos por
algo que se hizo correctamente según las normas de entonces, y por un gobierno
que hoy no existe. Tal vez sea técnicamente cierto, pero las injusticias no
entienden de leyes. Recordemos que todos los actos de la Alemania de Hitler,
incluyendo la Solución Final, fueron también legales. Ello no le ha evitado a
Alemania el estigma del nazismo ni medio siglo de continuas disculpas. Hacer lo
correcto no es siempre sinónimo de cumplir la ley. El propio Brown lo reconoció
en el Telegraph: "Aunque al Señor Turing se le aplicó las leyes de su tiempo, y
no podemos volver atrás el reloj, el tratamiento a que se le sometió fue de lo
más injusto."
En el apartado positivo, muchas personas están (estamos) contentos con la
disculpa. No conlleva reconocimiento de méritos, gratificaciones económicas o
medallas, pero es una reparación moral a una injusticia histórica. El mero hecho
de que un gobierno se trague su orgullo y reconozca "lo sentimos, estuvo mal" es
algo inusitado en los tiempos que corren, y debe contar en favor del declarante.
Ha reparado lo que hoy denominaríamos una injusticia histórica. Una de las
nietas de Turing, Inagh Payne, quien ni siquiera estaba al tanto de la
orientación sexual de su abuelo, afirmó estar muy agradecida por la disculpa.
Bletchley Park, en una declaración pública, se alegra por la disculpa y espera
que este reconocimiento sirva para colaborar en la preservación de BP (parece
que eso de arrimar el ascua a la sardinapropia no es exclusivo de los
políticos). Y la cosa puede llegar lejos. John Graham-Cumming, el informático
que tuvo la idea de hacer la petición de disculpas, también se ha dirigido a la
Reina en petición de un título nobiliario póstumo para Turing. Algunos guasones
han llegado a proponer que su imagen se incorpore a algún billete de banco
británico. Personalmente, no creo que a su Graciosa Majestad le haga gracia
alguna que la echen del billete de veinte libras para dar paso a un cerebrito.
Con billete propio o sin él, creo que ustedes, lectores del Boletín ENIGMA, se
unirán a mí en un brindis con jerez (bebida nacional inglesa, a estas alturas) a
la memoria de Alan Turing. Y el año que viene, a verlo en los billetes de
veinte. Bueno, un sello de correos también vale.
TEMAS DE ACTUALIDAD - Concurso SHA-3: segunda ronda
La
"Operación Triunfo" organizada por el gobierno de Estados Unidos para escoger el
nuevo estándar de función hash sigue su curso . Para refrescar la memoria,
recordemos que, a tenor de ciertos ataques criptoanalíticos contra la popular
función hash SHA-1, el NIST (National Institute of Standards and Technology)
abrió un concurso público para escoger un nuevo estándar, de forma muy similar a
como las vulnerabilidades en DES dieron paso a una competición similar de la que
salió el nuevo Patrón Avanzado de Cifrado(AES, Advanced Encryption Standard).
Como vimos en su momento, ("Concurso SHA-3: primera ronda", Boletín ENIGMA 66),
la primera ronda de la competición acabó con un total de 51 funciones
candidatas. Estas funciones fueron sometidas a un escrutinio riguroso en la "First
SHA-3 Candidate Conference" en Leuwen, Bélgica. No deja de resultar llamativo
que un concurso para un estándar digital norteamericano se decante en primera
ronda en una ciudad europea. Al mismo tiempo nos indica la internacionalización
del concurso, ya que no solamente muchas funciones candidatas provienen de fuera
de EEUU, sino que el ganador acabará convirtiéndose en un estandar de facto para
aplicaciones en todos los países del mundo.
En septiembre de 2009, el NIST dio carpetazo a esta primera ronda con un Status
Report. Resulta agradable leerlo, ya que, a diferencia de lo que ocurre en el
sector privado (donde una ruptura de un algoritmo criptográfico no se reconocerá
jamás ni a punta de pistola), llaman al pan, pan y al vino, vino, sin tapujo
alguno:
"La competición es la respuesta del NIST a recientes avances en el
criptoanálisis de los algoritmos de hash, incluyendo el estándar del gobierno
SHA-1... [diversos ataques] han cuestionado seriamente la seguridad del uso de
SHA-1 en firmas digitales y otras aplicaciones que requieran resistencia a la
colisión"
Los criterios para pasar a la segunda ronda eran los siguientes: seguridad,
coste y prestaciones (en términos de memoria y eficiencia computacional),
flexibilidad, simplicidad y elegancia en el diseño. Todos estos parámetros son
deseables, pero no siempre pueden conseguirse en su totalidad. La rapidez y
eficiencia computacional, por ejemplo, suelen conseguirse en detrimento de la
seguridad, y viceversa. Es necesario, por tanto, encontrar un punto de
compromiso (un "trade-off"). Ningún padre de familia escogería como vehículo
familiar un Ferrari si lo que necesita es espacio para el maletero.
Uno de los candidatos que han caído es el MD6, prometedor bicho de Ron Rivest y
su equipo. El creador del grupo de algoritmos de hash MD tiró la toalla a
comienzos de Julio. Según parece, no es lo bastante rápido para ser competitivo.
Para entenderlo, hemos de hacer notar que la mayoría de las funciones
criptográficas se forman a partir de "rondas" (rounds), que son conjuntos de
operaciones binarias. Para entendernos, es como si estuviésemos diseñando un
modo de barajar las cartas. Cada vez que las mezclamos sería equivalente a una
ronda. Claramente, si mezclamos pocas veces acabaremos pronto, pero no tendremos
la seguridad de que hayamos barajados bien. En el otro extremo, un bajarado
demasiado largo nos asegurará una aleatoriedad total, pero para entonces los
demás contrincantes se habrán aburrido y nos encontraremos jugando al poker con
nuestra propia sombra.
Eso parece haberle pasado al MD6. Había que escoger entre reducir el número de
rondas hasta un nivel en el que sería susceptible a ataques de criptoanálisis
diferencial, o dejarlo a un nivel que lo haría muy lento para implementar. Y
recordemos que la rapidez es un factor importante para que un estándar hash se
implante, que no todo son procesadores Core Duo. Estrictamente hablando, el
equipo de Rivest no retiró a MD-6 de la competición, pero tuvieron el detalle de
ser sinceros tanto con los demás como consigo mismos:
"El NIST puede escoger libremente a MD6 para considerarlo en la próxima ronda,
si así lo desea. Pero en este punto, MD6 no cumple nuestros propios estándares
de lo que debe ser un candidato a SHA-3, y sugerimos que NIST busque mejor en
otra parte"
Los expertos tomaron nota y eliminaron a MD6 de la lista de candidatos para la
segunda ronda. Aun así, Rivest nos deja a todos un ejemplo de libro sobre ética
profesional.
De la cincuentena de candidatos, solamente catorce han sido "nominados" para la
Segunda Ronda del concurso SHA-3. Por orden alfabético, y con el nombre de su
principal responsable, son:
* BLAKE, de Jean-Philippe Aumasson, [Universidad de Ciencias Aplicadas del
Noroeste de Suiza]
* BLUE MIDNIGHT WISH, de Svein Johan Knapskog, [Universidad Noruega de Ciencia y
Tecnología]
* CubeHash, de Dan J. Bernstein, [Universidad de Illinois en Chicago]
* ECHO, de Henri Gilbert [Grupo de Investigación Cripto, Orange Labs]
* Fugue, de Charanjit S. Jutla [IBM Research]
* Grøstl, de Lars Ramkilde Knudsen [Universidad Técnica de Dinamarca]
* Hamsi, de Ozgul Kucuk [Universidad Católica de Leuven, Bélgica]
* JH, de Hongjun Wu [Universidad Técnica de Dinamarca]
* Keccak, de Joan Daemen [ST Microelectronics y NXP Semiconductors]
* Luffa, de Dai Watanabe [afiliación desconocida]
* Shabal, de Jean-Francois Misarsky [sin afiliación conocida]
* SHAvite-3, de Orr Dunkelman [Instituto Israelí de Tecnología Technion]
* SIMD, de Gaetan Leurent [Escuela Normal Superior, París]
* Skein, de Bruce Schneier [sin afiliación conocida]
Hay varios nombres y lugares conocidos en esta lista. Dejando aparte a Bruce
Schneier (por lo obvio), nos encontramos con dos grupos de la Universidad
Católica de Leuven, donde -no por casualidad- se llevó a cabo primera
conferencia de candidatos SHA-3. Kekkac es presentado por, entre otros, NXP
Semiconductors, una empresa a la que ya pusieron a caldo por sus fallos al
implementar sistemas de cobro electrónico ("Criptoanalizando el bonobús",
Boletín ENIGMA 59). Esperemos que esta vez les salga mejor. Solamente vemos otra
empresa privada en la lista, aunque se trata nada menos que de IBM. El resto,
como podemos ver, corresponde a universidades y centros de investigación
avanzados.
Como ejemplo podemos citar a Orr Dunkelman, quien colabora con el famoso
investigador criptológico Eli Biham. Ambos expertos no sólo han construido
SHAvite-3 sino que han desarrollado un esquema de desarrollo de funciones hash
al que llaman HAIFA (HAsh Iterative FrAmework).
De hecho, tres de las 14 funciones candidatas (Blake, Echo, Shavite-3) se han
basado en el marco HAIFA. El otro marco, ampliamente usado hasta ahora y
denominado Merkle-Damgard, es la base de otras seis funciones. Los otros
utilizan la llamada "construcción de esponja" o son de nueva construcción. Algún
día me atreveré a explicar las características de estos modelos de construcción
para funciones hash, pero por favor, déjenme que coja aire antes. Mucho aire.
Y mientras me hiperventilo, las catorce funciones hash pasan a la Segunda Ronda.
Se les permitirá a los autores hace pequeñas tareas de "tuneado" antes de que
vuelvan a ser examinados hasta el tuétano por la comunidad internacional de
expertos. La Segunda Conferencia de Candidatos a SHA-1 está programada para el
23-24 de Agosto de 2010 en Santa Bárbara (California, EEUU). Según los planes
actuales, para finales de 2010 la lista de candidatos se habrá reducido a cinco.
Una Tercera Ronda, hacia el primer trimestre de 2011, nos llevará al ganador. Y
aviso con tiempo: al que se le ocurra llamarlo Trunfito lo echo del Boletín.
El boletín ENIGMA es una publicación gratuita del Taller de
Criptografía, y se rige por las normas de la licencia de Creative Commons
Reconocimiento-NoComercial-CompartirIgual. Se permite su libre copia,
distribución y comunicación para fines no lucrativos, citando nombre y
referencia.
Para más información, véase la licencia Creative Commons en sus formas reducida
y completa:
http://www.cripto.es/licencia/deed.es.htm
http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.es
PARA DARSE DE ALTA: envíe un mensaje a la dirección alta arroba cripto.es
añadiendo las palabras alta_enigma en el asunto (subject).
PARA DARSE DE BAJA, envíe un mensaje a la dirección baja arroba cripto.es
añadiendo las palabras baja_enigma en el asunto (subject)
Para comentarios a este boletín (dudas, preguntas, consultas, críticas,
noticias, colaboraciones, etc.), estoy a su disposición en la dirección
noticias arroba cripto.es
Página del Boletín Enigma (incluyendo números atrasados):
http://www.cripto.es/enigma.htm
(c) Arturo Quirantes 2007
Vuelta a la Página principal del Boletín ENIGMA