La máquina Enigma y la seguridad informática
Acaba de cumplirse el aniversario de un hecho no excesivamente conocido pero que posiblemente influyó como pocos otros en el desenlace de la segunda guerra mundial: El 9 de Mayo de 1941 el destructor británico HMS Bulldog interceptó en aguas al sur de Islandia al submarino alemán U-110, que había sufrido una grave avería; pudo capturar sus libros de cifra… y su máquina de cifrado/descifrado “Enigma“. Posteriormente el Unterseeboot 110 se hundió; los alemanes asumieron que se había llevado sus secretos al fondo del mar, lo que hizo posible mantener la “operación Primrose” como uno de los mayores secretos de la guerra1.
La máquina Enigma era una pesadilla para los ejercitos aliados y un verdadero prodigio tecnológico para su época. La inventaron dos marinos holandeses en 1915 y la patentó Arthur Scherbiusen, un empresario alemán, en 1918. El modelo de Scherbiusen era relativamente sencillo y estaba dirigido al cifrado de correspondencia comercial o bancaria. En 1924 los ejércitos alemanes diseñaron una versión más sofisticada y empezaron a utilizarla. Llegada la Segunda Guerra Mundial el modelo más habitual era el utilizado por la Wehrmacht, y existía también una versión naval (denominada “tiburón” por los aliados), empleada por los buques de la Kriegsmarine para la comunicación entre ellos y con tierra, que añadía alguna complicación adicional2 (esta versión naval de cuatro rotores es la que aparece en la imagen superior y que hemos esquematizado en la de más abajo; pueden verse claramente en la parte superior de la máquina, y están señalados con el nº 1 en el esquema). Por lo tanto no es del todo correcto hablar de “la” máquina Enigma, pues los ejércitos del Eje utilizaron diferentes versiones, de complejidad creciente, a lo largo de la guerra.
Todas se basaban en el mismo principio: un conjunto de dispositivos electromecánicos activados por un teclado (nº 3 en el esquema). Este teclado enviaba una señal a tres rotores independientes, el corazón del sistema, cuyas posiciones determinaban cómo sería codificada cada letra; tras aplicarse el algoritmo se encendía un piloto luminoso que indicaba el resultado (la letra cifrada)3. También los pilotos luminosos pueden distinguirse fácilmente, entre el teclado y los rotores y señalados con el nº 2.
La fortaleza del sistema estribaba en la enorme cantidad de maneras en que se podía configurar la máquina:
- Los tres rotores de la máquina de la Wehrmacht se escogían de un grupo de cinco, y además podían intercambiarse entre sí; cada uno de ellos podía ser ubicado en una de veintiséis posiciones iniciales diferentes (indicadas por unas letras): Tenían más de un millón de configuraciones iniciales diferentes, número que aumentó posteriormente con la aparición de las máquinas de cuatro rotores.
- Pero además de estas conmutaciones se podían modificar manualmente unas conexiones eléctricas (en la parte anterior de la máquina, nº 4 de nuestro esquema) que reasignaban unas posiciones del teclado a otras; cuando en Enero de 1939 se volvió a modificar el diseño de la máquina, aumentando de seis a 10 estas posibles conexiones, Enigma tenía mas de 159 billones de configuraciones posibles.
- Por si fuera poco, la orientación de los rotores cambiaba continuamente: se indicaba una posición inicial, pero giraban cada vez que se transmitía una letra, modificando la configuración de la máquina (y con ella la codificación) para la siguiente. Por ejemplo, la palabra PAPA podría cifrarse como HJGT: tanto la “P” como la “A” se envían dos veces, pero son cifradas de forma diferente. En los modelos más tardíos la forma en la que los rotores giraban entre letra y letra también podía modificarse y también formaba parte de la clave acordada.
Primrose fue de gran ayuda para entender cómo funcionaba Enigma, pero no era suficiente: la máquina estaba diseñada para ser segura incluso en el caso de que los detalles constructivos cayesen en manos del enemigo (pese a lo cual los alemanes hicieron todo lo posible para evitar que eso sucediera). Se ha calculado que sin conocer los detalles de su cableado interno el número total de combinaciones posibles es de aproximadamente 10114 (una clave de 380 bits); conociéndolos esta cifra se reduce a aproximadamente 1023 (76 bits). Estos números hacían prácticamente imposible el descifrado por un ataque de fuerza bruta; aún hoy lo hacen.
Uno de los inconvenientes del sistema, y de todos de los de clave compartida, es que el receptor debe conocer de antemano la utilizada por el emisor, lo que añade una complejidad (y un riesgo) adicional al conjunto del proceso: el de gestionar dichas claves secretas. Las configuraciones diarias se publicaban en libros mensuales, evidentemente de circulación absolutamente controlada y restringida4. Además el hecho de enviar cada día miles de mensajes, millones de letras, utilizando la misma clave podía facilitar su análisis y por lo tanto suponía una debilidad. Es por eso que los alemanes tomaron la sabia medida de transmitir una “clave de mensaje” propia para cada uno, que sólo afectaba a la posición de los rotores (p. ej., EPR); esta “clave de mensaje” se enviaba al principio de cada comunicación utilizando la clave del día (y se repetía dos veces: EPREPR, lo que en la máquina de destino podía aparecer como DFTKDE); el resto del mensaje la utilizaba.
Pero la repetición es uno de los principales enemigos de la seguridad, y en 1932 el servicio de inteligencia Polaco5 desarrolló un método (extremadamente tedioso) que permitía descifrar una buena parte de los criptogramas; resulta obligatorio mencionar aquí el brillante trabajo de Hans-Thilo Schmidt. El sistema fue complementado en 1938 con la utilización de “bombas criptológicas”, unos dispositivos electromecánicos que automatizaban la ardua tarea de seleccionar una de las (105.456) combinaciones aún posibles tras el análisis inicial. Pero tras los cambios de diseño y procedimiento de 1939, cuando se añadieron nuevos rotores y otras complicaciones que aumentaban el número de combinaciones, se dificultó enormemente el criptoanálisis – ya suficientemente complejo. Los polacos, desmoralizados, deciden entonces compartir su experiencia con franceses y británicos, que hasta ese momento habían considerado que Enigma era indescifrable.
Los franceses no están interesados (siguen sin creer posible conseguir resultados prácticos), pero los súbditos de Su Graciosa Majestad no sólo recogen el pañuelo sino que además conceden al proyecto la máxima prioridad. Se crea un centro específico dedicado al análisis de las cifras alemanas (el mítico Bletchley Park, hoy convertido en museo) y se involucra a algunas de las mentes más poderosas del siglo XX: entre otros ni más ni menos que a Alan Turing (que pasa a ser responsable de la “cabaña 8“, especializada en la “Enigma naval”) y a Gordon Welchman, (responsable de la “cabaña 6“).
En 1940 los servicios británicos ya eran capaz de descifrar una buena parte de los mensajes radiográficos alemanes; la información que de ellos se obtenía recibía el nombre clave “ULTRA“. Este avance permitía a los aliados anticipar los grandes movimientos de los alemanes y calibrar las reacciones de estos a su actividad. Sin embargo no era posible actuar siempre en función de ULTRA (era necesario permitir ataques que se conocían de antemano y hubieran podido ser evitados) o los alemanes habrían sospechado que sus comunicaciones estaban siendo interceptadas. Este es, quizás, uno de los aspectos más curiosos e interesantes de toda esta historia; Bletchley Park aplicaba algoritmos matemáticos para determinar cuál era el nivel máximo de “reacción” que los nazis podrían considerar aceptable, y se evaluaban las posibles respuestas caso por caso.
La guerra avanzaba. Las máquinas Enigma incorporaban mejoras pero en la mansión de Buckinghamshire se trabajaba aún más deprisa. Bajo la coordinación de Turing se perfeccionan las “bombas” electromecánicas – que posteriormente se sustituyen por un sistema puramente electrónico denominado Colossus…
… Y con Colossus ha nacido el primer ordenador de la historia6 – que, como puede verse en la foto (sólo una vista parcial) no era precisamente un “portátil”. Colossus ataca su primer mensaje cifrado el 5 de febrero de 1944.

