Boletín ENIGMA - nº 56

1 de Diciembre de 2007

 


Boletín del Taller de Criptografía de Arturo Quirantes Sierra


Dirección original: http://www.cripto.es/enigma/boletin_enigma_56.htm


EDITORIAL

TEMAS DE ACTUALIDAD - Funciones hash: el nuevo concurso

TEMAS DE ACTUALIDAD - Miscelánea criptográfica

CRIPTOGRAFÍA HISTÓRICA - Colossus, el proyecto redivivo

LIBERTAD VIGILADA - Las conclusiones de la Comisión Echelon
 


 

 EDITORIAL

 

Escribir un boletín es algo así como hacer de broker de bolsa. No solamente tienes que estar pendiente de la cotización, sino que hay veces que la bolsa está muy tranquila y otras veces en que no se puede parar ni para comer. Pues aquí lo mismo. Pensaba que este mes sería de lo más tranquilo cuando zas, de repente empiezan a aparecer noticias interesantes. Por eso, la mayoría de ellas las he incluido en un cajón de sastre, bajo el título de "miscelánea criptográfica".

Tenía asimismo pensado seguir con el artículo de Shannon del mes pasado, pero le ha aparecido competencia. Este mes hemos descubierto que Colossus, el que quizá pueda ser considerado primer ordenador de la historia, ha sido "resucitado" por un grupo de entusiastas. Y puesto que la tarea de Colossus era descifrar códigos, ¿cómo podíamos mantener la noticia al margen? Pues nada, crónica al canto, y ya de paso hablamos del papel que tuvo durante el descifrado de códigos durante la Segunda Guerra Mundial. Esperemos que un día de estos pueda salir también algo sobre el criptoanálisis que efectuaba, aunque eso es para sentarse y pensarse bien qué escribir.

Estoy seguro que este mes encontraréis bastante ameno este vuestro Boletín. Y esperemos que el mes que viene siga igual. Queremos despedir bien este año que se nos acaba. Pero todavía no. Feliz lectura a todos.

 


 

  TEMAS DE ACTUALIDAD - Funciones hash: el nuevo concurso

 

Como sabrán nuestros lectores, las funciones hash que se utilizan actualmente en aplicaciones diversas adolecen de diversos problemas. Para quien no lo recuerde, una función hash toma un mensaje o texto, y lo comprime en una ristra de pocos bits. De ese modo, el mensaje queda representado por dicha ristra (hash) para, por ejemplo, poder efectuar firmas digitales o poder comprobar si el mensaje ha sido alterado de alguna forma.

Sin embargo, no todo es llegar y besar el santo. Se supone que las funciones hash son unidireccionales: a partir del mensaje podemos calcular el hash, pero no al revés. Por eso, en muchas aplicaciones en las que se requiere una contraseña de acceso, se usan el hash. Es decir, yo escribo la contraseña, ésta se transforma mediante la función hash, y es el hash el que se transmite al sistema. Así nadie puede obtener la contraseña husmeando el tráfico o hackeando los archivos del sistema.

El problema es que las funciones hash actuales están siendo cada vez más cuestionadas. Un problema tiene que ver con el tamaño. MD5, un algoritmo muy usado, genera un hash de 128 bits, con lo que obtener la contraseña a partir del hash resultaría muy difícil. Una opción sería generar múltiples contraseñas y computar su función hash, con el fin de obtener una gran tabla de correspondencias. Hay tablas de ese tipo por Internet (no completas, por supuesto). Hace pocos días alguien encontró una forma de acelerar el proceso: !usar Google! Por lo visto, el programa Wordpress guarda el hash MD5 de las contraseñas, así que ¿por qué un googlear un poco? Dicho y hecho: pueden leer los detalles en http://www.schneier.com/blog/archives/2007/11/using_google_to.html y enlaces allí contenidos. Por supuesto, hay una forma de evitar este fallo, y se conoce desde los años 70, pero cuando no se presta atención al pasado, a veces pasa lo que pasa.

Incluso en las aplicaciones mejor codificadas, tenemos la limitación de que las funciones más habituales, como MD5 o SHA-1, tienen fallos criptoanalíticos. De SHA-1, por ejemplo, hemos hablado aquí en diversas ocasiones, así que no me repetiré. Baste indicar que las funciones hash están pasando por una crisis similar a la del algoritmo de cifrado simétrido DES: cada vez están siendo más cuestionadas, y aunque aún aguantan ya va siendo hora de planificar para el futuro.

Dicho y hecho. A finales de los años 90, el NIST (instituto de patrones norteamericano) lanzó un concurso para reemplazar al venerable algoritmo de cifra simétrica DES, dando como resultado el que ahora conocemos como AES (Advanced Encryption Standard). De forma similar, han llegado a la conclusión de que los actuales estándares de hash, denominados SHA-1 y SHA-2 (este último, en realidad, es una familia de funciones basadas en SHA-1 pero con hashes de mayor longitud), y la lanzado un concurso de ideas al que ha denominado Cryptographic Hash Project: http://csrc.nist.gov/groups/ST/hash/index.html. Según el NIST, los pasos iniciales se dieron en 2005, tras el descubrimiento de una vulnerabilidad en SHA-1 (ver "SHA-1 y las colisiones de cumpleaños", en el Boletín ENIGMA nº 31), y se espera completar el proyecto antes del final de 2012.

