El Enigma
Soldados alemanes con el enigma
Historia:
El enigma es una máquina de cifrado inventada en Alemania por el ingeniero Arthur Scherbuis, está basado en el uso de ruedas dentadas y fue una de las primeras máquinas de su clase. La expansión de las telecomunicaciones aumentó la necesidad de crear métodos de cifrado automatizados para sustituir los antiguos métodos manuales. En un principio ni el ministerio de exteriores alemán, ni el ejercito se interesó por la maquina inventada por Scherbuis y este vendió los derechos a las patentes a la empresa Chiffriermaschinen-AG que durante los años 20 se dedicó a comercializar la máquina.
En los años 30, con la reconstrucción del ejercito alemán, el alto mando militar de la Alemania nazi se interesó por el Enigma, y se apoderó de la máquina. Al considerar el cifrado del enigma muy bueno y prácticamente indecifrable para sus vecinos europeos adopto la máquina para toda la comunicación dentro del ejercito.
Técnica de cifrado:
El enigma se basa en la sustitución (id est sustituir un carácter por otro), pero variando la sustitución con cada carácter introducido, y además usando más de un alfabeto de sustitución. Aquí es donde entran en acción las ruedas dentadas. Las ruedas dentadas determinan la sustitución que realizará la máquina, tienen una posición por cada signo del alfabeto a cifrar (el Enigma nazi tenía 26 carácteres) y según el estado inicial que tienen, al ponerse a escribir tendrá como salida un mensaje u otro.
Las primeras máquinas usaban 3 ruedas en serie (de 5 ruedas disponibles), esto significa que usaban 3 alfabetos de sustitución. Al rotar una de las ruedas se desplazaba el alfabeto de sustitución, al agotarse los cambios posibles de una rueda, giraba la segunda una posición y vuelta a empezar de la primera, y así sucesivamente generando un cifrado con relativamente poca repetición. El principio fundamental que inspiró el mecanismo del Enigma es el de que si usas una clave completamente aleatoria y el mensaje no tiene repetición de secuencias de carácteres será imposible de descifrar. Más tarde incluirían también una sustitución directa carácter a carácter, mediante cables antes de pasar a los alfabetos de sustitución, añadiendo más calidad al cifrado.
Teóricamente el cifrado logrado por esta máquina es de una calidad altísima, con 3 ruedas en serie (combinando las 5 de todas las maneras salen 60 combinaciones) y 10 cables de intercambio de letra (el estándar del ejército alemán) se obtienen 107.458.687.327.250.619.360.000 (1,07*1023) combinaciones posibles. Posteriormente, la marina añadiría una rueda a su máquina y 3 más para elegir (8 ruedas en total), pudiendo obtener así 31.291.969.749.695.380.357.632.000 (3,1*1025) combinaciones posibles (equivalente a un cifrado de 84 bits en un ordenador de hoy en día).


