Ir al contenido principal

El gobierno americano quiere que volvamos a confiar en los estándares de cifrado


Por mucho que la NIST (National Institute of Standards and Technology) quiera convencernos de que no creó sistemas de cifrado debilitados con el fin de que fueran fáciles de romper para la NSA, lo cierto es que parece bastante claro que se introdujeron puertas traseras en los algoritmos que sustentan la privacidad y la seguridad en Internet. El problema es que estos estándares de cifrado acaban formando parte de los estándares internacionales a través de ISO (International Organization for Standardization), de la que forman parte 163 países, entre ellos el nuestro.
A raíz de las filtraciones de Snowden, acabamos enterándonos (siempre según él) que en 2006 se certificó el estándar Dual EC DRBG 800-90, que es la especificación para un generador de números aleatorios determinista necesario para la implementación de cifrados de flujo, como los usados en las conexiones HTTPS en Internet o en las comunicaciones móviles, y que dicha especificación tenía una puerta trasera para la NSA.
Los cierto es que la comunidad criptográfica no ve con buenos ojos esta relación tan estrecha entre NIST y NSA. Desde luego, tiene sentido que exista una buena colaboración dada la experiencia y el conocimiento de la NSA sobre Criptografía, pero parece que esta última ha aprovechado la relación de confianza para introducir su caballo de Troya.
Por ello, NIST ha empezado a hacer movimientos para limpiar su imagen y tratar de recuperar la confianza perdida. Uno de los primeros movimientos ha sido abrir a consulta pública la publicación especial 800-90A nombrada anteriormente y los borradores de las publicaciones 800-90B y 800-90C que también usan el mismo generador de números aleatorios. Esto significa que la comunidad criptográfica podrá estudiar y dar el visto bueno a las especificaciones.
La agencia ha declarado que "si se encuentra alguna vulnerabilidad en este o en cualquier otro estándar de NIST, trabajaremos con la comunidad criptográfica para solucionarlo lo más rápidamente posible".
En definitiva, parece un buen paso en una buena dirección. Es vital recuperar la confianza en los estándares criptográficos. Que se reabran estos estándares para una revisión pública es algo objetivamente positivo, más allá de teorías conspiranoicas.

Comentarios

Entradas populares de este blog

Criptografía en Python con PyCrypto

A la hora de cifrar información con Python, tenemos algunas opciones, pero una de las más fiables es la librería criptográfica PyCrypto, que soporta funciones para cifrado por bloques, cifrado por flujo y cálculo de hash. Además incorpora sus propios generadores de números aleatorios. Seguidamente os presento algunas de sus características y también como se usa.


Regresión lineal y descenso de gradiente con Python

En machine learning, el objetivo principal es encontrar un modelo que explique el comportamiento de un sistema (en el amplio sentido de la palabra). A partir de unos datos de entrenamiento, un sistema de aprendizaje automático ha de ser capaz de inferir un modelo capaz de explicar, al menos en su mayoría, los efectos observados. Pero también aplicar ese aprendizaje. Por ejemplo, un sistema de machine learning muy lucrativo para las empresas anunciantes es aquél que dado un perfil de usuario (datos de entrada A), sea capaz de predecir si pinchará o no (salida B) sobre un anuncio publicitario de, por ejemplo, comida para gatos. No es sencillo crear un modelo capaz de predecir el comportamiento del usuario (o sí), pero en todo caso, existen diferentes técnicas que nos permiten abordar el problema. En el caso del ejemplo que acabamos de ver, el modelo debería ser capaz de clasificar a los usuarios en dos clases diferentes, los que pulsarán y los que no pulsarán el anuncio de comida de ga…

Manejo de grafos con NetworkX en Python

El aprendizaje computacional es un área de investigación que en los últimos años ha tenido un auge importante, sobre todo gracias al aprendizaje profundo (Deep Learning). Pero no todo son redes neuronales. Paralelamente a estas técnicas, más bien basadas en el aprendizaje de patrones, también hay un auge de otras técnicas, digamos, más basadas en el aprendizaje simbólico. Si echamos la vista algunos años atrás, podemos considerar que quizá, la promesa de la web semántica como gran base de conocimiento ha fracasado, pero no es tan así. Ha ido transmutándose y evolucionando hacia bases de conocimiento basadas en ontologías a partir de las cuales es posible obtener nuevo conocimiento. Es lo que llamamos razonamiento automático y empresas como Google ya lo utilizan para ofrecerte información adicional sobre tus búsquedas. Ellos lo llaman Grafos de Conocimiento o Knowledge Graphs.


Gracias a estos grafos de conocimiento, Google puede ofrecerte información adicional sobre tu búsqueda, además…