Los Lorenz SZ40 , SZ42a y SZ42b fueron máquinas de cifrado de flujo de rotor alemanas utilizadas por el ejército alemán durante la Segunda Guerra Mundial . Fueron desarrollados por C. Lorenz AG en Berlín . El nombre del modelo SZ se deriva de Schlüssel-Zusatz , que significa adjunto de cifrado . Los instrumentos implementaron un cifrado de flujo Vernam .
Los criptoanalistas británicos , que se referían al tráfico cifrado del teletipo alemán como Fish , llamaron a la máquina y a su tráfico Tunny (que significa atún) y dedujeron su estructura lógica tres años antes de ver una máquina así. [1]
Las máquinas SZ eran accesorios en línea para los teleimpresores estándar . En junio de 1941 se inició un enlace experimental con máquinas SZ40. Las máquinas SZ42 mejoradas se empezaron a utilizar de forma sustancial a partir de mediados de 1942 para comunicaciones de alto nivel entre el Alto Mando alemán en Wünsdorf, cerca de Berlín, y los Comandos del Ejército en toda la Europa ocupada. [2] La SZ42A más avanzada entró en uso rutinario en febrero de 1943 y la SZ42B en junio de 1944. [3]
Para este tráfico se utilizó radioteletipo (RTTY) en lugar de circuitos de línea terrestre. [4] Estos mensajes de modulación por desplazamiento de frecuencia de audio no Morse (NoMo) fueron recogidos por las estaciones Y británicas en Knockholt en Kent, su estación remota en Higher Wincombe [5] en Wiltshire y en Denmark Hill en el sur de Londres, y enviados a la Escuela de Códigos y Cifrado del Gobierno en Bletchley Park (BP). Algunos fueron descifrados utilizando métodos manuales antes de que el proceso fuera parcialmente automatizado, primero con máquinas Robinson y luego con las computadoras Colossus . [6] Los mensajes descifrados de Lorenz hicieron una de las contribuciones más significativas a la inteligencia militar británica Ultra y a la victoria aliada en Europa, debido a la naturaleza estratégica de alto nivel de la información que se obtuvo de los descifrados de Lorenz. [7]
Después de la Segunda Guerra Mundial, un grupo de criptoanalistas británicos y estadounidenses entró en Alemania con las tropas de primera línea para capturar los documentos, la tecnología y el personal de las diversas organizaciones de inteligencia de señales alemanas antes de que estos secretos pudieran ser destruidos, saqueados o capturados por los soviéticos. Se les llamó el Comité de Inteligencia de Objetivos : TICOM. [8] [9]
Los criptógrafos alemanes capturados, Drs. Huttenhain y Fricke, les contaron sobre el desarrollo del SZ40 y el SZ42 a/b. [10] El diseño era para una máquina que pudiera conectarse a cualquier teleimpresora. La primera máquina se denominó SZ40 (tipo antiguo) y tenía diez rotores con levas fijas. Se reconoció que la seguridad de esta máquina no era muy buena. El SZ40 definitivo tenía doce rotores con levas móviles. Los cinco rotores más a la derecha se llamaban Spaltencäsar, pero Bill Tutte los llamó ruedas Chi . Los cinco rotores más a la izquierda se llamaron Springcäsar , ruedas Psi para Tutte. Los dos rotores Vorgeleger del medio fueron llamados Mu o ruedas de motor por Tutte.
Los cinco bits de datos de cada carácter telegráfico codificado en ITA2 fueron procesados primero por las cinco ruedas chi y luego por las cinco ruedas psi . Las levas de las ruedas invertían el valor de un bit si estaba en la posición elevada, pero lo dejaban sin cambios si estaba en la posición baja.
Gilbert Vernam fue un ingeniero de investigación de AT&T Bell Labs que, en 1917, inventó un sistema de cifrado que utilizaba la función booleana "o exclusivo" (XOR) , simbolizada por ⊕. [11] Esto está representado por la siguiente " tabla de verdad ", donde 1 representa "verdadero" y 0 representa "falso".
Otros nombres para esta función son: No igual (NEQ), suma módulo 2 (sin 'acarreo') y resta módulo 2 (sin 'tomar prestado').
El cifrado de Vernam es un algoritmo de clave simétrica , es decir, se utiliza la misma clave tanto para cifrar el texto simple para producir el texto cifrado como para descifrar el texto cifrado para producir el texto simple original:
y:
Esto produce la reciprocidad esencial que permite que la misma máquina con la misma configuración se utilice tanto para el cifrado como para el descifrado.
La idea de Vernam era utilizar la práctica telegráfica convencional con una cinta de papel del texto simple combinada con una cinta de papel de la clave. Cada cinta de clave habría sido única (una cinta de un solo uso ), pero generar y distribuir tales cintas presentaba considerables dificultades prácticas. En la década de 1920, cuatro hombres en diferentes países inventaron máquinas de cifrado de rotor para producir un flujo de claves que actuara en lugar de una cinta. [12] La Lorenz SZ40/42 de 1940 fue una de ellas. [13]
El funcionamiento lógico del sistema Tunny fue elaborado mucho antes de que los criptoanalistas de Bletchley Park vieran una de las máquinas, lo que recién ocurrió en 1945, cuando Alemania se estaba rindiendo ante los Aliados. [14]
La máquina SZ servía como accesorio en línea para un teleimpresor Lorenz estándar. Tenía una base de metal de 19 pulgadas × 15,5 pulgadas (48 cm × 39 cm) y una altura de 17 pulgadas (43 cm). [13] Los caracteres del teleimpresor consistían en cinco bits de datos (o "impulsos"), codificados en el Alfabeto Telegráfico Internacional N.º 2 (ITA2) . La máquina generaba un flujo de caracteres pseudoaleatorios . Estos formaban la clave que se combinaba con los caracteres de entrada de texto simple para formar los caracteres de salida de texto cifrado. La combinación se realizaba mediante el proceso XOR (o adición módulo 2). [16]
El flujo de claves constaba de dos partes componentes que se combinaban mediante la operación XOR. Estas se generaban mediante dos conjuntos de cinco ruedas que giraban juntas. El criptoanalista de Bletchley Park Bill Tutte las llamó ruedas χ (" chi ") y ruedas ψ (" psi "). Cada rueda tenía una serie de levas (o "pines") alrededor de su circunferencia. Estas levas podían colocarse en una posición elevada (activa) o bajada (inactiva). En la posición elevada generaban un "1" que invertía el valor de un bit, en la posición baja generaban un "0" que dejaba el bit sin cambios. [17] La cantidad de levas en cada rueda era igual a la cantidad de impulsos necesarios para hacer que completaran una rotación completa. Todos estos números son coprimos entre sí, lo que da el tiempo más largo posible antes de que se repitiera el patrón. Este es el producto de la cantidad de posiciones de las ruedas. Para el conjunto de ruedas χ fue 41 × 31 × 29 × 26 × 23 = 22 041 682 y para las ruedas ψ fue 43 × 47 × 51 × 53 × 59 = 322 303 017. El número de formas diferentes en que se podían configurar las doce ruedas fue1.603 × 10 19 es decir, 16 billones de billones.
El conjunto de cinco ruedas χ se movía en una posición después de que cada carácter había sido codificado. Las cinco ruedas ψ , sin embargo, avanzaban de forma intermitente. Su movimiento era controlado por las dos ruedas μ (" mu ") o "motoras" en serie. [18] La rueda motora μ 61 del SZ40 avanzaba cada vez, pero la rueda motora μ 37 avanzaba solo si la primera rueda motora era un "1". Las ruedas ψ luego avanzaban solo si la segunda rueda motora era un "1". [19] Los modelos SZ42A y SZ42B añadieron complejidad adicional a este mecanismo, conocido en Bletchley Park como Limitaciones . Dos de las cuatro limitaciones diferentes involucraban características del texto simple y también lo eran los autoclaves . [20]
El flujo de claves generado por las máquinas SZ tenía un componente χ y un componente ψ . Simbólicamente, la clave que se combinaba con el texto simple para el cifrado y con el texto cifrado para el descifrado se puede representar de la siguiente manera. [18]
Sin embargo, para indicar que el componente ψ no cambiaba a menudo de un carácter a otro, se utilizó el término psi extendido , simbolizado como: Ψ' . Por lo tanto, el cifrado se puede representar simbólicamente como:
y descifrando como:
Cada enlace "Tunny" tenía cuatro máquinas SZ con un teleimpresor transmisor y otro receptor en cada extremo. Para que el cifrado y el descifrado funcionaran, las máquinas transmisoras y receptoras debían configurarse de manera idéntica. Esto tenía dos componentes: establecer los patrones de levas en las ruedas y girar las ruedas para comenzar a cifrar un mensaje. Los ajustes de las levas se cambiaron con menos frecuencia antes del verano de 1944. Las levas de las ruedas ψ inicialmente solo se cambiaban trimestralmente, pero luego mensualmente, las ruedas χ se cambiaban mensualmente, pero los patrones de las ruedas del motor se cambiaban diariamente. A partir del 1 de agosto de 1944, todos los patrones de las ruedas se cambiaron diariamente. [21]
Inicialmente, los ajustes de las ruedas para un mensaje se enviaban al receptor por medio de un indicador de 12 letras enviadas sin cifrar, las letras se asociaban con las posiciones de las ruedas en un libro. En octubre de 1942, esto se cambió al uso de un libro de ajustes de un solo uso en lo que se conocía como el libro QEP. Los dos últimos dígitos de la entrada del libro QEP se enviaban para que el operador receptor los buscara en su copia del libro QEP y ajustara las ruedas de su máquina. Cada libro contenía cien o más combinaciones. Una vez que se habían utilizado todas las combinaciones en un libro QEP, se reemplazaba por uno nuevo. [22] Los ajustes de los mensajes nunca deberían haberse reutilizado, pero en ocasiones lo fueron, proporcionando una "profundidad" que podía ser utilizada por un criptoanalista. [23]
Como era una práctica telegráfica normal, los mensajes de cualquier longitud se introducían en un teleimpresor con un perforador de cinta de papel . La secuencia típica de operaciones era que el operador emisor perforaba el mensaje, se ponía en contacto con el operador receptor, utilizaba el interruptor EIN/AUS de la máquina SZ para conectarla al circuito y luego pasaba la cinta por el lector. [13] En el extremo receptor, el operador conectaba de forma similar su máquina SZ al circuito y la salida se imprimía en una cinta adhesiva continua. Como esta era la práctica, el texto simple no contenía los caracteres de "retorno de carro", "avance de línea" o el carácter nulo (cinta en blanco, 00000). [4]
Los criptógrafos británicos de Bletchley Park habían deducido el funcionamiento de la máquina en enero de 1942 sin haber visto nunca una máquina de Lorenz, una hazaña que fue posible gracias a errores cometidos por operadores alemanes.
El tráfico de Tunny era conocido por los operadores de la Estación Y, acostumbrados a escuchar transmisiones en código Morse, como "música nueva". Su interceptación se concentró originalmente en la Estación Y del Ministerio de Relaciones Exteriores operada por la Policía Metropolitana en Denmark Hill en Camberwell , Londres. Pero debido a la falta de recursos en ese momento (alrededor de 1941), se le dio una baja prioridad. Una nueva Estación Y, Knockholt en Kent , se construyó más tarde específicamente para interceptar el tráfico de Tunny para que los mensajes pudieran ser grabados de manera eficiente y enviados a Bletchley Park. [24] El jefe de la estación Y, Harold Kenworthy, pasó a dirigir Knockholt. Más tarde fue ascendido a director del Establecimiento de Investigación y Desarrollo del Ministerio de Relaciones Exteriores (FORDE).
El 30 de agosto de 1941 se transmitió un mensaje de unos 4.000 caracteres desde Atenas a Viena . Sin embargo, el mensaje no fue recibido correctamente en el otro extremo. El operador receptor envió entonces una solicitud sin codificar al remitente pidiendo que se retransmitiera el mensaje. Esto permitió a los descifradores saber lo que estaba sucediendo.
El remitente retransmitió el mensaje pero, lo que es más grave, no modificó la configuración de la clave original "HQIBPEXEZMUG". Se trataba de una práctica prohibida; utilizar una clave diferente para cada mensaje diferente es fundamental para la seguridad de cualquier cifrado de flujo. Esto no habría importado si los dos mensajes hubieran sido idénticos, pero la segunda vez el operador realizó una serie de pequeñas modificaciones en el mensaje, como el uso de abreviaturas, lo que hizo que el segundo mensaje fuera algo más corto.
A partir de estos dos textos cifrados relacionados, conocidos por los criptoanalistas como " profundidad" , el veterano criptoanalista Brigadier John Tiltman, de la Sección de Investigación, descifró los dos textos sin formato y, por lo tanto, el flujo de claves . Pero ni siquiera los casi 4.000 caracteres de clave fueron suficientes para que el equipo descubriera cómo se estaba generando el flujo; era demasiado complejo y aparentemente aleatorio.
Después de tres meses, la Sección de Investigación encargó la tarea al matemático Bill Tutte , quien aplicó una técnica que le habían enseñado en su formación criptográfica, consistente en escribir la clave a mano y buscar repeticiones. Tutte hizo esto con el teletipo original de 5 bits, el Alfabeto Telegráfico Internacional Nº 2 (ITA2) (que era un desarrollo del código Baudot (ITA1) ), que lo llevó a su avance inicial al reconocer una repetición de 41 bits. [14] [25] Durante los dos meses siguientes, hasta enero de 1942, Tutte y sus colegas elaboraron la estructura lógica completa de la máquina de cifrado. Esta notable pieza de ingeniería inversa fue descrita más tarde como "una de las mayores hazañas intelectuales de la Segunda Guerra Mundial". [14]
Después de este descifrado de Tunny, se creó un equipo especial de descifradores de códigos bajo el mando de Ralph Tester , la mayoría inicialmente transferidos desde la Cabaña 8 de Alan Turing . El equipo pasó a ser conocido como Testery . Realizó la mayor parte del trabajo posterior de descifrado de mensajes de Tunny, pero recibió la ayuda de máquinas en la sección complementaria bajo el mando de Max Newman , conocida como Newmanry . [26]
Los británicos construyeron varias máquinas complejas para ayudar en el ataque a Tunny. La primera fue la Tunny británica . [27] [28] Esta máquina fue diseñada por Bletchley Park, basándose en el trabajo de ingeniería inversa realizado por el equipo de Tiltman en Testery, para emular la máquina de cifrado de Lorenz. Cuando Testery encontró la configuración de la rueda dentada, se configuró y puso en funcionamiento la máquina Tunny para que se pudieran imprimir los mensajes.
Para Newmanry se construyó una familia de máquinas conocidas como " Robinsons ". Estas máquinas utilizaban dos cintas de papel , junto con circuitos lógicos, para encontrar los ajustes de las ruedas dentadas χ de la máquina de Lorenz. [29] Las Robinsons tenían grandes problemas para mantener sincronizadas las dos cintas de papel y eran relativamente lentas, ya que solo leían 2000 caracteres por segundo.
La máquina más importante fue la Colossus, de la que diez estaban en uso al final de la guerra; la primera entró en funcionamiento en diciembre de 1943. Aunque no eran totalmente programables, eran mucho más eficientes que sus predecesoras, lo que representaba avances en las computadoras digitales electrónicas . Las computadoras Colossus fueron desarrolladas y construidas por Tommy Flowers , de la Estación de Investigación de Correos de Dollis Hill , utilizando algoritmos desarrollados por Bill Tutte y su equipo de matemáticos. [30] Colossus demostró ser eficiente y rápida frente a la máquina de cifrado por teleimpresora en línea de doce rotores Lorenz SZ42.
Algunas figuras influyentes tenían dudas sobre su propuesta de diseño para la máquina de descifrado, y Flowers prosiguió con el proyecto mientras lo financiaba parcialmente él mismo. [31] [32] Al igual que el posterior ENIAC de 1946, Colossus no tenía un programa almacenado y se programaba a través de tableros de conexiones y cables puente. Era más rápido, más confiable y más capaz que los Robinson, por lo que aceleraba el proceso de encontrar los ajustes de la rueda de pines χ de Lorenz . Dado que Colossus generaba las supuestas claves electrónicamente, solo tenía que leer una cinta. Lo hizo con un lector óptico que, a 5000 caracteres por segundo, se manejaba mucho más rápido que el de los Robinson y significaba que la cinta viajaba a casi 30 millas por hora (48 km/h). [33] Esto, y el cronometraje de la electrónica a partir de los orificios de las ruedas dentadas de la cinta de papel de lectura óptica, eliminaron por completo los problemas de sincronización de los Robinson. La dirección de Bletchley Park, que se había mostrado escéptica respecto de la capacidad de Flowers para fabricar un dispositivo que funcionara, inmediatamente comenzó a presionarlo para que construyera otro. Después del final de la guerra, las máquinas Colossus fueron desmanteladas por orden de Winston Churchill, [34] pero el GCHQ conservó dos de ellas. [35]
Al final de la guerra, el Testery había crecido hasta contar con nueve criptógrafos y 24 chicas ATS (como se llamaba entonces a las mujeres que cumplían esa función), con una plantilla total de 118 personas, organizadas en tres turnos que trabajaban las 24 horas del día.
Las máquinas de cifrado de Lorenz se construyeron en pequeñas cantidades; hoy en día sólo sobreviven unas pocas en los museos.
En Alemania, se pueden ver ejemplos en el Heinz Nixdorf MuseumsForum , un museo de informática en Paderborn , y en el Deutsches Museum , un museo de ciencia y tecnología en Múnich. [36] Otras dos máquinas de Lorenz se exhiben tanto en Bletchley Park como en el Museo Nacional de Informática en el Reino Unido. Otro ejemplo se exhibe en el Museo Criptológico Nacional en Maryland, Estados Unidos.
John Whetter y John Pether, voluntarios del Museo Nacional de Computación, compraron un teleimpresor Lorenz en eBay por £ 9,50 que habían recuperado de un cobertizo de jardín en Southend-on-Sea . [37] [38] Se descubrió que era la versión militar de la Segunda Guerra Mundial, se restauró y en mayo de 2016 se instaló junto a la máquina SZ42 en la galería "Tunny" del museo.