Capítulo 02 · Enigma
La máquina que perdió una guerra
Un cifrado electromecánico con 159 trillones de configuraciones, usado por todos los ejércitos alemanes, roto primero por tres matemáticos polacos con la teoría de permutaciones y después, a escala industrial, en Bletchley Park. Su historia enseña que la parte más débil de un cifrado suele ser la forma de usarlo.
En este capítulo
Tras la Primera Guerra Mundial, los cifradores eran el cuello de botella de todos los ejércitos: cifrar a mano era lento y propenso a errores, y los cifrados lo bastante sencillos para usarlos bajo el fuego se podían romper. Varios inventores tuvieron la misma idea a la vez: cablear la sustitución dentro de un disco giratorio y dejar que la máquina cambiara de sustitución tras cada letra. Edward Hebern en Estados Unidos, Hugo Koch en los Países Bajos, Arvid Damm en Suecia y Arthur Scherbius en Alemania, que patentó su máquina en 1918 y la vendió con el nombre de Enigma a partir de 1923. La marina alemana la adoptó en 1926, el ejército de tierra en 1928 y la aviación después; en 1945 había decenas de miles en servicio.
Cómo funciona Enigma
Al pulsar una tecla se cierra un circuito eléctrico que termina en una de 26 lámparas. Por el camino, la corriente atraviesa:
- el clavijero (Steckerbrett), donde unos cables intercambian parejas de letras (diez parejas, por reglamento);
- tres rotores, elegidos entre cinco y colocados en cualquier orden; cada rotor es un cableado fijo y revuelto de 26 contactos de una cara a 26 de la otra, y su anillo desplaza el cableado respecto a las letras del borde;
- el reflector (Umkehrwalze), que conecta las letras por parejas y devuelve la corriente a través de los tres rotores por otro camino;
- otra vez el clavijero, y una lámpara.
Antes de que pase la corriente, el rotor de la derecha avanza un paso. Cuando pasa por su muesca arrastra también al rotor central; cuando el central llega a su propia muesca, arrastra al de la izquierda y a sí mismo en la siguiente pulsación: el famoso doble paso. Como los rotores se mueven, la misma letra se cifra de forma distinta cada vez, y la sustitución solo se repite tras letras.
Un retrato matemático
Cada pulsación aplica una permutación de las 26 letras. Llamemos al clavijero, a los tres rotores en su posición actual (derecha, centro, izquierda) y al reflector. La corriente pasa por , , , , y vuelve, así que la permutación es
En cada posición, es una involución () sin puntos fijos ( para toda letra ). En particular, cifrar y descifrar son la misma operación, y ninguna letra se cifra nunca en sí misma.
Demostración
Sea , de modo que . El reflector empareja letras, así que y para toda . Entonces . Y si , entonces , un punto fijo de , que no existe.
La simetría era una comodidad: la misma máquina, con la misma configuración, cifraba y descifraba. La ausencia de puntos fijos fue un regalo para el enemigo, como muestra el ataque del crib más abajo.
Con tres rotores elegidos entre cinco, 26 posiciones iniciales cada uno y diez cables en el clavijero, el número de claves diarias es
Contar el clavijero
Hay que elegir qué 20 letras se conectan y cómo se emparejan, dejando 6 sueltas. Pongamos las 26 letras en cualquier orden ( formas), conectemos las 20 primeras por parejas consecutivas y dejemos sueltas las 6 últimas. Cada cableado se cuenta veces (orden de las letras sueltas) (orden de las parejas) (orden dentro de cada pareja).
Casi todo ese número viene del clavijero. La genialidad de Rejewski fue encontrar una magnitud que el clavijero no cambia.
Rejewski: un teorema rompe Enigma
En 1932 la Oficina de Cifrado polaca encargó el problema a Marian Rejewski, un matemático de 27 años de Poznań, y después a Jerzy Różycki y Henryk Zygalski. El procedimiento alemán les ayudó: cada mensaje empezaba con una clave de mensaje de tres letras, elegida por el operador, cifrada dos veces con la configuración del día («para asegurarse de que llega»). Así, las letras 1 y 4 de cada mensaje eran cifrados de la misma letra, igual que la 2 y la 5, y la 3 y la 6. Llamando a las permutaciones de las seis primeras posiciones, los mensajes del día revelaban los productos , y (si y , entonces lleva a , porque es una involución).
Para permutaciones y , la permutación tiene exactamente la misma estructura de ciclos (el mismo número de ciclos de cada longitud) que .
Demostración
Si es un ciclo de , entonces es un ciclo de : en efecto, . Renombrar las letras con lleva ciclos a ciclos de la misma longitud.
El clavijero solo entra en por conjugación, así que la estructura de ciclos de , y depende solo del orden y la posición de los rotores: posibilidades, un número lo bastante pequeño para catalogarlo. Los polacos construyeron una máquina, el ciclómetro, para calcular el catálogo, y desde 1933 leyeron el tráfico alemán con regularidad. Rejewski había reconstruido además el cableado de los rotores con la teoría de permutaciones, ayudado por manuales de uso y claves antiguas que un empleado alemán, Hans-Thilo Schmidt, vendió al espionaje francés (Gustave Bertrand).
Los alemanes cambiaron los procedimientos y añadieron dos rotores en 1938, lo que multiplicaba el trabajo por diez. El 25 de julio de 1939, cinco semanas antes de la invasión de Polonia, los polacos se reunieron con sus aliados británicos y franceses en el bosque de Pyry, cerca de Varsovia, y se lo dieron todo: sus métodos, las hojas perforadas de Zygalski y dos réplicas de la Enigma.
Bletchley Park y el crib
En Bletchley Park, el centro británico de descifrado, Alan Turing diseñó una máquina nueva, la bomba (1940), mejorada con el tablero diagonal de Gordon Welchman. No necesitaba la clave de mensaje duplicada, que los alemanes abandonaron en mayo de 1940. Necesitaba un crib: una conjetura sobre parte del texto en claro y su posición. Los mensajes militares estaban llenos de ellos: WETTERBERICHT (parte meteorológico), KEINE BESONDEREN EREIGNISSE (sin novedad), indicativos, grados, el mismo saludo cada mañana.
El teorema anterior dice dónde puede ir un crib: como ninguna letra se cifra en sí misma, cualquier posición en la que una letra del crib coincida con la letra del texto cifrado que tiene debajo es imposible. Deslizar el crib por el texto cifrado elimina de golpe la mayoría de las posiciones; para cada superviviente, la bomba probaba todos los órdenes y posiciones de los rotores contra la cadena de parejas de letras que el crib implicaba.
La Enigma naval, con cuatro rotores desde 1942 y procedimientos más estrictos, resistió más; Joan Clarke, Turing y Hugh Alexander la atacaron con el Banburismus, un método estadístico, y con libros de claves capturados a submarinos y barcos meteorológicos (el U-110 en mayo de 1941, el U-559 en octubre de 1942). La información, con el nombre clave Ultra, se distribuía con un cuidado extremo para que los alemanes no sospecharan. Los historiadores calculan que acortó la guerra en Europa hasta dos años.
No solo Enigma. El alto mando alemán usaba otra máquina, el cifrado de teletipo Lorenz SZ40/42. Bill Tutte reconstruyó su lógica en 1942 sin haber visto nunca una, y Tommy Flowers construyó Colossus (1944) para atacarlo: el primer ordenador digital electrónico programable.
Por qué cayó Enigma
- Un defecto estructural: ninguna letra se cifra en sí misma, lo que convierte cada crib en un filtro.
- Procedimientos que repiten información: la clave de mensaje duplicada dio a Rejewski sus ecuaciones.
- Texto en claro previsible: partes meteorológicos, saludos de fórmula, «sin novedad».
- Atajos humanos: los operadores elegían claves de mensaje como AAA o las iniciales de su novia (los «cillies»).
- Exceso de confianza: un espacio de claves de parecía irrompible, y los alemanes nunca consideraron en serio que se estuviera leyendo la máquina.
Todas estas lecciones reaparecen en la criptografía moderna. El capítulo siguiente plantea la pregunta opuesta: ¿existe un cifrado que no se pueda romper en absoluto?
Para saber más
- Marian Rejewski, «How Polish mathematicians deciphered the Enigma», Annals of the History of Computing 3(3), 1981.
- Gordon Welchman, The Hut Six Story (1982).
- Andrew Hodges, Alan Turing: The Enigma (1983; en español, Alan Turing: el enigma).
- Las páginas de Tony Sale sobre códigos y cifrados y los archivos del Bletchley Park Trust.