Mecanismo y funcionamiento:
El enigma es un aparato electro-mecánico, consiste en un teclado, un panel de luces donde se indica a que letra se ha cifrado la introducida, una batería y 3 o 4 ruedas dentadas (ya mencionadas). A la derecha se ve un dibujo de la circuitería de un enigma (en este caso con solo cuatro letras). Los números indican las siguientes componentes:
1. Flujo de corriente de la batería.
2. Interruptor bidireccional de la tecla ‘A’ (pulsado).
3. Zócalo cerrado de ‘A’.
4. Entrada a las ruedas dentadas.
5. Ruedas dentadas.
6. Reflector (devuelve la corriente por otro camino).
7. Zócalo abierto de ‘S’.
8. Cable de intercambio de letras (de ‘S’ a ‘D’).
En el ejemplo se ve como se pulsa la tecla ‘A’ las ruedas devuelvan una ‘S’, pero como están intercambiadas la ‘S’ y la ‘D’, produce una ‘D’.
Las ruedas dentadas son la clave del mecanismo interno de la máquina, cada rueda tenía una codificación distinta y según el orden en el que estaban puestas en la máquina se lograba un cifrado u otro. En la imagen de abajo (derecha) se ve la entrada de corriente a las ruedas dentadas, la corriente saldría por la correspondiente al carácter pulsado, entraría a la primera rueda dentada y esta la sacaría por otra salida, entraría en la segunda rueda, y luego a la tercera. El reflector también tenía una codificación, por lo que la señal volvía por las ruedas, pero por otro camino.
Ahora en la imagen de la abajo (izquierda) se observa uno de los cuatro tipos de reflectores que usaba el ejército alemán. Además se añadió un mecanismo para que la rueda en la segunda posición diera saltos al pasar una letra concreta (la letra en cuestión dependía del tipo de rueda). El mecanismo del Enigma es totalmente simétrico, al recibir un mensaje codificado basta con poner la misma clave que el que la envió y teclear el mensaje cifrado para obtener el mensaje original.
La codificación de cada rueda y de los reflectores eran fijas, y a continuación veréis las tablas de codificación de cada una.
Ejemplo práctico:
Supongamos que queremos enviar un mensaje codificado con el enigma. En concreto queremos enviar una A, utilizando las ruedas I, II y III de derecha a izquierda y un reflector de tipo B. Para simplificar utilizaremos como posición inicial 0 para las tres ruedas.
Mirando la tabla de la derecha vemos que para desplazamiento cero A se transforma en E. En la segunda rueda E se transforma en S, y en la tercera S en G. En la tabla de la izquierda vemos que el reflector convierte G en L. Ahora hay que mirar la tabla de la derecha de abajo a arriba (esta vez la señal va en sentido opuesto). En la tercera L se convierte en F, en la segunda F en W, y en la primera W en N, que es el mensaje cifrado con la clave 0,0,0 con las ruedas I,II, III, y el reflector B. La máquina pasaría automáticamente a la posición 0,0,1. Si volvemos a introducir una A, al haber un desplazamiento de uno, toma la a como una B, la convierte en K, en L, en V, el reflector la devuelve como W, luego se convierte en R, G y finalmente F, que por el desplazamiento de uno pasa a ser E.
Al ser un mecanismo de cifrado simétrico, si ponemos la misma configuración de inicio, y transmitimos NE, nos devolvería AA, el mensaje original. En este enlace se pueden hacer más pruebas, con las ruedas que se quiera y el reflector B. Ilustración del segundo caso explicado:
En estos casos no se han considerado los posibles cables de cambio de carácter por carácter para simplificar. Por ejemplo, en la última figura, de haber un cable entre E y X, la salida sería X en vez de E.
Debilidades, descifrado:
Una de las principales debilidades del Enigma es que es imposible que coincidan las letras sin cifrar y cifrada en este mecanismo, algo que permitía descartar posibles mensajes originales.
S | O | H | J | Y | P | D | O | M | Q | N | J | C | O | S | G | A | W | H | L | E | I | H | Y | S | O | P | .. |
P1 | K | E | I | N | E | B | E | S | O | N | D | E | R | E | N | E | R | E | I | G | N | I | S | S | .. | ||
P2 | K | E | I | N | E | B | E | S | O | N | D | E | R | E | N | E | R | E | I | G | N | I | S | .. | |||
P3 | K | E | I | N | E | B | E | S | O | N | D | E | R | E | N | E | R | E | I | G | N | I | .. |
Imaginaos estar escuchando una transmisión S cifrada con el enigma, en este caso quedarían totalmente descartadas las opciones P1 y P3 por tener letras coincidentes con el mensaje original S.
Otra era que si se usaba un cable de intercambio de carácter, este intercambio era recíproco, un cambio de A por Q significaba también un cambio de Q por A, algo que redujo mucho la complejidad de los cálculos del descifrado. La tercera gran debilidad era que las ruedas dentadas tenían los anclajes de rotación en posiciones distintas, por lo que con un criptoanálisis se puede detectar que ruedas se están utilizando.
Aún considerando estas debilidades la máquina tenía un potencial muy grande que quedo reducido enormemente por el uso inapropiado y errores cometidos por el ejército alemán. Por ejemplo la repetición de la misma clave, mensajes idénticos repetidos día tras día(con claves distintas), uso de claves fáciles de adivinar(AAA, BBB, ASD…), el hecho de no usar mas cables de sustitución directa de caracteres, etc.
A pesar de tener todas estas debilidades se necesitaron unos recursos enormes para descifrar los mensajes enviados por el enigma, trabajaron más de 10.000 personas (incluidos intelectuales de la talla de Alan Turing) desde el inicio hasta el fin de la guerra. Según Winston Churchill el trabajo de estos intelectuales acortó la guerra en por lo menos 3 años, ya que el alto mando aliado tuvo una ventaja considerable sabiendo de antemano todos los movimientos del ejército alemán.