En efecto, las cosas de palacio van despacio, pero en estos temas, apresurarse puede ser fatal, y si queremos que salga algo bien hecho hemos de dejar pasar su tiempo (el proceso de selección del AES llevó cerca de cuatro años). De hecho, la competición ya ha comenzado. El pasado día 2 de noviembre, el Federal Register (equivalente usamericano del Boletín Oficial del Estado) publicó el "Anuncio de Peticiones de Candidaturas para una Nueva Familia de Algoritmos Hash Cryptográficos (SHA-3)". La noticia, que puede consultarse online en http://csrc.nist.gov/groups/ST/hash/documents/FR_Notice_Nov07.pdf, nos incluye los requisitos que se exigirán a la nueva función, como el establecimiento de un parámetro variable para poder "ajustar" la fortaleza del algoritmo (con lo que tendremos toda una familia de funciones), evaluaciones de seguridad, eficiencia computacional, etc. Además, todos los candidatos serán subidos a la dirección oficial del proyecto (http://www.nist.gov/hash-competition), lo que personalmente considero un magnífico ejercicio de transparencia.


La presentación de candidaturas se cerrará el 31 de Octubre de 2008. Es decir, quienes queráis presentar un candidato, tenéis un año entero para pensároslo. Os incluyo las palabras de Bruce Schneier en el artículo que escribió al respecto en su blog el pasado mes de Febrero: (http://www.schneier.com/blog/archives/2007/02/a_new_secure_ha.html)

"La competición sobre AES fue de lo más divertido que he tenido que ver en criptografía. Piense en ello como si fuera un gigantesco derby de demolición criptográfica: un puñado de nosotros ponemos lo mejor que hemos hecho en el ring, y luego nos liamos los unos contra los otros hasta que solamente quede uno. Es mucho más académico y estructurado que eso, pero el proceso estimuló un montón de investigación en diseño y criptoanálisis de funciones de cifrado en bloque. Personalmente, yo aprendí un montón sobre estos temas en la competición AES, y como comunidad nos hemos beneficiado enormemente"

 


 

 TEMAS DE ACTUALIDAD - Miscelánea criptográfica

 

En el Boletín ENIGMA 52, de Mayo de 2007, incluí un artículo sobre la inseguridad del algoritmo WEP que protege muchas comunicaciones inalámbricas. Unos días después se hizo público uno de los mayores robos de datos privados de la historia: la compañía TJX reconoció que unos desconocidos habían irrumpido en sus sistema de comunicaciones y robado información sobre al menos 45 millones de tarjetas de crédito y débito. Para ello, pincharon las comunicaciones inalámbricas por la que se transmitía la información. Hace un par de meses se hizo pública una investigación al respecto por parte del Comisionado para Información y Privacidad de Canadá. Su conclusión es que el pinchado de los ladrones fue posible por ¿adivinan qué? !Exacto! La empresa usaba WEP para proteger sus comunicaciones.

Representantes de TJX afirman que no está probado que el pinchazo se efectuase por vía inalámbrica, en un esfuerzo de "niego la mayor" que imagino estará dirigido a protegerse contra responsabilidades legales. A pesar de ello, aceptan las recomendaciones para aumentar la seguridad, y aseguran que querían pasarse al más seguro WPA pero no pudieron hacerlo a tiempo porque sus sistemas no eran compatibles. Evidentemente, cuando las cosas parecen ir bien no parece que gastarse dinero en mejorar la seguridad se vea como una necesidad. Y después del robo, a buenas horas, mangas verdes.

A estas alturas, no se sabe quiénes son los hackers, y sólo podemos imaginar los daños económicos. Pero no echemos la culpa tan sólo al sistema de cifrado. En palabras del comisionado de Canadá: "La empresa recogió demasiada información personal, la guardó durante demasiado tiempo y confió en un cifrado débil para protegerla ... poniendo en peligro la privacidad de millones de sus clientes"

Cierto, y lo que es peor, parece formar parte de una tendencia a tomar cada vez más datos y atesorarlos como si valieran su peso en oro (lo que, en parte, es cierto). A ver si este caso ayuda a luchar contra casos similares en el futuro, porque eso de tomar la información de una tarjeta y usarla para pagos fraudulentos está resultando cada vez más fácil. De hecho, no creo que sea casualidad, pero el hecho es que las grandes empresas de tarjetas están forzando al establecimiento de medidas de seguridad más rígidas, como pueden ustedes leer en este artículo de Mercé Molist: http://ww2.grn.es/merce/2007/tarjetas.html. Ha hecho falta una debacle tipo TJX para que se pongan las pilas, pero algo es mejor que nada.

De una noticia, saltamos a otra. Desde el pasado mes de octubre, la policía británica puede exigir que una persona entregue sus claves de cifrado. Negarse a ello puede ser castigado con hasta cinco años de cárcel. Por supuesto, la justificación para dicha norma es la de siempre: o lo hacemos, o Al-Qaeda volverá a atentar de forma masiva y no podremos impedirlo. Por supuesto, una vez hecha la ley se podrá aplicara a casos de terrorismo, delitos graves, o en general en cualquier caso que la policía estime oportuno.

No ha pasado un mes, y ya la están aplicando en un caso que no tiene nada que ver con el terrorismo. Hace pocos días, una treintena de activistas pro derechos de los animales fueron obligados a ceder las contraseñas que activan sus ordenadores. Algunos de ellos afirman no tener nada cifrado en su ordenador, pero a pesar de ello se enfrentan a un grave dilema: cinco años de cárcel, o la posibilidad de perder toda su intimidad. Todo en nombre de una ley antiterrorista. Más en:

http://www.theregister.co.uk/2007/11/14/ripa_encryption_key_notice/
http://www.indymedia.org.uk/en/2007/11/385589.html
http://www.schneier.com/blog/archives/2007/11/animal_rights_a.html
http://www.filmica.com/arturo_quirantes/archivos/006507.html

Resulta irónico, por otro lado, conocer justo este mes que el gobierno británico ha perdido la información confidencial de más de 25 millones de sus ciudadanos. En un ejemplo de pifia de seguridad que deja pequeño incluso al caso TJX, dos discos con información sobre millones de personas cuyos hijos recibían ayudas del Estado desaparecieron. ¿Saben qué sistema de transmisión se usaba? !Envío por mensajero! Los discos ni siquiera estaban cifrados. Las autoridades británicas ya han "tranquilizado" a la población, afirmando que no hay indicios de que los datos hayan caído en malas manos. Lo que, en parte es cierto, ya que no hay indicios de absolutamente nada al respecto. Por si acaso, ya han pedido a los afectados que cambien las contraseñas de las cuentas corrientes, ya que seguramente más de uno usaba como clave el nombre de su hijo. No puedo por menos que imaginarme el castigo que, proporcionalmente, le hubiera debido corresponder al responsable. Si por no ceder una clave de cifrado la pena es de cinco años, ¿qué le tocaría al que pierde datos sin cifrar de millones de personas?

Volviendo al asunto del "la clave o a la cárcel", en España hubo un intento parecido hace algún tiempo. En marzo de 2003, el gobierno español intentó cambiar la Ley General de Telecomunicaciones para obligar a todos los usuarios de sistemas criptográficos a "facilitar, bien a un órgano de la Administración General del Estado o a un organismo público, las claves, los algoritmos o cualquier procedimiento de cifrado utilizado, incluida la información técnica relativa a los sistemas empleados en aquél." Una rápida protesta permitió eliminar esta propuesta (ver Boletín Enigma nos. 12 y 13). La verdad es que nos libramos por los pelos, ¿pero hasta cuándo?

La siguiente noticia nos lleva a dos agujeros de seguridad detectados en dos instrumentos criptográficos generadores de números aleatorios. Uno de los problemas más difíciles en criptografía consiste en generar números aleatorios, es decir, que no puedan predecirse ni sigan patrón alguno. Sus aplicaciones pasan, por ejemplo, por la generación de claves aleatorias de sesión para cifrar comunicaciones. El problema es que es realmente difícil hallar un generador de datos aleatorios, y si usamos ordenadores el problema se magnifica, ya que un ordenador no es más que un sistema que ejecuta operaciones matemáticas de forma bien definida.

El NIST norteamericano ha sugerido diversas normas para generar números aleatorios (o cuasialeatorios) en un ordenador, basándose en funciones hash, sistemas de cifra en bloque y curvas elípticas. Este último sistema produce un generador de números aleatorios, llamado Dual_EC_DRBG, que ha resultado ser un bicho raro. Es incómodo de usar, muy lento, y parece ser que se convirtió en un estándar porque así lo quiso la Agencia de Seguridad Nacional norteamericana (NSA). Ya en 2006 se detectó un pequeño fallo como resultado del cual los números que genera no son exactamente aleatorios. El problema no era muy grave, y tenía solución.

Pero hace poco, en la conferencia CRYPTO2007, alguien se atrevió a afirmar que Dual_EC_DRBG contiene una debilidad que sólo puede describirse como una puerta trasera (backdoor). Según se afirma, la función contiene un conjunto de constantes que definen la curva elíptica usada para generar los números aleatorios. Dichos números son bien conocidos (forman parte del estándar), si bien nadie sabe por qué son esos y no otros. Pero los investigadores Dan Shumow y Niels Ferguson afirman que dichos números están relacionados con un segundo conjunto de números que sí son secretos, aunque nadie parece saber cuáles son. Conociendo dichos números secretos, uno puede llegar a predecir los números aleatorios que se generarán. Esta es una acusación muy grave, y hasta cierto punto muy embrollada. Pero es que todo el tema de Dual_EC_DRBG está muy liado. Nadie sabe por qué la NSA se empeñó en introducir un estándar lento, incómodo de usar, con una puerta trasera que se puede hallar (ya que el estándar es público).

No es la NSA la única que hace tonterías. Hace poco se hizo público un trabajo de tres investigadores israelíes que analizaron el generador de números aleatorios usado en Windows 2000. En un principio, el "curriculum" de dicho generador parece impresionante, ya que usa SHA-1 dentro de su estructura. Por desgracia, también incorpora la función de cifrado RC-4, cuyas vulnerabilidades lo dejaron en la cuneta hace años. El resultado viene a decirnos que, si conocemos el estado del generador en un momento dato, podremos conocer los próximos 128 KBytes que el generador proporcionará en el futuro. Es decir, todo lo contrario que deber ser un generador aleatorio. Y lo peor es que este generador se utiliza también en otros sistemas operativos, aunque no sabemos cuáles. Es muy posible que los de Windows XP y Vista estén "pringados", de forma que cualquier sistema que confíe en ellos para generar números aleatorios es vulnerable. Por contra, creo recordar que PGP tiene sus propias fuentes de azar.

Para terminar, vamos a presentar un ocurrente sistema de comprobación de sumas (checksum). En algunos países como Estados Unidos, dar una propina en un restaurante es un hecho tan normal que incluso puede hacerse en la propia factura, en un epígrafe aparte. Así, una factura puede venir desglosado como "Subtotal, 31.00; propina, 3.00; total: 34.00." El problema viene cuando algún camarero descontento y pillo decide aumentar su propina. Podría retocar con bolígrafo sus tres euros de propina, aumentarlos hasta ocho, y elevar el total a pagar hasta 39 euros. Si se hace bien, y el cliente no se fija demasiado, puede colar, y a ver quién se acuerda un mes después (viendo el extracto del banco) cuánta propina dejó en el restaurante.

He aquí un sencillo sistema para comprobar la validez del pago. Supongamos que tenemos una cuenta por 47.16 euros, y queremos añadir una propina del 10%, lo que representaría unos 4.71 euros. La suma nos daría 47.16 + 4.71 = 51.87. Si el camarero decide usar el bolígrafo de forma creativa (por ejemplo, cambiando la factura por: 47.16 + 14.71 = 61.87, estamos listos).

El truco consiste en manipular la cifra final (céntimos) de la propina para que nos de una cantidad final cuya última cifra sea, sencillamente, igual a la suma de los dígitos a la izquierda de la cifra decimal. Es decir, si la cuenta final va a ser de "cincuenta y un euros ochenta y pico", hacer que el pico sea igual a la suma 5+1. De esa forma, el "pico" serían seis céntimos y la cuenta quedaría así: 47.16 + 4.70 = 51.86. En otro ejemplo, digamos que la cifra final, propina incluida, es de 93.26. En este caso 9+3=12, así que podemos quitarle el uno inicial, con lo que nuestro "checksum" nos daría 2. No tenemos más que restar cuatro céntimos a la propina para obtener la cifra final de 93.22. Un banquete de 293.84 también estará bien pagado, ya que 2+9+3=14, que pasamos a 4 y nos da de nuevo el último dígito correcto.

La ventaja de este método es la sencillez con la que se pueden comprobar los números. Cogemos el extracto bancario, vemos la anotación "pizzería buencomer" y leemos la cifra 22.94. Como las dos cifras iniciales suman lo mismo que la cantidad de céntimo (2+2=4), la cuenta está bien. Sin embargo una cuenta del "restaurante muchotimo" con un cargo de 61.29 nos llama la atención de inmediato, puesto que 6+1=7, no 9. Seguro que no recordamos ni lo que hemos comido o cuánto valía cada ración, pero la alarma salta enseguida: es hora de llamar al restaurante y montar el pollo.

Otros usuarios han diseñado tácticas similares. Uno, por ejemplo, se limita a usar números capicúa, esto es, 56.65 o 28.82. Es un sistema fácil de averiguar, pero también fácil de comprobar. Otro caso que he visto usaba los céntimos como una especie de código recordatorio para sí mismo: usaba la cantidad en céntimos para codificar información en base 2. Un restaurante estupendo se llevaba un 0; uno bueno, 32; uno regular, 64. A continuación, sumaba 16 si las bebidas eran buenas; 8 si tenía comida vegetariana; 4 si había conexión wifi; y un número entre 0 y 3 según la cantidad de personas que habían pagado (una, dos, tres o más de tres personas). Y si el lugar era malo para no volver, se limitaba a escribir el número 96. Así, un restaurante bueno (32) con comida vegetariana (8), sin conexión wifi y en el que se ha compartido el pago con otra persona (1) recibía un total de 32+8+1=41. Así que la cuenta debería acabar con 41 céntimos.

Sistemas "checksum" como el mencionado aquí son tan efectivos como sencillos, y se usan en más aplicaciones de las que nos imaginamos. Seguro que usted le encuentra otra aplicación. ¿Por qué no nos la cuenta?

 


 

 CRIPTOGRAFÍA HISTÓRICA - Colossus, el proyecto redivivo

 

Se dice incorrectamente que el primer ordenador del mundo fue creado en Bletchley Park para descifrar mensajes Enigma. Es cierto que los genios británicos diseñaron una máquina muy similar en función a los ordenadores actuales. Pero no fue diseñada para vencer la máquina Enigma, sino otro tipo de máquinas cifradoras alemanas aún más peliagudas. Si creen que Enigma les daba dolor de cabeza, prepárense a conocer a lo mejor de lo mejor en el campo de la criptología alemana: los "pescaditos".

Aunque la máquina Enigma transportaba mensajes vitales para el esfuerzo de guerra alemán, su uso era de tipo táctico, comunicando unidades militares entre sí. Pero la información estratégica más vital, la que realmente decidiría el curso de la guerra, viajaba protegida por un sistema de tráfico de teleimpresión. La información era codificada en paquetes de 5 bits (el llamado código Baudot), lo que permitía representar letras, números y algunos signos. La letra A, por ejemplo, podía ser igual a la cadena de símbolos ++---, donde + representa un impulso y - un espacio. Es en esencia idéntico a nuestra codificación binaria actual, con la diferencia de que nosotros usamos ristras de 8 bits (lo que permite un total de 256 posible símbolos).

El tráfico de teleimpresión iba cifrado por medio de dos máquinas fundamentalmente: la Lorenz SZ 40/42, apodada "Tunny" (Atún), y la Siemens & Haslke T52 o "Sturgeon" (Esturión). El lector interesado puede ver fotografías de ambas máquinas en el Museo Camazón del Taller de Criptografía: http://www.cripto.es/museo.htm (visitas del National Cryptologic Museum y Bletchley Park).

El funcionamiento de estas máquinas era sencillo. En esencia, lo que hacían era "sumar" el texto llano a una ristra aleatoria de bits. Esta suma es del mismo tipo que la de dígitos binarios actuales: 0x0=0, 1x0=0x1=1, 1x1=0. Sustituyan 0 y 1 por - y +, y listo. Por ejemplo, el símbolo de cinco bits ++--- (la letra A) se puede sumar con el símbolo aleatorio -++-+ (que me acabo de inventar) para dar -+-+- (que resulta ser el símbolo para la letra Y). Para descifrar, sumo el símbolo cifrado - -+-+- con la clave aleatoria -++-+ y vuelvo a obtener ++---

Es algo parecido al método conocido como Libreta de Uso Único (OTP). El problema es que no podemos hacer que dos máquinas generen los mismos números aleatorios como clave. En su lugar, los técnicos alemanes diseñaron un sistema de generación de bits pseudoaleatorios. Es decir, no son realmente aleatorios, pero casi como si lo fuesen. El conjunto de bits de clave se formaba mediante un sistema de ruedas con agujas que podían ser ajustadas a voluntad. La máquina Lorenz ("Tunny"), en particular, usaba dos flujos pseudoaleatorios, llamados chi y psi. El funcionamiento, pues de las máquinas Tunny eran muy diferentes a las de las Enigma, pero tenían algo en común: era preciso "ajustarlas" con el mismo estado (los "settings") para que pudieran trabajar al unísono.

En el caso de Tunny, había que determinar cuántas de las agujas de sus ruedas estaban en qué posición. Puesto que Tunny tenía doce ruedas, y cada una de ellas tenía un número variable de agujas (entre 23 y 61), el número de "settings" o ajustes iniciales que un criptoanalista tendría que probar era enorme, del orden de 160 trillones.

El descubrimiento de cómo operaba Tunny, y más importante, de cómo podía vencerse a la máquina es una hazaña que no tiene nada que envidiar a las de los equipos de Enigma. Pero dejaremos el criptoanálisis para otra ocasión. Baste decir que se unieron similares circunstancias: brillantes cerebros por parte inglesa y diversos errores por parte alemana. En una ocasión, se interceptaron dos mensajes casi idénticos que habían sido cifrado de la misma forma. Eso les dio a los ingleses el conocimiento de casi 4.000 "letras" de clave. A partir de ahí, algunas de las mejores mentes inglesas (incluido el propio Turing) consiguieron averiguar el funcionamiento de Tunny.

Pero había un problema. Para llevar sus métodos a la práctica, necesitaban codificar el flujo pseudoaleatorio y efectuar múltiples correlaciones, lo que llevaba demasiado tiempo. Eso les obligó a diseñar una máquina computadora programable a base de cinta perforada y válvulas electrónicas. Nació así una máquina a la que llamaron Colossus. En enero de 1944, tras múltiples pruebas, fue puesta en funcionamiento en Bletchley Park.

Colossus proporcionó a los aliados información vital sobre las intenciones alemanas. Ayudó a conocer hasta qué punto Hitler se había creído el "farol" aliado sobre la invasión del continente. El resultado: los aliados desembarcaban en Normandía mientras el ejército alemán les esperaba en Calais. Durante el resto de la guerra, diez Colosos consiguieron descifrar 63 millones de caracteres de comunicaciones alemanas del más alto nivel. Información que valía su peso en oro.

Sin embargo, con el final de la guerra en Europa los Colosos desaparecieron del mapa. Casi todos ellos fueron desmantelados por órdenes de Churchill, quien no quería que el secreto se hiciese público. Sólo uno o dos Colosos sobrevivieron: fueron trasladados al GCHQ (la NSA británica), donde estuvieron en funcionamiento hasta los años 60, fundamentalmente en tareas de entrenamiento. Los diseños, planos y gráficos fueron destruidos, y los técnicos fueron advertidos en los términos más estrictos de lo que sucedería si decían una sola palabra. De ese modo, Gran Bretaña dejó pasar (!una vez más!) la ocasión de convertirse en una potencia tecnológica, y la primacía de los ordenadores pasó a sus primos norteamericanos.

Sin embargo, el recuerdo de Colossus sobrevivió. En los años 70 y 80, algunos de sus creadores recibieron finalmente permiso para hablar. Algunas viejas fotografías reaparecieron. Y un hombre se dedicó a la tarea de resucitar al viejo coloso. Este hombre es Tony Sale. Su web sobre códigos y máquinas de cifrado de la Segunda Guerra Mundial (http://www.codesandciphers.co.uk) es una referencia imprescindible para todos los aficionados al tema.

En 1989, Tony Sale fundó un grupo llamado Computer Conservation Society con el fin de preservar la información conocida sobre ordenadores y máquinas computadoras antiguas. Dos años más tarde, en 1991, se puso en contacto con el mundo de Bletchley Park. En aquellos tiempos, BP estaba a punto de ser demolido para dar paso a una urbanización y un supermercado (el cual, según sus palabras, era tan necesario como "un agujero en la cabeza"). Tony fue uno de los que tomaron la salvación de BP como una cruzada, y entre otras cosas se le ocurrió que podía intentar reconstruir a Colossus. Así que en 1993 recopiló toda la información disponible (no mucha, por desgracia) y se puso manos a la obra.

Su labor le llevó a entrevistar a algunos integrantes del equipo original de Colossus (mentes con ya ochenta años de existencia), incluyendo a Tommy Flowers, el padre de la criatura. Según sus propias palabras: "ambos [mi esposa y yo] sentíamos que, si no se llevaba a cabo un esfuerzo inmediato, no quedaría nadie vivo para ayudarnos con recuerdos de Colossus". Uno de los entrevistados, Allen Coombs, había tenido un ataque al corazón y estaba terriblemente enfermo, pero cuando Tony Sale fue a visitarle no podía pensar en otra cosa que en ayudarle. Al final de la charla, Coombs le entregó un tesoro: diagramas, documentos y notas que había ocultado a sus superiores de forma totalmente ilegal. Gracias a esta violación de las leyes, el proyecto de econstrucción de Colossus pudo seguir adelante.

El proyecto unipersonal de Tony siguió adelante por su propia iniciativa, sin más apoyo financiera que el de su propio bolsillo. La ayuda oficial brillaba por su ausencia. La respuesta oficial del GCHQ al proyecto fue un "!ni lo sueñe!" Contó, eso sí, con un apoyo institucional en la persona del Duque de Kent, primo de la Reina Isabel. En Julio de 1994, el Duque inauguró oficialmente el Proyecto de Reconstrucción Colossus, y en junio de 1996 volvió a Bletchley Park para poner en funcionamiento el primer prototipo, incompleto aún pero que ya funcionaba. Era una fecha simbólica, porque los norteamericanos estaban celebrando el 50º aniversario de ENIAC, que era considerado el primer ordenador del mundo.

Resulta irónico que precisamente Estados Unidos haya proporcionado gran parte de la información precisa para construir de nuevo al Coloso. En 1996 el gobierno norteamericano desclasificó una montaña de documentos sobre criptografía y criptoanálisis (yo tuve la ocasión de bucear en dichos documentos durante una visita en 2003, y fue toda una gozada). Entre la información que se hizo pública figuraba un informe sobre los trabajos británicos contra Fish y otros documentos que resultaron de gran importancia para el proyecto.

En los años siguientes, Tony se dedicó a solventar mil y un problemas técnicos. El reto era pasar del primer modelo de Colossus (el Mk 1) al modelo "final" o Mk 2, que fue el utilizado en Bletchley Park hasta el fin de la guerra. El lector podrá ver algunas fotos del Coloso en ciernes en http://www.cripto.es/museo/bp2002/bp.htm.

Y, por fin, Colossus ha vuelto a la vida. Es una de las joyas del recientemente inaugurado Museo Nacional de la Computación (National Museum of Computing, http://www.tnmoc.org.uk) que ocupa en Bloque H de Bletchley Park, el mismo lugar donde se guardaba la máquina original.

¿Y qué mejor forma de demostrar su buen funcionamiento que descifrando mensajes? Dicho y hecho. El 15 de noviembre, el Museo anunció el Desafío (Cipher Challenge Event). Ese día y el siguiente, desde Paderborn (Alemania) se enviarían por radio un total de tres mensajes cifrados con la máquina Tunny. En Bletchley Park, una estación de interceptación ("Y station") similar a las usadas durante la Segunda Guerra Mundial captaría la transmisión. Dos grupos de rompecódigos esperaban allí. Uno de ellos intentaría descifrar los mensajes usando el reconstruido Colossus; el otro emplearía un PC moderno. En paralelo a ello, un emulador de Tunny serviría para descifrar el mensaje (no se pudo emplear una Tunny real). Y, por supuesto, cualquier radioaficionado podría captar la transmisión e intentarlo por su cuenta.

Para ayudar en la tarea, se facilitaron datos sobre algunos de los "settings" necesarios para ajustar el cifrador Tunny. El segundo mensaje daba menos datos que el primero, y el tercero menos aún. De ese modo, cada mensaje era más difícil de descifrar que el anterior. Y se esperaba una competición reñida, ya que las primeras estimaciones indicaban que Colossus sería por lo menos tan rápido como un PC moderno a la hora de destripar los mensajes.

Pero resultó mucho más difícil de lo que parecía. Incluso antes de comenzar, el Desafío presentó problemas. Los receptores de Bletchley Park tenía problemas de estabilidad. La máquina Tunny que desde Paderborn debía cifrar los mensajes tuvo un fallo el día antes, y sólo una reparación de urgencia pudo salvar el honor de los ingenieros alemanes. El jueves 15 primer día del desafío, las antenas de Bletchley Park apenas podían captar las señales de Paderborn, y sólo llegó uno de los tres mensajes cifrados. Para entonces, un criptógrafo aficionado había logrado captar el mensaje más difícil de los tres y decifrarlo.

El nuevo Colossus había sido derrotado. Y, para mayor humillación, !el ganador era alemán! Su nombre es Joachim Schüth, de Bonn, y utilizó un programa en lenguaje Ada corriendo en un portátil con 1.4 GHz de CPU con sistema operativo NetBSD. El equipo Colossus de BP consiguió descifrar correctamente el mensaje el día siguiente, viernes 16, a las 1:15 de la tarde, con un tiempo de ejecución de 3 horas y 35 minutos (más 45 minutos extra por una válvula estropeada).

El trabajo de Schüth fue impecable, ya que consiguió obtener los "settings" en tan sólo 46 segundos (aunque el tiempo total que invirtió, incluyendo captación y transcripción, fue de dos horas). Él mismo reconoce lo injusto del desafío: "Colossus fue un invento ingenioso y un hito en la historia de la computación. Pero la tecnología ha evolucionado mucho desde entonces" No sólo eso, sino que pone a disposición de todos el software que escribió para vencer a Tunny. No hay más que pasarse por la página web http://www.schlaupelz.de/SZ42/SZ42_software.html

La historia no se repite, y han sido los alemanes quienes han mojado la oreja (criptográficamente hablando) a los ingleses. Pero el esfuerzo que representa Colossus, tanto el original de los años 40 como su reconstrucción actual, puede quedar como una de las grandes hazañas de la ruptura de códigos. Lo que sí es cierto es que el desafío Colossus ha servido para dar una gran publicidad a la idea de un museo sobre ordenadores. Según afirma el diario inglés The Guardian, esto debería ser no un final, sino un principio: "existe ahora la oportunidad de hacer a Colossus el centro de un memorial permanente a los pioneros de la industria de la computación"

 


 

LIBERTAD VIGILADA - Las conclusiones de la Comisión Echelon

 

[NOTA: El artículo del boletín pasado, "El Parlamento Europeo, alarmado" fue citado como "Segunda parte, capítulo 22"; la cita correcta es "Primera parte, capítulo 21"]

[Extraído del libro "Libertad Vigilada", de Nacho García Mostazo, con permiso del autor]

Segunda parte, capítulo 22:

El 13 de julio de 2001, la "comisión temporal" del Parlamento Europeo aprobó el informe definitivo de Gerhard Schmid por 27 votos a favor, 5 en contra y 2 abstenciones. Su aprobación en el Pleno de la Eurocámara se retrasó hasta el 5 de septiembre, cuando se iniciaron nuevamente las sesiones tras las vacaciones de verano, y recibió 367 votos a favor, 159 en contra y 34 abstenciones. El documento, de casi doscientas páginas, cumplía todos los objetivos marcados por la Mesa del Parlamento un año antes, cuando ordenó la creación de la "comisión temporal" de investigación sobre "Echelon". Pero también matizaba algunos aspectos, como la capacidad de la red de espionaje, a la que atribuía una capacidad limitada. Este aspecto provocó intensos debates políticos en el seno de la propia comisión, ya que los diputados del grupo Verde y los de Izquierda Unitaria acusaban al resto de acotar deliberadamente sus argumentos cumpliendo las órdenes de sus respectivos gobiernos. [1]

Así, el informe definitivo de la comisión reconocía que "no hay ninguna razón para seguir dudando de su existencia (la de "Echelon") a nivel mundial", pero subrayaba que "ni mucho menos" tiene las dimensiones que se presuponían. Como se ha mencionado en capítulos anteriores, el término "Echelon" sólo se refiere a la red de interceptación de comunicaciones vía satélite compartida por los países del tratado UKUSA. En efecto, su capacidad es menor si se valora al margen del resto de programas norteamericanos de espionaje, que incluyen la interceptación de comunicaciones por radio, cables transoceánicos, tráfico de Internet, etc., pero también es cierto que Estados Unidos no comparte estos otros sistemas de espionaje con sus socios del pacto UKUSA. En este sentido, el ponente del informe se limitó a respetar escrupulosamente el mandato a la comisión temporal y centró sus explicaciones sólo en la red "Echelon", lo que motivó el voto en contra o la abstención de algunos eurodiputados. [2]

Pese a las quejas sobre la carencia del informe, su aprobación en el Pleno del Parlamento Europeo supuso un importante respaldo a quienes llevaban años denunciando la existencia de "Echelon". Además, la Eurocámara también votó a favor de una Resolución que instaba a las instituciones comunitarias y a los Estados miembros a tomar decisiones concretas para proteger la intimidad de los ciudadanos europeos. En concreto, mencionaba el artículo 12 de la Declaración Universal de Derechos Humanos, que dice que "nadie será objeto de injerencias arbitrarias en su vida privada, su familia, su domicilio o su correspondencia, ni de ataques a su honra o a su reputación. Toda persona tiene derecho a la protección de la ley contra tales injerencias o ataques". Este precepto está redactado de forma muy similar en el Convenio Europeo para la Protección de los Derechos Humanos y de las Libertades Fundamentales, así como en la Constitución de cada país miembro de la Unión Europea.

Precisamente para defender estos derechos, la Eurocámara pedía a los Estados "que proporcionen a todos los ciudadanos europeos las mismas garantías jurídicas relativas a la protección de la vida privada y de la inviolabilidad de las comunicaciones". Gracias al informe de la "comisión temporal", el Parlamento Europeo también era consciente de que muchos países miembros no tenían ni siquiera organismos de control para vigilar las actuaciones de sus propias agencias de inteligencia, por lo que les pedía "que garanticen un control parlamentario y jurisdiccional adecuado de sus servicios secretos". Con respecto a Estados Unidos, la Eurocámara creía necesario firmar "un convenio entre la Unión Europea y EE.UU. por el que se establezca que cada una de las partes respeta [...] las disposiciones de protección de la vida privada de los ciudadanos y de la confidencialidad de las comunicaciones de las empresas que se aplican a sus propios nacionales y empresas".

La Resolución hacía una referencia concreta a Alemania por la presencia en su territorio de una base "Echelon" norteamericana, pero también al Reino Unido por ser miembro del pacto UKUSA y de la Unión Europea a la vez. A ambos países les pedía que "en el futuro sólo autoricen la interceptación de las comunicaciones por parte de los servicios de inteligencia de Estados Unidos en su territorio si en esta actividad se respeta el Convenio Europeo para la Protección de los Derechos Humanos y de las Libertades Fundamentales, es decir, si se respeta el principio de proporcionalidad, si su fundamento jurídico es accesible y si sus repercusiones sobre los individuos son previsibles, y que establezcan un control eficaz en este sentido, ya que son responsables de que las actividades de obtención de información desarrolladas por los servicios de inteligencia en su territorio, independientemente de que estén autorizadas o únicamente toleradas, están en conformidad con el imperativo del respeto de los derechos humanos".

Desde el punto de vista económico, la Resolución parlamentaria también mencionaba implícitamente al Reino Unido al afirmar que, "si el sistema se utilizase de manera abusiva para espiar a la competencia, sería incompatible con el principio de cooperación leal que deben respetar los Estados miembros", de manera que "la participación de un Estado miembro en un sistema de estas características sería incompatible con el Derecho comunitario". Para proteger a las compañías europeas del "espionaje industrial" llevado a cabo por "Echelon", el Parlamento Europeo pedía a las empresas "que colaboren más estrechamente con los servicios de contraespionaje y que, en particular, les comuniquen los ataques procedentes del exterior con fines de espionaje industrial, para aumentar el grado de eficacia de estos servicios". Asimismo, también solicitaba a los Estados miembros que pudieran resultar perjudicados por el uso indebido del espionaje que "informen de ello a las autoridades y órganos de control del Estado" para tratar de averiguar desde dónde "se desarrollan tales actividades" de "distorsión de la competencia" a fin de "poner fin a las mismas".

Estados Unidos y el Reino Unido habían justificado algunos actos de espionaje económico afirmando que su objetivo era luchar contra la corrupción. Tales excusas no convencieron a la Comisión Echelon y tampoco al Parlamento Europeo, que en su Resolución denunciaba que "los servicios de inteligencia de Estados Unidos no sólo informan sobre la situación económica general, sino que además escuchan detalladamente las comunicaciones de las empresas precisamente cuando se trata de la concesión de contratos". Así, "existe el peligro de que la información no se utilicen para luchar contra la corrupción, sino para espiar a la competencia, por mucho que Estados Unidos y el Reino Unido declaren que no lo hacen". Asimismo, la Eurocámara subrayaba que "sigue sin estar claro el papel que desempeña el 'Centro de Interlocución' (Advocacy Center) del Departamento de Comercio de Estados Unidos".

La Resolución parlamentaria también se hacía eco de la polémica provocada por la declaración del funcionario europeo Desmond Perkins ante la "comisión temporal". Instaba a la comisión "a que ponga al día su sistema de encriptación, ya que es urgentemente necesario modernizarlo" y le pedía que "garantice la protección de los datos en su propio sistema de tratamiento de datos" y "que intensifique la protección de los documentos que no sean públicos". También instaba a las instituciones comunitarias y a las Administraciones Públicas de los Estados miembros a que "encripten sistemáticamente sus mensajes electrónicos para que, a la larga, esta práctica se convierta en norma habitual" y solicitaba que promovieran "cursos de formación" para los funcionarios.

En cuanto a las medidas concretas para impulsar la "autoprotección" de los ciudadanos, el Parlamento Europeo instaba "a la comisión y a los Estados miembros a que informen a sus ciudadanos y empresas sobre la posibilidad de que sus comunicaciones internacionales puedan ser interceptadas en determinadas circunstancias" e insistía "en que esta información vaya acompañada de una asistencia práctica para el diseño y la puesta en práctica de medidas globales de protección, incluida la seguridad de la tecnología de la información". Para ello, pedía a la comisión y a los Estados miembros que apoyaran proyectos cuyo objeto sea "el desarrollo de programas de encriptación fáciles de usar y cuyo código fuente sea público".

El "código fuente" es la programación que hay detrás de cualquier aplicación informática y el Parlamento Europeo pedía precisamente que se fomentara el uso de este software público porque los elaborados en Estados Unidos (como el sistema operativo Windows y los programas Netscape Navigator y Lotus Notes) no desvelan su programación y pueden tener "puertas traseras", como reveló Duncan Campbell en su informe a la Eurocámara cuando mencionó la "reducción del factor trabajo" en los navegadores de Internet y programas de correo electrónico fabricados en Norteamérica para su exportación. De hecho, la Eurocámara se mostró especialmente sensible al instar "a la comisión y a los Estados miembros a que fomenten los proyectos de programas informáticos de código fuente abierto, ya que éste es el único modo de garantizar que no ofrezcan 'puertas traseras' que puedan hacerlos vulnerables". El Parlamento Europeo también pedía a la comisión que "determine la calificación del nivel de seguridad de los programas informáticos destinados al intercambio de correspondencia electrónica, clasificando aquellos cuyo código fuente no sea público en la categoría menos fiable".


[1]. Agencia Efe. "UE-ESPIONAJE / PE demuestra existencia red mundial espionaje de comunicaciones." Teletipo. Estrasburgo, 5 de septiembre de 2001.

[2]. "Resolución del Parlamento Europeo sobre la existencia de un sistema mundial de interceptación de comunicaciones privadas y comerciales (sistema de interceptación 'ECHELON')." 5 de septiembre de 2001. Doc. 2001/2098 (INI).

 



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 2008

 


Vuelta a la Página principal del Boletín ENIGMA