Los algoritmos criptográficos nacen para ser rotos. Desde el momento en que un sistema es el responsable de la protección de un secreto, aparecen los ataques persiguen la ruptura de la protección del mismo para conocerlo. Es una invariante a lo largo de la historia, y al final, o bien la investigación pura y dura, o el avance tecnológico que abre la puerta a nuevos ataques antaño impensados, para acabar por servir en una bandeja plata el contenido que protege.
Hay que pensar en nuevas formas de protegerse contra los nuevos ataques, ya sea mejorando al extremo la implementación de los existentes para sacar el máximo de protección de los ya existentes o desarrollando nuevos algoritmos que puedan plantar cara al tiempo al menos mientras el secreto tenga sentido. Nada de lo cifrado hoy en día con los algoritmos usados aguantará ad infinitum.
En estos días extraños, en los que atónitos asistimos a la desaparición de TrueCrypt justo cuando estaba bajo el punto de mira en un proceso de auditoría y en plena resaca de todas las revelaciones de espionaje de NSA y sabores gubernamentales similares, la criptografía se antoja más importante si cabe como disciplina de estudio y orientación profesional.
Las explicaciones de TrueCrypt parecen vagas e inconsistentes, y las recomendaciones para pasar a Bitlocker o FileVault, cuanto menos, alejan de la historia de TrueCrypt ese espíritu hacktivista y rebelde en contra del mainstream que se había asociado a la idea de que detrás de ese proyecto se encontraba un grupo de Robin Hoods. Si bien, hay que decir que la auditoría de seguridad que se está haciendo a su código no ha dado aún con ninguna puerta trasera, aunque si como sospechan los menos confiados, solo tiene que tener una o dos, que deberían estar bien escondidas.
Los fallos en otras implementaciones de sistemas criptográficos han ido apareciendo en los sitios más insospechados, y en algunos de ellos han sido debido a los famosos números aleatorios que deberían ser de tal idem, pero que a la hora de la verdad pocas veces se consigue. Garantizar la aleatoriedad pura debe ser consistente a lo largo del tiempo, y así, la distribución de los mismos no debe degenerarse a lo largo de muchas, muchas, muchas iteraciones. Si por desgracia lo hace, entonces existirá una debilidad que reducirá la complejidad a la hora de romper el sistema de cifrado que dependa de él.
Páginas y páginas dedica el famoso libro El Criptonomicón de Neal Sthepenson a explicar estos conceptos. No deja de ser una novela, alejada de los estudios de criptografía que presenta de forma pulcra y didáctica nuestros amigos Jorge y Alfonso, pero sus metáforas sobre las mujeres sacando las bolitas de las bolsas y mirando con el rabillo del ojo, o reconociendo los números por las texturas de las esferas, no se van fáciles del ojo de la mente, que dicen los anglos. Como no, si has leído el libro, recordarás también la explicación por la que una mensaje cifrado en una baraja de cartas no debe ser protegido lanzando la baraja al aire. Cuántos momentos irrepetibles pegados al papel tiene esa novela.
Cuando estamos en pleno uso de los smartphones para hacerse selfies - hasta yo me he tomado alguno con alguno de por ahí en algún país - aparece un trabajo de esos que me encantan por ser sencillos, imaginativos y a priori muy útiles si se confirman sus enunciados. Es el caso del trabajo que lleva el nombre (QRNG) Quantum Random Number Generation on Smartphones, el cual propone utilizar, con imaginación y mucha usabilidad, la cámara esa del smartphone con la que muchos se tiran las fotos esas que arruinarán su vida futura - ha de tener al menos 8 Mega-píxeles - no solo para que el susodicho/a quede lindo/a y molón/a en las fotos sino para que se pueda leer la cantidad de fotones que hay en un haz de luz y así ponder generar un número aleatorio, que sea aleatorio "de verdad".
Hay que pensar en nuevas formas de protegerse contra los nuevos ataques, ya sea mejorando al extremo la implementación de los existentes para sacar el máximo de protección de los ya existentes o desarrollando nuevos algoritmos que puedan plantar cara al tiempo al menos mientras el secreto tenga sentido. Nada de lo cifrado hoy en día con los algoritmos usados aguantará ad infinitum.
En estos días extraños, en los que atónitos asistimos a la desaparición de TrueCrypt justo cuando estaba bajo el punto de mira en un proceso de auditoría y en plena resaca de todas las revelaciones de espionaje de NSA y sabores gubernamentales similares, la criptografía se antoja más importante si cabe como disciplina de estudio y orientación profesional.
Las explicaciones de TrueCrypt parecen vagas e inconsistentes, y las recomendaciones para pasar a Bitlocker o FileVault, cuanto menos, alejan de la historia de TrueCrypt ese espíritu hacktivista y rebelde en contra del mainstream que se había asociado a la idea de que detrás de ese proyecto se encontraba un grupo de Robin Hoods. Si bien, hay que decir que la auditoría de seguridad que se está haciendo a su código no ha dado aún con ninguna puerta trasera, aunque si como sospechan los menos confiados, solo tiene que tener una o dos, que deberían estar bien escondidas.
Los fallos en otras implementaciones de sistemas criptográficos han ido apareciendo en los sitios más insospechados, y en algunos de ellos han sido debido a los famosos números aleatorios que deberían ser de tal idem, pero que a la hora de la verdad pocas veces se consigue. Garantizar la aleatoriedad pura debe ser consistente a lo largo del tiempo, y así, la distribución de los mismos no debe degenerarse a lo largo de muchas, muchas, muchas iteraciones. Si por desgracia lo hace, entonces existirá una debilidad que reducirá la complejidad a la hora de romper el sistema de cifrado que dependa de él.
Páginas y páginas dedica el famoso libro El Criptonomicón de Neal Sthepenson a explicar estos conceptos. No deja de ser una novela, alejada de los estudios de criptografía que presenta de forma pulcra y didáctica nuestros amigos Jorge y Alfonso, pero sus metáforas sobre las mujeres sacando las bolitas de las bolsas y mirando con el rabillo del ojo, o reconociendo los números por las texturas de las esferas, no se van fáciles del ojo de la mente, que dicen los anglos. Como no, si has leído el libro, recordarás también la explicación por la que una mensaje cifrado en una baraja de cartas no debe ser protegido lanzando la baraja al aire. Cuántos momentos irrepetibles pegados al papel tiene esa novela.
Cuando estamos en pleno uso de los smartphones para hacerse selfies - hasta yo me he tomado alguno con alguno de por ahí en algún país - aparece un trabajo de esos que me encantan por ser sencillos, imaginativos y a priori muy útiles si se confirman sus enunciados. Es el caso del trabajo que lleva el nombre (QRNG) Quantum Random Number Generation on Smartphones, el cual propone utilizar, con imaginación y mucha usabilidad, la cámara esa del smartphone con la que muchos se tiran las fotos esas que arruinarán su vida futura - ha de tener al menos 8 Mega-píxeles - no solo para que el susodicho/a quede lindo/a y molón/a en las fotos sino para que se pueda leer la cantidad de fotones que hay en un haz de luz y así ponder generar un número aleatorio, que sea aleatorio "de verdad".
Figura 1: Imagen de PhysicsWorld sobre el proceso realizado (con un Nokia) |
El "de verdad" lo he puesto entre comillas pues la ciencia nos depara sorpresas en el futuro, y sorprendido me hallaré dentro de un tiempo si no sale alguien capaz de crear una bombilla especial que siempre envíe el mismo número de fotones y pueda ser predicho con mayor grado de probabilidad el valor que va a capturar la cámara del smartphone. Dejo a parte por evidente, los problemas de que alguien haga como la NSA y meta un troyano en el smarphone para que cuente los fotones que ellos quieran.
El proyecto en sí lo han publicado Bruno Sanguinetti, Anthony Martin, Hugo Zbinden y Nicolas Gisin de la Universidad de Ginebra en Suiza, y plantean, como dicen en PhysicsWorld, que todos los terminales puedan contar con un chip QRNG que costaría unos 2 USD para garantizar la generación de esos números aleatorios de verdad y por ende la seguridad. de cualquier sistema criptográfico que se base en ellos. La prueba, como se ve en la imagen de la Figura 1, se hizo con un terminal Nokia o "Nokía" que dicen los anglosajones.
El proyecto en sí lo han publicado Bruno Sanguinetti, Anthony Martin, Hugo Zbinden y Nicolas Gisin de la Universidad de Ginebra en Suiza, y plantean, como dicen en PhysicsWorld, que todos los terminales puedan contar con un chip QRNG que costaría unos 2 USD para garantizar la generación de esos números aleatorios de verdad y por ende la seguridad. de cualquier sistema criptográfico que se base en ellos. La prueba, como se ve en la imagen de la Figura 1, se hizo con un terminal Nokia o "Nokía" que dicen los anglosajones.
Figura 2: Estructura del dispositivo detector de luz para generar el QRNG |
La ventaja, dicen, es que las CMOS de las cámaras de los smartphone actuales que todo el mundo lleva en su bolsillo cuando anda y encima de la mesa cuando come es que son suficientemente sensibles hoy en día como para poder capturar con exactitud el número de fotones en el haz de luz y hacer un dispositivo QRNG basándose en ellos es bastante sencillo para cualquier empresa.
Supuestamente, el sistema de generación de números aleatorios que produce es consistente en ciclos de 10 a la 118, lo que viene a ser un valor muy grande para atacar la predicción del número. Lástima que este trabajo no se haya utilizado en el juego de WatchDogs que se ha lanzado recientemente donde el protagonista, un hacker, interactúa con su smartphone. Me hubiera encantado ver al protagonista - del que me hicieron un par de montajes con Photoshop y mucho arte - tuviera que hacerse unos selfies para cifrar de forma segura algunos documentos. Hubiera sido futurista "de verdad".
Figura 3: En WathDogs el protagonista usa su smartphone para resolver las fases |
Esta propuesta, tal vez podría ayudar a solucionar algunos de los citados y recurrentes problemas con la aleatoriedad en los sistemas de cifrado, que tan importantes son como se ha explicado una y otra vez para el cifrado de las comunicacones móviles, aunque insisto en que no hay que olvidar lo dicho atrás en este post y en el tiempo, que si la implementación está mal hecha, dará lo mismo la aleatoriedad de los números.
Saludos Malignos!
Bonito artículo
ResponderEliminarla ostia la imagen del watchs dogs, si saliera chema el juego molaria mas de lo que en realidad es...
ResponderEliminarbueno espero ser un hacker en un futuro me falta mucho ya cada vez me sorprendo mas y estos temas en verdad son difíciles de desarrollar creo que aun no estoy preparado para esto pero pues interesante el tema demasiada tecnología para mi por el momento buenos artículos chema un saludo me gusto el montaje
ResponderEliminarUnos colaboradores y yo intentamos usar ese principio de "contar fotones" para un sistema de micrófonos láser. El problema que nos encontramos es que los sensores de las cámaras que hay habitualmente en el mercado (incluyendo las de los móviles) no dan la información de la captura en bruto, sino que hacen compresión y balance de blancos por hardware, con lo que se perdía esa información sutil que necesitábamos.
ResponderEliminarTal vez para esta aplicación les baste con algo menos preciso, y por eso la pérdida de información no impida la generación de números aleatorios; pero en general, eso de hablar de"contar fotones" con cámaras como las que hay ahora mismo en el mercado doméstico lo pondría en cuarentena. Si se usaran sensores distintos a los que suelen traer los móviles actuales, que sirvieran la información en bruto al procesador, me parecería más razonable. Pero eso tiene sus problemas: el ancho de banda necesario para eso es muy grande.