viernes, 15 de julio de 2011

La máquina Enigma, lo que pudo ser el sistema de cifrado perfecto

Critografía, del griego krypto (oculto) y graphos (escribir), es la técnica, que altera las representaciones lingüísticas de un mensaje de forma discreta. Es decir, del cifrado y descifrado de mensajes a través de un algoritmo de ofuscación que debe permitir poder devolver el mensaje a su estado original una vez cifrado.

La encriptación ha estado siempre vinculada en la historia a las campañas militares y secretos de gobiernos. El primer método de criptografía en el siglo V a.C, era conocido como "Escítala". El segundo criptosistema que se conoce fue documentado por el historiador griego Polibio: un sistema de sustitución basado en la posición de las letras en una tabla. Más tarde, incluso Julio César usó estas técnicas en sus campañas militares. Sin embargo, fue en la II Guerra Mundial cuando la criptografía era de vital importancia.

Máquina Enigma.
  • Historia y antecedentes
Enigma era el nombre de una máquina que disponía de un mecanismo de cifrado rotatorio, que permitía usarla tanto para cifrar como para descifrar mensajes. Varios de sus modelos fueron muy utilizados en Europa desde inicios de los años 1920 y famosa por el uso que hizo de ella Alemania desde 1930 y durante la II Guera Mundial, lo cual traía de cabeza a los Aliados.

La máquina Enigma fue inventada por Arthur Scherbius un experto electromecánico que, tras la I Guerra Mundial, quiso aplicar la tecnología existente para mejorar los sistemas de criptografía de los ejércitos, patentando su invento en Enero de 1928, un modelo mejorado tras asociarse con Willie Korn, dueño de la compañía Enigma Chiffiermaschinen AG, la cual presentaron en la Exhibición Postal Internacional de Berlín, 1923.

U.S. Patent 1,657,411 de Scherbius, 1928.
La máquina aplica el Cifrado de Vigenère, un sistema fácil de entender e implementar y que parece irresoluble, el cual se basa en la sustitución de unas letras por otras. Para ello es necesaria la Tabla de Vigenère, que se usa como clave. Aunque el cifrado de Vigenère fue considerado seguro, el Método Kasiski (1863) consiguió romperlo.

  • ¿Cómo funciona Enigma?
La Enigma tenía una parte eléctrica y otra mecánica. La parte mecánica consistía en una serie de teclas que tenían las letras del alfabeto, igual que una máquina de escribir, que en realidad no eran sino interruptores que accionaban los dispositivos eléctricos y hacían mover unos cilindros rotatorios.

El funcionamiento de cara al usuario, era bastante sencillo: El operador tenía que teclear las letras de su mensaje y anotar las letras que devolvía la máquina a través de otro alfabeto que se iba iluminando en la parte superior de las teclas.

El código a usar se fijaba con las posiciones de los cilindros que constaban, cada uno, de 26 cables que se conectaban al teclado pero, con la particularidad, que el primer cilindro giraba 1/26 de vuelta después de cada pulsación de tecla, de tal manera que la posición de las conexiones iba cambiando, obteniendo un cifrado polialfabético.

Máquina Enigma por ITP.
Detalle del frontal de la Enigma, por NEN.

Además, para dar mayor robustez, el segundo cilindro sólo daba un giro cuando el primero había completado 26 giros y el tercero cuando el segundo había dado sus correspondientes 26 y añadió la posibilidad de que los rodillos pudiesen ser intercambiados de posición, de manera que el número de posibilidades aumentaba hasta tener 105.456 alfabetos.

Aún hay más, el sistema contaba con 6 cables de conexión que también permitían introducir modificaciones dado que podrían conectarse a 26 lugares (representando a las 26 letras del alfabeto de Enigma) lo que producía 100.391.791.500 maneras distintas de conectar los cables, que unidos al total de posibles alfabetos, arrojaba 3.283.883.513.796.974.198.700.882.069.882.752.878.379.955.261.095.623.685.444.055.315.226.006.433.616.627.409.666.933.182.371.154.802.769.920.000.000.000 posibilidades distintas de codificación.

Operating a German Enigma Machine. Youtube, 02:33.
  • Rompiendo la Enigma
Alemania contaba con una enorme ventaja porque el código de la Enigma era, prácticamente indescifrable, ya que además del número de posibles combinaciones, el ejército alemán cambiaba cada día el código a usar, eligiendo la forma en que serían colocados sus rotores y la letra de partida de cada rotor, enviando en el día tal información codificada, para que el día siguiente se preparasen las máquinas. Además, cada ejército alemán, usaba codificaciones diferentes. Así que los Aliados contaban con un único día para descifrarlo.

El cómo se logró vencer el código de la Enigma, fue debido a tres motivos principales:
  1. Las máquinas databan de 1923 y eran modelos comerciales que se distribuyeron por todo el mundo. Si bien es cierto que las máquinas se fueron complicando en sus versiones militares, el principio de funcionamiento ya era conocido. En 1929 los polacos interceptaron una de éstas máquinas enviada de Berlín a Varsovia, aunque no era la versión militar.

  2. El matemático polaco Marian Rejewski descubrió un patrón que probó ser vital: La codificación de un mensaje en Enigma obligaba a los operadores a introducir 3 letras, dos veces, al iniciar el mensaje, una especie de bandera. La Luftwaffe no modificaba esta secuencia y, por tanto, era un patrón que siempre se repetía. Así, podía suponerse el cableado de un rotor no por las letras, sino por la manera que estas cambiaban.

    Por ejemplo, si tenemos que el operador pulsaba QRSQRS, la codificación era algo como JXDRFT. Como sabemos que las letras se repiten, hay parejas de letras iguales en JR, XF y DT. Por lo tanto, sólo hay 10.545 combinaciones posibles de los rotores que cambien de J a R, de X a F y de D a T. Estos modelos fueron llamados cadenas. Las combinaciones se redujeron a centeneras con las "enigmas en paralelo" que llamaron bomba kryptologiczna.

  3. El 9 de mayo de 1941 la Royal Navy capturó el submarino alemán U-110, a cuya tripulación les fallaron las cargas explosivas para hundirlo, permitiendo hacerse con una máquina Enigma y con el preciado libro de claves. Esta captura se mantuvo en secreto y se hizo creer a la opinión pública que el submarino había sido hundido, para que las claves no fuesen cambiadas.
Así ya era posible descifrar mensajes en Enigma, aunque tras esto los alemanes evolucionaron la máquina, creando la M4, que fue vencida gracias a uno de los primeros computadores llamado Colossus. Todo ello provocó que fuesen inútiles y se dejasen de usar por tanto.

Maquinas Enigma . Youtube, 01:28.
Hoy en día Enigma sigue siendo un objeto de estudio y uno de los elementos que más expectación genera en cualquier exposición sobre la II Guerra Mundial. Una maravilla de máquina por la que algunos pueden llegar a pagar 55.000 euros.

Podéis probar este simulador de Enigma. Por ejemplo, NAUFRABLOGS con los rotores en N,F,B, da como resultado AOWWVHTBXHC. Con los rotores en la posicion final N,F,M, que es obviamente, la posicion del tercer rotor con 11 vueltas, las mismas que letras tiene la palabra.

FUENTES: [1] [2] [3]

No hay comentarios:

Publicar un comentario