Hace poco, cuando los investigadores de la Universidad de Rochester tuvieron finalmente éxito en el desarrollo de un dispositivo de cifrado basado en reglas cuánticas, presentaron su esfuerzo como “el Enigma cuántico”, en honor a la máquina de rotores usada por los nazis en la Segunda Guerra Mundial; el mismo dispositivo que en ocasiones se subasta por mucho dinero hoy en día cuando está accesible. La pregunta a resolver quizá es ¿por qué la máquina Enigma tiene esa fascinación?
Desde luego que la historia de la criptografía y del decodificar los mensajes de los nazis tiene que ver con los analistas británicos de Bletchley Park, en donde el mismísimo Alan Turing era el líder de este esfuerzo del Reino Unido. Fue claro que descifrar los mensajes sería una de las labores más complejas pues el nivel de cifrado de Enigma era extraordinario. La máquina la inventó el ingeniero alemán Arthur Scherbius, que consistía básicamente en tres componentes conectados con cables: un teclado para introducir el mensaje original, una unidad modificadora y un panel con lámparas donde la letra correspondientes del mensaje encriptado se iluminaba.
La parte fundamental era la unidad modificadora, la cual era responsable del proceso de codificación, y estaba integrada por tres tipos de componentes, conectores, rotores y un reflector. La Enigma tenía tres rotores, conectados en series. Eran tres discos gruesos, cada uno e ellos con 26 puntos de entrada (uno para cada letra del alfabeto) y muchos puntos de salida. El cableado interno, diferente en cada disco, hacía que la señal que se alimentaba de una posición saliera a una diferente. Entonces se reruteaba rotando la posición del rotor cada vez que la letra se presionaba en el mensaje original. El segundo rotor avanzaba una posición cada vez que el primer rotor completaba una vuelta completa. El tercer rotor giraba una posición cuando el segundo rotor completaba toda una vuelta.
Esto es equivalente a como trabaja un reloj de manecillas. Cuando los minutos cumplen una hora (un giro completo), las horas se mueven una unidad. Tienen que pasar 12 horas para que las agujas tengan una configuración específica. En otras palabras, se requieren 60 x 60 x 12 = 43,200 combinaciones o arreglos de las diferentes manecillas del reloj. Si transferimos esto al sistema de tres discos (con 26 posiciones cada uno), tenemos 26 x 26 x 26 = 17,576 arreglos diferentes. Esto significa que cuando el operador escribe una letra, ésta puede ser cifrada de acuerdo a cualquiera de las decenas de miles de posibles configuraciones (como si fuesen diferentes alfabetos cifrados). Y como el arreglo cambia, la siguiente letra está entonces codificada de manera diferente a través de un nuevo alfabeto (o configuración de los discos).
Enigma tiene otro tipo de disco llamado el reflector, que tiene su propio cableado, pero éste no rota y los cables que entran y salen de un mismo lado, simplemente tienen diferentes posiciones. Está localizado junto a los rotores. Así, cuando se escribe una letra del mensaje original, una señal eléctrica pasa a través d los rotores, entra al reflector, sale de él, viaja de regreso a los tres modificadores pero llevando siempre diferentes rutas que alcanzan el panel. Su utilidad, más allá de multiplicar la cantidad de las configuraciones, es que automatiza el proceso de descifrado. Gracias al reflector, los proceso de codificación y decodificación son auto-recíprocos, lo qu3e significa que son la reflexión uno del otro, como en un espejo. Entonces, para descifrar un mensaje, el receptor solamente necesita una máquina Enigma en las mismas posiciones iniciales y escribiendo el mensaje cifrado se puede llegar al original.
Finalmente los conectores están fijos al panel justo enfrente de los rotores que permiten al operador insertar cables que tienen el efecto de intercambiar algunas letras antes de acceder al codificador. La máquina Enigma tenía seis pares de letras que podían ser intercambiadas. La manera en que los seis pares de letras podían ponerse, en 26 letras, da 100,391,791,500 combinaciones, que se multiplican a los 17,576 arreglos del rotor.
Scherbius sin embargo, decidió incrementar el nivel de seguridad del cifrado de su máquina. Podría haber incrementado el número de rotores, pero la máquina habría sido demasiado grande y poco práctica desde el punto de vista militar. En lugar de eso, decidió hacer los discos intercambiables. En cada ocasión los discos estaban acomodados de manera diferente y al azar en la máquina (1-2-3, 1-3-2, 2-1-3, 2-3-1, 3-1-2 o 3-2-1). Había pues seis combinaciones y multiplicando con lo anterior, daba 10 millones de billones de posibles configuraciones. Este dato puede darnos perspectiva sobre el nivel de seguridad del cifrado y la dificultad para descifrar los mensajes. En 1926 la armada alemana empezó a usar la máquina Enigma I.
Pero el diseño tiene un detalle interesante. La incapacidad para descifrar los mensaje depende del mantener secreto las condiciones iniciales al usar la máquina. Si alguien sabía estas condiciones, bastaba con escribir el mensaje cifrado y la máquina le daría el original, pero sin estos datos, habría que tratar trillones de posibilidades. Por tanto, era necesario distribuir periódicamente a todos los operadores de la armada alemana, un conjunto de claves diarias, que incluían las condiciones iniciales para cada día y en donde se listaba el orden de cómo estaban los discos puestos en la Enigma, la posición inicial de estos discos y los cables del panel. La razón de este esquema era prevenir que todas las comunicaciones del día se cifraran de la misma manera con la misma clave, lo que haría decodificarlos un problema más sencillo. Los alemanes decidieron usar estas “claves diarias” solamente para codificar la clave del mensaje, con el cual empezaban cada uno de sus mensajes y que variaban uno de otro.
El que creaba un mensaje elegía un arreglo azaroso de los rotores, lo cual sería el mensaje clave”, que se transmitía y se codificaba como “la clave del día” y entonces mandaba un mensaje cifrado de acuerdo a la nueva clave. El receptor, que tenía su Enigma acomodada de acuerdo a las condiciones iniciales que le habían mandado, recibía el mensaje y conocía que las tres primeras letras correspondían a la clave del mensaje, es decir, a cómo estaban colocados los rotores, indicados por las “condiciones del día”. Reajustaba la posición de los rotores y descifraba el resto del mensaje.
Este sistema parece imposible de descifrar pero tenía un fallo: los operadores alemanes, para evitar errores en la recepción, decidían escribir la “clave del mensaje”. dos veces en una fila y entonces introducía una debilidad en el sistema. Así, la primera y cuarta letra, la segunda y la quinta letra y la tercera y la sexta letra, de cada mensaje interceptado eran el cifrado de la misma letra.
Con esta mínima información y una réplica de la máquina Enigma (que los Aliados habían logrado obtener), fue suficiente para que la matemática polaca Marían Rejewski, en 1932, pudiese descifrar las comunicaciones alemanas. La derrota de este sistema de criptografía tiene más que ver con los errores de los operadores que un error en el diseño de la máquina Enigma.
Pero en 1938 los alemanes decidieron recobrar la seguridad de Enigma. Cada operador tendría un conjunto de cinco rotores los cuales se montaban tres en la máquina y el número de cables se incrementó de 6 a 10. Las posibles configuraciones llegaron a unos 159 trillones. Cuando la Guerra inició, el número de rotores de la máquina Enigma de la Marina alemana (Kriesgmarine), se expandió de 5 a 8. La Enigma de nuevo era impenetrable.
Para el 24 de julio de 1939, antes de que los alemanes iniciaran la invasión a Polonia, el servicio secrete polaco informó a los británicos que tenían una nueva réplica de la Enigma y esperaban que con esto y más tiempo, pudiesen descifrar los mensajes nazis. Y lo lograron. El éxito se basó en el talento visionario de Alan Turing, pero también en los errores de los operadores alemanes, que permitieron romper el cifrado impenetrable de Enigma.
Por ejemplo, había errores humanos, tales como elegir la clave del mensaje que no fuese totalmente al azar. En ocasiones optaban por claves obvias (tres letras sucesivas), o cometían el error de repetir la misma clave (por ejemplo, las iniciales de su nombre). Había también las medidas de seguridad tomadas por los responsables de crear las libretas con las claves diarias: no permitían que los rotores repitieran una posición de un día al siguiente y en los conectores no se podían poner letras consecutivas. Estas medidas, paradójicamente, reducían mucho el número de posibles configuraciones totales. Además, a veces los Aliados obtenían estas libretas, que se les daban a los analistas, que continuaban avanzando en los procesos de descifrado. Sin todo esto, quizás Enigma hubiese sido absolutamente impenetrable.
Aquí la moraleja es clara: el sistema de la máquina Enigma era asombrosamente bueno y probablemente indescifrable sin los elementos mostrados, pero los errores humanos, las equivocaciones en nuestras maneras de hacer las cosas fueron lo que hizo posible decodificar los mensajes alemanes y probablemente hacer que los Aliados ganasen la guerra.
Referencias: BBVA Open Mind