En estos últimos posts sobre la máquina Enigma me propongo compartir lo que he aprendido sobre cómo se consiguió "romper" su cifrado.
Se trata de una historia muy larga y muy compleja, por lo que intentaré simplificar lo que he entendido sobre ella para no aburrir y hacerla lo más comprensible que me sea posible.
Las debilidades de la máquina Enigma que propiciaron el criptoanálisis vinieron por una parte de su diseño, las menos y relativamente poco importantes, y por otra parte de su utilización (operación), las más y las que al final resultaron decisivas para poder "romper" su cifrado.
Todo ello, junto con la información que se filtró y obtuvieron los aliados sobre su funcionamiento y uso, hizo posible el criptoanálisis.
Las citadas debilidades pueden resumirse en las siguientes:
1.- La introducción del reflector proporcionó una ventaja muy importante desde el punto de vista de operación de la máquina, ya que el cifrado y descifrado se podían realizar, siempre que se dispusiera de una máquina igual, con la misma configuración (clave) y sin necesidad de hacer ninguna modificación, pero, al mismo tiempo, fue su debilidad de diseño más importante.
2.- Para no generar un elevado número de mensajes con la misma clave, algo que podía dar pistas a los criptoanalistas, los alemanes decidieron que cada mensaje debía tener su propia clave, lo que pensaban que aumentaba la seguridad y para lo que actuaban de la forma que comento más adelante, pero esto permitió a los criptoanalistas deducir el cableado de los rotores y del reflector; primer paso, necesario pero no suficiente, para atacar de forma sistemática el cifrado de los mensajes.
Y digo no suficiente porque la máquina Enigma seguía el principio de Kerckhoffs, por el cual:
Es decir, los alemanes eran plenamente conscientes de que se filtrarían los detalles técnicos de funcionamiento de la máquina y de que incluso algunas de las máquinas podían caer en manos del enemigo, pero tampoco les preocupaba en exceso porque la verdadera fortaleza de su cifrado residía en la clave. Aunque los aliados consiguieran fabricar réplicas de la máquina Enigma, el verdadero desafío consistía en conocer la clave.
La forma de operar a la que he hecho referencia anteriormente para que cada mensaje tuviera su propia clave era la siguiente:
Mensualmente los operadores recibían un libro con las claves a utilizar cada día y, para no enviar durante todo un día mensajes con la misma clave (en un mismo día se transmitía una cantidad ingente de ellos), se les ocurrió que fuera el operador quien estableciera la clave para cada mensaje a transmitir (lo que llamaron "clave de sesión"), de la siguiente manera:
2.1.- Para cifrar un mensaje el operador debía configurar la máquina con la clave del día (la que figuraba en el libro que había recibido) y teclear tres letras a su elección que indicaban la posición inicial de los rotores (parte de la clave) con la que iba a cifrar ese mensaje concreto. Para evitar errores (de operación y/o de transmisión) hacía esto dos veces seguidas.
Es decir, por ejemplo, un operador podía elegir 1-2-3 ("ABC") como posición inicial de los rotores con la que cifrar un mensaje concreto y tecleaba "ABCABC" (lo que con la clave del día podría cifrarse como "BJEGSM").
Después, manteniendo el resto de la configuración (clave del día), giraba los rotores hasta la posición inicial que él había elegido 1-2-3 ("ABC") y tecleaba el mensaje a cifrar.
2.2.-Para descifrar el mensaje, el operador que lo recibía debía configurar la máquina con la clave del día (la que figuraba en el libro que había recibido) y teclear los seis primeros caracteres del mensaje. En nuestro ejemplo "BJEGSM", con lo que vería como texto en claro "ABCABC" (es decir, dos veces de forma consecutiva la posición inicial de los rotores que había sido elegida por el otro operador para cifrar el mensaje concreto), con lo que lo único que debía hacer para obtener el texto en claro correspondiente al mensaje cifrado era girar los rotores hasta esa posición inicial 1-2-3 ("ABC") y teclear el resto del mensaje recibido.
Un sistema ingenioso para que cada mensaje tuviera su propia clave ("clave de sesión"), evitando así transmitir muchos de ellos con la misma clave, pero que, como digo, abrió la puerta al criptoanálisis.
3.- La falta de disciplina de los operadores, ya que en muchas ocasiones a la hora de establecer la posición inicial de los rotores como "clave de sesión" utilizaban el mismo carácter ("AAA",...) o caracteres consecutivos ("ABC",...) o letras consecutivas del teclado ("QWE") o un mismo operador siempre repetía los tres mismos caracteres, etc., lo que también daba pistas a los criptoanalistas.
4.- Para dificultar aún más el criptoanálisis, los alemanes establecieron otras estrictas normas para la operación de las máquinas, entre ellas, por ejemplo, que no se podía conectar una letra en el panel de conexiones ni con el carácter anterior ni con el posterior, que un rotor no podía estar alojado en una misma ranura más de un día, etc., lo que aunque en principio dificultaba el criptoanálisis se volvió en su contra, ya que si se conseguía conocer una clave esto permitía desechar muchas combinaciones posibles cuando se cambiaba.
5.- La emisión de un elevado número de mensajes, siempre a la misma hora, con una estructura similar y con palabras predecibles (por ejemplo: los partes metereológicos), lo que también daba pistas a los criptoanalístas.
Pero, ¿cómo lo consiguieron?.
Desde luego nada fácil; es más, algo absolutamente complejo.
En los siguientes posts de esta serie intentaré contar brevemente cómo lo hicieron, en la medida en la que mi capacidad y talento me lo permitan (poco en ambos casos), pero por lo que he comentado en este post creo que queda claro que al igual que con los ordenadores:
Se trata de una historia muy larga y muy compleja, por lo que intentaré simplificar lo que he entendido sobre ella para no aburrir y hacerla lo más comprensible que me sea posible.
Las debilidades de la máquina Enigma que propiciaron el criptoanálisis vinieron por una parte de su diseño, las menos y relativamente poco importantes, y por otra parte de su utilización (operación), las más y las que al final resultaron decisivas para poder "romper" su cifrado.
Todo ello, junto con la información que se filtró y obtuvieron los aliados sobre su funcionamiento y uso, hizo posible el criptoanálisis.
Las citadas debilidades pueden resumirse en las siguientes:
1.- La introducción del reflector proporcionó una ventaja muy importante desde el punto de vista de operación de la máquina, ya que el cifrado y descifrado se podían realizar, siempre que se dispusiera de una máquina igual, con la misma configuración (clave) y sin necesidad de hacer ninguna modificación, pero, al mismo tiempo, fue su debilidad de diseño más importante.
2.- Para no generar un elevado número de mensajes con la misma clave, algo que podía dar pistas a los criptoanalistas, los alemanes decidieron que cada mensaje debía tener su propia clave, lo que pensaban que aumentaba la seguridad y para lo que actuaban de la forma que comento más adelante, pero esto permitió a los criptoanalistas deducir el cableado de los rotores y del reflector; primer paso, necesario pero no suficiente, para atacar de forma sistemática el cifrado de los mensajes.
Y digo no suficiente porque la máquina Enigma seguía el principio de Kerckhoffs, por el cual:
"La seguridad del sistema debe recaer en la seguridad de la clave, debiéndose suponer conocidos el resto de los parámetros del sistema criptográfico".
La forma de operar a la que he hecho referencia anteriormente para que cada mensaje tuviera su propia clave era la siguiente:
Mensualmente los operadores recibían un libro con las claves a utilizar cada día y, para no enviar durante todo un día mensajes con la misma clave (en un mismo día se transmitía una cantidad ingente de ellos), se les ocurrió que fuera el operador quien estableciera la clave para cada mensaje a transmitir (lo que llamaron "clave de sesión"), de la siguiente manera:
2.1.- Para cifrar un mensaje el operador debía configurar la máquina con la clave del día (la que figuraba en el libro que había recibido) y teclear tres letras a su elección que indicaban la posición inicial de los rotores (parte de la clave) con la que iba a cifrar ese mensaje concreto. Para evitar errores (de operación y/o de transmisión) hacía esto dos veces seguidas.
Es decir, por ejemplo, un operador podía elegir 1-2-3 ("ABC") como posición inicial de los rotores con la que cifrar un mensaje concreto y tecleaba "ABCABC" (lo que con la clave del día podría cifrarse como "BJEGSM").
Después, manteniendo el resto de la configuración (clave del día), giraba los rotores hasta la posición inicial que él había elegido 1-2-3 ("ABC") y tecleaba el mensaje a cifrar.
2.2.-Para descifrar el mensaje, el operador que lo recibía debía configurar la máquina con la clave del día (la que figuraba en el libro que había recibido) y teclear los seis primeros caracteres del mensaje. En nuestro ejemplo "BJEGSM", con lo que vería como texto en claro "ABCABC" (es decir, dos veces de forma consecutiva la posición inicial de los rotores que había sido elegida por el otro operador para cifrar el mensaje concreto), con lo que lo único que debía hacer para obtener el texto en claro correspondiente al mensaje cifrado era girar los rotores hasta esa posición inicial 1-2-3 ("ABC") y teclear el resto del mensaje recibido.
Un sistema ingenioso para que cada mensaje tuviera su propia clave ("clave de sesión"), evitando así transmitir muchos de ellos con la misma clave, pero que, como digo, abrió la puerta al criptoanálisis.
3.- La falta de disciplina de los operadores, ya que en muchas ocasiones a la hora de establecer la posición inicial de los rotores como "clave de sesión" utilizaban el mismo carácter ("AAA",...) o caracteres consecutivos ("ABC",...) o letras consecutivas del teclado ("QWE") o un mismo operador siempre repetía los tres mismos caracteres, etc., lo que también daba pistas a los criptoanalistas.
4.- Para dificultar aún más el criptoanálisis, los alemanes establecieron otras estrictas normas para la operación de las máquinas, entre ellas, por ejemplo, que no se podía conectar una letra en el panel de conexiones ni con el carácter anterior ni con el posterior, que un rotor no podía estar alojado en una misma ranura más de un día, etc., lo que aunque en principio dificultaba el criptoanálisis se volvió en su contra, ya que si se conseguía conocer una clave esto permitía desechar muchas combinaciones posibles cuando se cambiaba.
5.- La emisión de un elevado número de mensajes, siempre a la misma hora, con una estructura similar y con palabras predecibles (por ejemplo: los partes metereológicos), lo que también daba pistas a los criptoanalístas.
Pero, ¿cómo lo consiguieron?.
Desde luego nada fácil; es más, algo absolutamente complejo.
En los siguientes posts de esta serie intentaré contar brevemente cómo lo hicieron, en la medida en la que mi capacidad y talento me lo permitan (poco en ambos casos), pero por lo que he comentado en este post creo que queda claro que al igual que con los ordenadores:
"El eslabón de seguridad más débil de la máquina Enigma fue la gente; la que estableció las normas para su uso y la que la utilizaba".
Comentarios
Publicar un comentario