ULTRA y Colossus tuvieron un valor excepcional en la preparación del día D (6 de Junio de 1944), al permitir a los aliados evaluar si el Eje aceptaba como válida la desinformación proporcionada o sospechaba de los planes reales. ULTRA y Colossus desempeñaron un papel clave en la derrota de Hitler.
Al fin Turing consigue descifrar los criptogramas navales, y en 1945 los aliados eran capaces de descifrar prácticamente todo el tráfico de mensajes alemán en un plazo de 24/48 horas y sin que los ejércitos de Hitler lo sospechasen. Tras la guerra se ha sabido que los expertos alemanes eran conscientes de que el sistema Enigma era vulnerable, incluso que conocían cuáles eran sus debilidades más llamativas; pero estaban convencidos de que nadie estaría dispuesto a dedicar la inmensa cantidad de tiempo y recursos que harían falta para conseguir romperlo.
Churchill lo estuvo. Quizás estos expertos deberían haberle prestado un poco más de atención cuando (en una memorable intervención ante los Comunes, 1940) anunció que nunca se rendiría:
“We shall not flag nor fail. We shall go on to the end. We shall fight in France; we shall fight on the seas and oceans; we shall fight with growing confidence and growing strength in the air. We shall defend our island whatever the cost may be; we shall fight on the beaches, we shall fight on the landing grounds, we shall fight in the fields and in the streets; we shall fight on the hills… We shall never surrender!”
“And even if, which I do not for the moment believe, this island or a large part of it were subjugated and starving, then our empire beyond the seas, armed and guarded by the British Fleet, will carry on the struggle until in God’s good time the New World, with all its power and might, sets forth to the liberation and rescue of the Old”.
¿Cómo se consiguió? – Es una historia larga de contar, pero muy resumidamente podemos destacar cuatro factores:
- El fundamental y sine qua non fue el trabajo de un buen número de personas brillantísimas que elevaron el criptoanálisis a cotas intelectualmente difíciles de imaginar. Nos sentimos obligados a repetir los nombres de Alan Turing, Hans-Thilo Schmidt y Gordon Welchman; pero hay muchos más: Marian Rejewsky, Hugh Alexander, Tommy Flowers… Honor y gloria a todos ellos7.
- El apoyo prestado por las instituciones (primero polacas, luego británicas) y por el mismísimo Churchill, que además consiguió hacer de Bletchley Park un modelo de eficiencia.
- El intenso trabajo de inteligencia y espionaje de los aliados, que permitió éxitos como la “operación Primrose”.
- Algunos problemas de seguridad por parte de los alemanes, especialmente de los operadores de las máquinas – que en ocasiones omitían algunos procedimientos. Decíamos antes que la repetición es uno de los principales enemigos de la seguridad… y las repeticiones fueron bien aprovechadas por los analistas matemáticos de Bletchley Park: Sin entrar en detalles, el hecho de que muchos mensajes repitieran textos o códigos8 sirvió como punto débil en el que introducir la palanca de la brillantez matemática.
O sea: que hace 70 años uno de los principales problemas de seguridad de los sistemas informáticos era el que se situaba entre el teclado y la silla.
Exactamente como hoy.
Quod erat demostratum.
¿Más información?
Existe muchísima información adicional relacionada con la máquina Enigma y podría crearse un blog entero dedicado al tema – pero yo lo dejaré aquí. Y por lo general es interesante y entretenida, pues la historia completa combina elementos de espionaje, historia, matemáticas… sirviendo de escenario ideal para juegos, obras de teatro, libros, películas… De todo hay; sólo por destacar algunas mencionaremos:
- La novela “Enigma
” (Richard Harris, 1996) se desarrolla en Bletchley Park. En ella se basa la película del mismo título (2001) dirigida por Michael Apted y protagonizada por Kate Winslet y Dougray Scott. La película es interesante pero menos rigurosa con la realidad histórica que el libro – y ambas omiten el ingente trabajo previo de los polacos.
- Uno de los hilos narrativos de Cryptonomicon
, la novela de culto de Neal Stephenson, trata sobre los intentos de “reventar” el cifrado Enigma; tampoco destaca su fidelidad histórica.
- El libro “The Code Book
“, de Simon Singh, dedica varios capítulos a Enigma. Y es fiel a los hechos, claro y entretenido – como todo lo escrito por Singh9.
- La película U-571 (año 2000, dirigida por J. Mostow e interpretada por Matthew McConaughey) se basa en la “operación Primrose” – aunque la “aliña” con unas buenas dosis de imaginación.
- Y por supuesto Internet, donde están todos los datos imaginables en relación con la máquina Enigma, incluyendo varios simuladores; sólo hay que buscarla. La página w1tp.com/enigma, sin ser especialmente atractiva en su diseño, contiene gran cantidad de información y fotos de los diferentes modelos y de sus componentes, incluso un vídeo de 14 minutos10.
- Por ejemplo, Churchill no informó a Roosevelt de los detalles de la operación (y de que tenían una máquina Enigma en su poder) hasta siete meses después. ↩
- Fundamentalmente un cuarto rotor; su entrada en funcionamiento dio lugar a una gran crisis en los servicios británicos de Bletchley Park, que en ese momento ya eran capaces de descifrar con relativo éxito los mensajes de modelos más sencillos y se encontraron con un absoluto “apagón informativo”. ↩
- Este mecanismo “letra a letra” hacía casi imprescindible que la máquina fuese manejada por dos operadores: uno tecleando el texto en claro y otro “leyendo” los pilotos luminosos y anotando el criptograma; algunos modelos posteriores incorporaron una impresora rudimentaria. ↩
- ¡Impresos en tinta soluble en agua! ↩
- Concretamente su Biuro Szyfrów, u oficina de cifrado. ↩
- Desde luego el primer “dispositivo de cálculo, electrónico y programable” de la historia. ↩
- Especialmente a Turing, que al terminar la guerra fue perseguido y humillado por su homosexualidad y se suicidó en 1954. Tenía 42 años. ↩
- Por ejemplo, la repetición sistemática del “código de mensaje”, el hecho de que muchos operadores eligieran tres letras sucesivas del teclado en vez de tres aleatorias, la tendencia de algunos a repetir bloques de letras (¿las iniciales de las novias?), los muchos mensajes que terminaban con “Heil Hitler!” o que incluían determinados términos (informes meteorológicos, “Sin novedad”…) ↩
- Disponible en español como “Los códigos secretos”, Ediciones Debate. ↩
- Algunas de las imágenes que ilustran esta entrada están tomadas de allí. Que conste. ↩
![[del.icio.us]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/delicious.png)
![[Digg]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/digg.png)
![[Google]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/google.png)
![[LinkedIn]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/linkedin.png)
![[StumbleUpon]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/stumbleupon.png)
![[Windows Live]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/windowslive.png)
![[Yahoo!]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/yahoo.png)
![[Email]](http://blog.intuicionlogica.com/wp-content/plugins/bookmarkify/email.png)
No hay comentarios
Rompa el hielo dejando el primero.