-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 _____________________________________________________________________ | | | ======= == === === ==== == == === | | = == = = = = == == = | | = = = = = = = = = = = = | | xxxxx x x x x xxxxxx x x x x x | | x x x x x x x x x xxxxxxx | | x x xx x x x x x x x | | xxxxxxx xxx xx xxx xxxxx xxx xxx xxx xxx | |_____________________________________________________________________| Boletín del Taller de Criptografía de Arturo Quirantes http://www.ugr.es/~aquiran/cripto/cripto.htm Número 8 2 Diciembre 2002 ======================================================================== EDITORIAL CRIPTOGRAFÍA HISTÓRICA - Los siete de Camazón - ENIGMA: los indicadores de clave ======================================================================== <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> EDITORIAL <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> Otro mes, otro boletín. Parece que este boletín se va afianzando en el tiempo. Más de ciento cincuenta suscriptores, en diversos países del mundo, me indican que este proyecto irá para largo. Gracias a todos por vuestro interés. Este boletín va a ser algo diferente de los demás. En primer lugar, va a ser más breve. Este mes he tenido cierto número de actividades extraordinarias (tanto laborales como familiares) que han limitado mi tiempo disponible para redactar noticias. Y prefiero no abusar del copy+paste, así que prefiero incluir poco que rellenar a lo loco. En segundo lugar, este número va a centrarse más en campos de criptografía histórica. Quiero ir potenciando este boletín como publicación de criptografía histórica, y en este sentido creo que mis lectores quedarán complacidos. Abriremos con una historia fascinante, tanto por lo que se sabe como por lo que se ignora: las aventuras de un grupito de criptoanalistas españoles que, huyendo del fuego de la Guerra Civil Española, cayeron en las brasas de la Segunda Guerra Mundial. En segundo lugar, vamos a dar carpetazo -de momento- a las explicaciones sobre el uso y funcionamiento de la máquina Enigma. Léanse este número bien, porque el mes que viene comenzaremos a hacer de criptoanalistas. Y os aseguro que lo mejor está por llegar. Si de algo vamos a tener aquí a raudales, será calidad e interés. !Ah! Casi se me olvida. Al final del artículo sobre Camazón, se incluye un enlace a una fotografía. Con ella abro mi "Museo Camazón", una nueva sección del Taller de Criptografía dedicada a enlaces, fotos y documentos sobre criptografía histórica. Colaborad con la nueva sección enviando información de interés... o tendré que castigaros con mi carrete de fotos de Bletchley Park. Nos vemos en el Museo: http://www.ugr.es/~aquiran/cripto/museo.htm <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> CRIPTOGRAFÍA HISTÓRICA <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> =----------------------------------------------------------------------= Los siete de Camazón =----------------------------------------------------------------------= En los últimos años ha aparecido una gran cantidad de información sobre los esfuerzos aliados en el criptoanálisis durante la Segunda Guerra Mundial. Sabemos cómo los polacos dominaron la Enigma alemana, cómo los ingleses construyeron el primer ordenador criptoanalítico de la historia, la forma en que diversas batallas debieron su resultado a Ultra, el sistema de diseminación de la información descifrada al enemigo. Como contraste, la información conocida sobre el criptoanálisis español es casi nula. Los documentos que desvelarían los criptosecretos españoles están clasificados como secretos, o bien esparcidos por mil y un archivos. En el boletín Enigma intentaré ir aclarando algunos secretillos de los que tuvieron lugar en España. Pero hoy vamos a comenzar saliéndonos de nuestras fronteras. Vamos a hablar de un episodio apenas conocido, que incluso hoy día es más leyenda urbana que realidad histórica. La información que se conoce al respecto es muy escasa, así que el lector me disculpará si este artículo parece sugerir más que lo que afirma. Nos movemos entre las espesas capas de niebla de la Historia. Me refiero a la vida y milagros de un grupo de criptógrafos republicanos a los que apodaré "los siete de Camazón". Situémonos a comienzos de 1939, en la Cataluña vencida. Miles de personas se dirigen hacia la frontera, huyendo de las victoriosas tropas de Franco. Entre los refugiados se hallaba un grupo de cinco criptoanalistas republicanos que trabajaron en Barcelona atacando códigos y claves nacionales. Desconocemos de qué forma, pero el caso es que fueron encontrados en uno de los campos de refugiados del suroeste de Francia por Gustave Bertrand, a la sazón jefe del servicio criptoanalítico francés. Se ignora la fecha exacta, pero el hecho es que ya en Julio de 1939 (es decir, antes del estallido de la Segunda Guerra Mundial) los cinco españoles trabajaban en la ruptura de cifras italianas y alemana, aunque no hay indicios de que trabajasen en Enigma. Posteriormente se les unieron dos comisarios políticos republicanos españoles. Todos ellos fueron enrolados oficialmente en la Legión Francesa, se supone que bajo nombre falso, con el beneplácito del propio General Gamelin, Jefe de la Defensa Nacional. Hacia Octubre de 1939 el grupo de siete españoles, liderados por un hombre del que solamente conocemos su apellido (Camazón), integraban el denominado "Equipo D" en la estación de captación y criptoanálisis conocida como "puesto Bruno". Estaban en buena compañía. Los mismísimos polacos que realizaron la ruptura de la Enigma Militar (Rejewski, Zygalski y Rozycki) formaban parte de un grupo de quince criptoanalistas polacos exiliados, conocidos allí como "Equipo Z" El puesto Bruno se completaba con unos cincuenta franceses. Bruno se encontraba en el castillo de Vignolles, una villa cercana al pueblo de Gretz-Armainvilliers, a 40 km. al noreste de París. Cuando los alemanes reventaron el dispositivo aliado de defensa en el norte de Francia, los integrantes del puesto Bruno hubieron de hacer las maletas. El 14 de Junio de 1940, día en que cayó París, Bruno dejó de existir. Podemos imaginar la angustia de nuestros compatriotas cuando, una vez más, se veían obligados a salir corriendo para huir de las tropas fascistas que les pisaban los talones. Pero diez días después, y tras una huída que los llevaría hasta Toulouse, los polacos y españoles fueron evacuados a África del Norte, concretamente a Orán, de ahí pasaron a Villa Kouba (cerca de Argel), y finalmente pudieron volver a la Francia no ocupada. ¿Creen que nuestros criptoanalistas sin fronteras se decidieron a tirar la toalla? Tiene razón, no lo hicieron. En unión de sus compañeros polacos, dirigidos por el incombustible Bertrand, se instalaron en Uzés, una ciudad cercana a Nimes. Los franceses habían sido desmovilizados, pero de todos modos un nuevo grupo de criptoanalista galos se les unió. En octubre de 1940, todos volvieron al trabajo en el puesto clave que ahora se denominaba Cadix. ¿Acaso uno de los siete españoles era gaditano y acabó bautizando el nuevo puesto de escucha? Quién sabe. El eufemismo de "Francia no ocupada" no debe hacernos creer que su trabajo era plácido y sin riesgos. En cualquier momento podían verse detenidos por las autoridades proalemanas, o por los propios alemanes si éstos decidían cruzar la frontera interfrancesa. Esto ocurrió finalmente a finales de 1942, cuando tras la invasión aliada del Norte de África, Hitler decidió ocupar el resto del territorio francés. Nuevamente era hora de hacer las maletas. Apenas se dio la primera alerta, el Equipo D español voló de nuevo hacia África del Norte. Los polacos tuvieron peor suerte. Tuvieron que abrirse camino hasta España; en el camino, algunos fueron capturados por la Gestapo, otros lograron cruzar los Pirineos y, tras unos meses de encierro en campos españoles, consiguieron llegar hasta Inglaterra. ¿Qué pasó con los españoles a continuación? Desprovistos de los apoyos de Bertrand y su grupo, su suerte es incierta. Ninguno de los libros escritos sobre el tema indican nada. Tampoco han tenido éxito mis pesquisas en los archivos británicos. Por supuesto, el tema no está cerrado. En algún lugar, los documentos de algún archivo guardan las pistas sobre su paradero. Lo único que sabemos es que, el 6 de Noviembre de 1942, siete españoles confundidos y temerosos bajaban de un avión en algún lugar del África de Norte francesa, con poco más que un incierto futuro por delante. A la espera de que nuevos documentos nos indiquen qué fue de ellos, solamente podemos conjeturar. Pero espero que su historia sea desvelada y contada algún día. Después de todo, se lo debemos. Y es una lástima que de ellos sepamos tan poco. No conocemos más que el apellido de su jefe, el hecho de que trabajaron en Barcelona... y una foto en blanco y negro. En el libro de Kozaczuk "Enigma" aparece una fotografía titulada "criptólogos españoles y polacos en Cadix" De los nueve hombres que aparecen, cinco están identificados como polacos. Eso significa que los otros cuatro son parte de los siete integrantes del Equipo D. ¿Quién de ellos serán Camazón? Es lamentable que ni siquiera conozcamos su nombre. Aunque quién sabe. Lo que voy a contar ahora puede que no tenga nada que ver, pero ahí va por lo que pueda valer. En el Archivo de la Fundación Universitaria Española existen diversos documentos relativos a la II República Española en el exilio, que por desgracia no he tenido la oportunidad de consultar todavía. Uno de ellos, fechado entre 1954 y 1960, aparece con diversos descriptores onomásticos en el sistema de búsqueda del Ministerio de Cultura (www.mcu.es, sección Archivos). Entre dichos descriptores figura el nombre de Faustino A. Camazón, Presidente del Consejo Nacional del cuerpo de Seguridad de la República Española. Lo más probable es que sean mis ganas de asociar un nombre a esta extraordinaria historia. Pero como he dicho antes, ¿quién sabe? ... APÉNDICE: Fotografía (218 kB) disponible en el Museo Camazón: http://www.ugr.es/~aquiran/cripto/museo/campol1.jpg Criptoanalistas polaco y españoles en Cadix, sur de Francia, antes del 24 de Junio de 1941. De izquierda a derecha: 1 - Marian Rejewski 2 - Edward Fokczynski 3 - español no identificado 4 - Henryk Zygalski 5 - español no identificado 6 - Jerzy Rozycki 7 - español no identificado 8 - Antoni Palluth 9 - español no identificado =----------------------------------------------------------------------= ENIGMA: los indicadores de clave =----------------------------------------------------------------------= La máquina Enigma funciona mediante el sistema que podríamos denominar de sustitución polialfabética. Hemos visto el funcionamiento de los rotores, y cómo cada vez que se pulsa una tecla para cifrar, al menos uno de los rotores cambia de posición, de forma similar a un cuentakilómetros de un coche. Hemos dejado un pequeño detalle sin comentar: el tablero de conexión. En dicho tablero existen enchufes para conectar algunas letras con otras. Podemos considerar el tablero como si fuese un rotor fijo, cuyo efecto es el de cambiar unas letras por otras antes de que la señal se introduzca en el sistema de los tres rotores y el reflector. El tablero, que no existía en los modelos Enigma comerciales, se introdujo para complicar la vida del criptoanalista. Existen situaciones en las que, sea por espionaje, por barrunto o por suerte, un criptoanalista conoce el texto llano, es decir, antes de cifrarlo. Una comparación entre texto llano y texto cifrado permite, en ocasiones, obtener la clave usada en ese y otros mensajes. Es decir, un criptoanalista podría probar diversas combinaciones de posiciones de rotores para conseguir dicha clave. Pero si, antes de cifrar el texto mediante los rotores, lo sometemos a una sustitución previa, el criptoanalista no sabrá cuál es dicho texto llano. Pongamos un ejemplo. Supongamos que el texto llano "atacar" se cifra como "LJQKLZ" Nuestro criptoanalista podría suponerlo e intentar un ataque criptoanalítico. Ahora supongamos que el tablero de conexiones cambia la letra a por la s, la b por la q y la c por la u (en la práctica, habría más parejas de letras intercambiadas). Eso quiere decir que el criptoanalista tendría realmente que comparar el texto llano "stsusr" y el texto cifrado "UJQSLQ" Es decir, si nuestro criptoanalista tuviese algún "truco" que le permitiese obtener la clave conocidos los textos llanos y cifrados, usarlo con la pareja atacar-LJQKLZ no le serviría de nada. Para conocer la verdadera pareja de texto llano y cifrado stsusr-UJQSLQ tendría que saber qué parejas de letras han sido intercambiadas ... y el número de posibilidades es enorme. La combinación de rotores y tablero de conexión es, en apariencia, invencible. Veremos que, en la práctica, no es así. Pero antes de ponernos la bata de criptoanalista, pongámonos en la piel del operador de la máquina. Hemos visto que para cifrar un mensaje hemos de ajustar tanto los rotores como el tablero de conexión. Denominaremos "indicador de clave", o sencillamente "clave", al conjunto de parámetros que se precisan para ajustar el mecanismo de la máquina Enigma. El indicador de clave está constituido por los siguiente elementos: 1 - El tipo y orden de los rotores que van a ser utilizados. 2 - La posición relativa del anillo respecto al núcleo del rotor, para cada uno de los tres rotores utilizados. 3 - La orientación de los rotores. 4 - Los pares de letras que se intercambiarán en el tablero de conexiones. El elemento 2 se conoce con el nombre de "posición de anillo" (en alemán, Ringstellung). El elemento 3 se denomina "posición del rotor" . A veces, los elementos 1 y 2 reciben el nombre común de "posición interior" (innerstellung), y los 3 y 4 se conocen como "posición exterior" (ausstellung). La combinación de elementos 1, 2 y 4, se conocía como "posición básica" (grundstellung). Todo eso es lo que hay que conocer para poder cifrar, o descifrar, un mensaje. Algunos de los elementos de la clave son comunes a un día, o un intervalo temporal determinado, en tanto que otros son característicos y varían de un mensaje a otro. Idealmente, todos esos elementos han de permanecer secretos para todos excepto emisor y receptor. En la práctica, resulta más cómodo guardar algunos elementos y dejar públicos otros. Más adelante veremos cuáles. Pero ahora ... el servicio criptográfico le llama. Escuche atentamente, mein Herr. Usted se llama Fritz, y ha sido recultado para el servicio de cifrado alemán. Se dispone a preparar su máquina para enviar un mensaje, así que no nos falle. Recuerde las instrucciones para preparar la máquina. Lo primero es conocer la clave. Supondremos que ya tiene todos los elementos: el orden de los rotores, su disposición interna y externa, y el cableado del tablero de conexión. En primer lugar, los rotores. El primer elemento viene indicado como I IV III. Eso quiere decir que los rotores izquierdo, central y derecho son, respectivamente, los número I, IV y III. Bien. A continuación, ajuste la posición de anillo. Digamos que es AFG. Tome el rotor izquierdo, el I en nuestro caso, sujete el anillo exterior con la mano izquierda y el núcleo con la derecha (esto último es fácil, porque en el lado derecho hay un disco con muescas, unido al núcleo, para facilitar la operación). A continuación, gire el anillo hasta que la letra A coincida con una señal que hay hecha en el núcleo. Hecho eso, suelte la mano izquierda y voilá, ya tiene el primer rotor con su posición de anillo correcta. Haga lo mismo con el rotor central y el derecho. Ahora inserte los tres rotores -en el orden adecuado, por favor- en la barra que hará de eje común a los tres. Abra la máquina, inserte la barra con los rotores, y cierre la tapa. A continuación, haga girar los rotores hasta que las letras que aparecen en la parte superior de la máquina se vean a través de tres ventanitas hechas en la tapa. Hecho eso, ya tiene el elemento 3 -la posición de rotores. Solamente le queda enchufar los diversos conectores del tablero para intercambiar las teclas adecuadas. Y ya está listo para transmitir. Como verá, hay muchos elementos en la clave. Cuáles son públicos y cuáles son secretos depende de diversos factores. En primer lugar, la Armada cifraba sus mensajes de forma distinta; además de ello, la forma de cifrar y descifrar fue cambiando durante la guerra. He aquí lo habitual. El operador tenía un libro de claves donde, para cada día, se indicaban en orden de los rotores, la posición de anillo y las conexiones del tablero. Es decir, se daban los indicativos 1, 2 y 4, lo que hemos llamado posición básica. La posición de los rotores, generalmente, se dejaba a la elección del operador (lo que no deja de tener sus riesgos, como veremos en posterior ocasión). Pero volvamos a nuestro operador de radio. Herr Fritz -este es usted- tiene ahora que enviar un mensaje y cifrarlo. Y aquí nos encontramos con un problema de distribución de claves bastante gordo. Imaginemos que los elementos de la clave cambian cada día. Si todo el mundo usase los mismos, todos los mensajes del día irán cifrados con la misma clave. Pero es una máxima de la criptografía que, cuantos más mensajes estén cifrados con la misma clave, más material tiene el criptoanalists para poder trabajar. Usar siempre la misma clave es, a la larga, una invitación al desastre. Lo ideal es cambiar la clave para cada mensaje. Pero eso tiene a su vez sus problemas. Nuestro libro de claves debería contener tantas claves como posibles mensajes para un día, y eso sería una cifra enorme. Y poner de acuerdo a dos operadores dados de una red para que usen una clave dada sería muy difícil. ¿Cómo se resuelve eso? Pues con el concepto que hoy día se denomina "clave de sesión". Básicamente, consiste en cifrar el mensaje con una clave (la clave de mensaje, o de sesión), y luego cifrar la clave de sesión con una clave "maestra". De esa forma, incluso un ataque criptoanalítico contra el mensaje nos daría la clave con que éste fue cifrado, pero no nos serviría para descifrar otros mensajes. A los que usen PGP y se hayan leído mi manual on-line, seguro que les sonará el concepto. Vamos, pues, a ingeniárnoslas para seguir ese método de trabajo. Primero, ajustamos la máquina de la forma que hemos descrito antes. Es decir, tomamos nuestro libro de claves, miramos el día que es y tomamos los rotores en el orden adecuado, ajustamos sus anillos y los enchufes del tablero. Antes del 15 de septiembre de 1938, también hubiésemos tomado del libro de claves la posición de los rotores para ese día (tras de dicha fecha, dicha posición era escogida al azar por el operador de radio). Cualquiera que hubiese sido el caso, supongamos que la posición de rotores para el día de hoy sea DIA. A continuación, vamos a escoger una "clave" para nuestro mensaje. Va a consistir en una posición de rotores escogida al azar, digamos MEN (la posición de anillo, orden de rotores y cableado del tablero, es decir, la "posición básica", permanece sin cambios; tampoco tiene sentido ajustar todos los elementos de la máquina). Lo primero que vamos a hacer es cifrar la clave del mensaje (MEN) con la máquina en la posición del día (DIA). Es decir, ponemos los rotores en la posición DIA y tecleamos las teclas MEN. El resultado será, digamos, GOL. Ese es el primer paso. El segundo será poner la máquina con los rotores en la posición MEN y cifrar el mensaje. Hecho eso, nuestro mensaje constará de dos partes: - Las letras GOL, que representan el efecto de la máquina al cifrar la clave del mensaje (MEN) con la posición del día (DIA). - El texto cifrado en sí. En realidad, hay más indicadores que añadir al mensaje, al comienzo: los códigos del remitente y el destinatario, el tipo de red usada, el día y la hora, el número de letras del texto cifrado, etc; pero eso no nos atañe aquí, no son realmente parte de la clave. Cuando la posición de rotor era escogida por el operador, también era incluida antes del texto cifrado. Cuando el destinatario recibe el mensaje, realiza el proceso inverso. Con la máquina lista, y los rotores en la posición del día (DIA), teclea GOL y obtiene MEN, que es la clave del mensaje. A continuación, ajusta los rotores a la posición MEN, teclea el mensaje cifrado ... y aparece descifrado. Buen trabajo, Fritz. Como ya he dicho, hubo diversas variaciones de este sistema. Una de ellas, en vigor hasta Mayo de 1940, consistió en un detalle en apariencia irrelevante. A menudo, las condiciones de transmisión no eran buenas, lo que hacía que algunas letras del mensaje se perdiesen. Sin embargo, recibir mal la clave de mensaje cifrada (en nuestro ejemplo, GOL) tenía resultados desastrosos: sencillamente, el destinatario no podía descifrar el mensaje, al no saber cuál era la clave de mensaje correcta. Para paliar este problema, se cifraba la clave de mensaje dos veces. Es decir, se ponían los rotores en la posición de la clave del día DIA, y se cifraban las letras MENMEN. El resultado, digamos, GOLPMA, era lo que se incluía el mensaje. El destinatario, al hacer la operación inversa, descifraba GOLPMA con la clave del día DIA, y recuperaba la clave del mensaje duplicada: MENMEN. Este detalle fue aprovechado por los criptoanalistas polacos, con resultados devastadores, como ya veremos. Y bien, mi querido Fritz, ahora va a quedarse sin empleo. Vamos a reclutarlo para trabajar en el lado opuesto. A partir de ahora, su nombre será Alan, y trabajará para reventar los códigos Enigma alemanes. Ocasionalmente, le haré volver a su empleo original. Entre uno y otros, iremos cubriendo los entresijos de ambos lados de la balanza. Pero eso lo dejaremos para otro artículo. Aquí ya hemos trabajado bastante por ahora. ======================================================================== El boletín ENIGMA es una publicación gratuita del Taller de Criptografía. Se permite su reproducción y difusión sin ánimo de lucro, citando nombre y referencia. Para darse de alta, envíe un mensaje a la dirección aquiran arroba ugr.es añadiendo las palabras alta_enigma en el asunto (subject). Para darse de baja, envíe un mensaje a la dirección aquiran arroba ugr.es añadiendo las palabras baja_enigma en el asunto (subject) Para consultas o comentarios a este boletín, se ruega añadir noticias_enigma el comienzo del asunto (subject). Si desea colaborar con el Boletín Enigma, no dude en ponerse en contacto con el editor añadiendo colaboración_enigma al asunto (subject). Página del Boletín Enigma (incluyendo números atrasados): http://www.ugr.es/~aquiran/cripto/enigma.htm (c) Arturo Quirantes 2002 ======================================================================== -----BEGIN PGP SIGNATURE----- Version: PGP 6.5i iQA/AwUBQZSBUtPjg85OIDHsEQItDgCgwnEe1lBGD0XF+FsRIzAWy6R9fOYAoPpW sgAUxey1oh6VT2woFIRl4/IO =Lk+2 -----END PGP SIGNATURE-----