stringtranslate.com

Máquina de rotor

Una serie de tres rotores de una máquina Enigma, utilizada por Alemania durante la Segunda Guerra Mundial.
Vista en despiece de un rotor de máquina Enigma: 1-Anillo con muescas, 2-Punto que marca la posición del contacto "A", 3-"Neumático" o anillo del alfabeto, 4-Contactos de placa eléctrica, 5-Conexiones de cables, 6-Contactos de pasador con resorte, 7-Pasador de ajuste de anillo con resorte, 8-Cubo, a través del cual encaja el eje central, 9-Rueda de dedos, 10-Mecanismo de trinquete

En criptografía , una máquina de rotor es un dispositivo de cifrado de flujo electromecánico que se utiliza para cifrar y descifrar mensajes. Las máquinas de rotor fueron la tecnología criptográfica de vanguardia durante gran parte del siglo XX; su uso se extendió entre los años 1920 y 1970. El ejemplo más famoso es la máquina Enigma alemana , cuyo resultado fue descifrado por los aliados durante la Segunda Guerra Mundial, produciendo información de inteligencia cuyo nombre en código era Ultra .

Descripción

El componente principal de una máquina de rotor es un conjunto de rotores , también llamados ruedas o tambores , que son discos giratorios con una serie de contactos eléctricos a cada lado. El cableado entre los contactos implementa una sustitución fija de letras, reemplazándolas de alguna manera compleja. Por sí solo, esto ofrecería poca seguridad; sin embargo, antes o después de cifrar cada letra, los rotores avanzan posiciones, cambiando la sustitución. De este modo, una máquina de rotor produce un cifrado de sustitución polialfabético complejo , que cambia con cada pulsación de tecla.

Fondo

Rotores de 40 puntas de una máquina fabricada por Tatjana van Vark

En la criptografía clásica , uno de los primeros métodos de cifrado fue el cifrado de sustitución simple , en el que las letras de un mensaje se reemplazaban sistemáticamente utilizando algún esquema secreto. Los cifrados de sustitución monoalfabéticos utilizaban un solo esquema de reemplazo, a veces denominado "alfabeto", que se podía descifrar fácilmente, por ejemplo, mediante el uso del análisis de frecuencia . Algo más seguros eran los esquemas que implicaban múltiples alfabetos, los cifrados polialfabéticos . Debido a que estos esquemas se implementaban a mano, solo se podían usar unos pocos alfabetos diferentes; cualquier cosa más compleja sería poco práctica. Sin embargo, el uso de solo unos pocos alfabetos dejaba a los cifrados vulnerables a los ataques. La invención de las máquinas de rotor mecanizó el cifrado polialfabético, proporcionando una forma práctica de utilizar una cantidad mucho mayor de alfabetos.

La primera técnica criptoanalítica fue el análisis de frecuencias , en el que se podían utilizar patrones de letras únicos para cada idioma para descubrir información sobre el alfabeto de sustitución en uso en un cifrado de sustitución monoalfabético . Por ejemplo, en inglés, las letras de texto simple E, T, A, O, I, N y S suelen ser fáciles de identificar en el texto cifrado sobre la base de que, dado que son muy frecuentes, sus letras de texto cifrado correspondientes también lo serán. Además, las combinaciones de bigramas como NG, ST y otras también son muy frecuentes, mientras que otras son realmente raras (Q seguida de cualquier otra cosa que no sea U, por ejemplo). El análisis de frecuencias más simple se basa en que siempre se sustituye una letra de texto simple por una letra de texto simple en el cifrado: si este no es el caso, descifrar el mensaje es más difícil. Durante muchos años, los criptógrafos intentaron ocultar las frecuencias reveladoras utilizando varias sustituciones diferentes para letras comunes, pero esta técnica no pudo ocultar por completo los patrones en las sustituciones de letras de texto simple. Hacia el siglo XVI, estos esquemas fueron ampliamente desmantelados.

A mediados del siglo XV, Alberti inventó una nueva técnica , conocida generalmente como cifrados polialfabéticos , que reconocía la virtud de usar más de un solo alfabeto de sustitución; también inventó una técnica simple para "crear" una multitud de patrones de sustitución para usar en un mensaje. Dos partes intercambiaban una pequeña cantidad de información (conocida como la clave ) y la usaban para crear muchos alfabetos de sustitución, y tantas sustituciones diferentes para cada letra de texto simple en el transcurso de un solo texto simple. La idea es simple y efectiva, pero resultó más difícil de usar de lo que podría haberse esperado. Muchos cifrados eran solo implementaciones parciales del de Alberti, y por lo tanto eran más fáciles de descifrar de lo que podrían haber sido (por ejemplo, el cifrado de Vigenère ).

No fue hasta la década de 1840 (Babbage) que se conoció una técnica que pudiera descifrar de manera fiable cualquiera de los cifrados polialfabéticos. Su técnica también buscaba patrones repetidos en el texto cifrado , que proporcionan pistas sobre la longitud de la clave. Una vez que se conoce esto, el mensaje se convierte esencialmente en una serie de mensajes, cada uno tan largo como la longitud de la clave, a los que se puede aplicar el análisis de frecuencia normal. Charles Babbage , Friedrich Kasiski y William F. Friedman se encuentran entre los que más hicieron por desarrollar estas técnicas.

Los diseñadores de cifrados intentaron que los usuarios utilizaran una sustitución diferente para cada letra, pero esto normalmente significaba una clave muy larga, lo que era un problema en varios sentidos. Una clave larga tarda más en transmitirse (de forma segura) a las partes que la necesitan, por lo que es más probable que se produzcan errores en la distribución de la clave. Además, muchos usuarios no tienen la paciencia para llevar a cabo evoluciones largas y perfectas para cada letra, y ciertamente no bajo la presión del tiempo o el estrés del campo de batalla. El cifrado "definitivo" de este tipo sería uno en el que se pudiera generar una clave tan "larga" a partir de un patrón simple (idealmente de forma automática), produciendo un cifrado en el que hubiera tantos alfabetos de sustitución que el conteo de frecuencias y los ataques estadísticos fueran efectivamente imposibles. Enigma, y ​​las máquinas de rotor en general, eran justo lo que se necesitaba, ya que eran seriamente polialfabéticas, utilizando un alfabeto de sustitución diferente para cada letra del texto simple, y automáticas, lo que no requería habilidades extraordinarias de sus usuarios. Sus mensajes eran, en general, mucho más difíciles de descifrar que cualquier cifrado anterior.

Mecanización

Es muy fácil crear una máquina que realice sustituciones simples. En un sistema eléctrico con 26 interruptores conectados a 26 bombillas, cualquiera de los interruptores encenderá una de las bombillas. Si cada interruptor se acciona con una tecla en una máquina de escribir y las bombillas están etiquetadas con letras, entonces dicho sistema se puede utilizar para el cifrado eligiendo el cableado entre las teclas y la bombilla: por ejemplo, al escribir la letra A se encenderá la bombilla etiquetada con Q. Sin embargo, el cableado es fijo, lo que proporciona poca seguridad.

Las máquinas de rotor cambian el cableado de interconexión con cada pulsación de tecla. El cableado se coloca dentro de un rotor y luego gira con un engranaje cada vez que se pulsa una letra. Así, si bien pulsar A la primera vez puede generar una Q , la siguiente vez puede generar una J. Cada letra que se pulsa en el teclado incrementa la posición del rotor y se obtiene una nueva sustitución, implementando un cifrado de sustitución polialfabético.

Dependiendo del tamaño del rotor, esto puede ser, o no, más seguro que los cifrados manuales. Si el rotor tiene sólo 26 posiciones, una para cada letra, entonces todos los mensajes tendrán una clave (repetida) de 26 letras de longitud. Aunque la clave en sí (que en su mayoría está oculta en el cableado del rotor) puede no ser conocida, los métodos para atacar este tipo de cifrados no necesitan esa información. Por lo tanto, si bien una máquina de un solo rotor como esta es ciertamente fácil de usar, no es más segura que cualquier otro sistema de cifrado polialfabético parcial.

Pero esto es fácil de corregir. Simplemente apila más rotores uno al lado del otro y engrana con ellos. Después de que el primer rotor gire "por completo", haz que el rotor que está a su lado gire una posición. Ahora tendrías que escribir 26 × 26 = 676 letras (para el alfabeto latino ) antes de que la clave se repita, y aún así solo requiere que comuniques una clave de dos letras/números para configurar las cosas. Si una clave de longitud 676 no es lo suficientemente larga, se puede agregar otro rotor, lo que da como resultado un período de 17,576 letras.

Para que fuera tan fácil de descifrar como de cifrar, algunas máquinas de rotor, entre las que destaca la máquina Enigma , incorporaron un algoritmo de clave simétrica , es decir, al cifrar dos veces con los mismos parámetros se recupera el mensaje original (véase involución ).

Historia

Invención

[ cita requerida ]

El concepto de una máquina de rotor se le ocurrió a varios inventores de forma independiente al mismo tiempo.

En 2003 se supo que los primeros inventores fueron dos oficiales navales holandeses , Theo A. van Hengel (1875-1939) y RPC Spengler (1875-1955) en 1915 (De Leeuw, 2003). Anteriormente, la invención se había atribuido a cuatro inventores que trabajaron de forma independiente y prácticamente al mismo tiempo: Edward Hebern , Arvid Damm , Hugo Koch y Arthur Scherbius .

En Estados Unidos, Edward Hugh Hebern construyó una máquina de rotor con un solo rotor en 1917. Estaba convencido de que se haría rico vendiendo un sistema de este tipo al ejército, la máquina de rotor Hebern , y produjo una serie de máquinas diferentes con uno a cinco rotores. Sin embargo, su éxito fue limitado y se declaró en quiebra en la década de 1920. Vendió una pequeña cantidad de máquinas a la Marina de los EE. UU . en 1931.

En las máquinas de Hebern, los rotores se podían abrir y cambiar el cableado en unos pocos minutos, de modo que un único sistema producido en serie se podía vender a varios usuarios que luego producirían su propia codificación de rotor. El descifrado consistía en sacar el rotor o los rotores y girarlos para invertir el circuito. Sin que Hebern lo supiera, William F. Friedman, del SIS del ejército de los EE. UU. , demostró rápidamente un fallo en el sistema que permitía descifrar los códigos de este y de cualquier máquina con características de diseño similares con suficiente trabajo.

Otro inventor de máquinas de rotor fue el holandés Hugo Koch , que presentó una patente para una máquina de rotor en 1919. Casi al mismo tiempo, en Suecia , Arvid Gerhard Damm inventó y patentó otro diseño de rotor. Sin embargo, la máquina de rotor se hizo famosa gracias a Arthur Scherbius , que presentó una patente para una máquina de rotor en 1918. Más tarde, Scherbius diseñó y comercializó la máquina Enigma .

La máquina Enigma

Una máquina Enigma alemana

El dispositivo de cifrado de rotor más conocido es la máquina Enigma alemana utilizada durante la Segunda Guerra Mundial, de la que existían numerosas variantes.

El modelo estándar de Enigma, Enigma I, utilizaba tres rotores. Al final de la pila de rotores había un disco adicional no giratorio, el "reflector", conectado de manera que la entrada se conectaba eléctricamente a otro contacto del mismo lado y, por lo tanto, se "reflejaba" a través de la pila de tres rotores para producir el texto cifrado .

Cuando se enviaba corriente a la mayoría de las demás máquinas de cifrado de rotores, esta pasaba por los rotores y salía por el otro lado hacia las lámparas. En la Enigma, sin embargo, se "reflejaba" de vuelta a través de los discos antes de llegar a las lámparas. La ventaja de esto era que no era necesario hacer nada en la configuración para descifrar un mensaje; la máquina era "simétrica".

El reflector de la Enigma garantizaba que ninguna letra pudiera ser cifrada como tal, por lo que una A nunca podría volver a convertirse en una A. Esto ayudó a los esfuerzos polacos y, más tarde, británicos por descifrar el código. ( Véase Criptoanálisis de la Enigma .)

Scherbius unió fuerzas con un ingeniero mecánico llamado Ritter y formó Chiffriermaschinen AG en Berlín antes de demostrar Enigma al público en Berna en 1923, y luego en 1924 en el Congreso Postal Mundial en Estocolmo . En 1927, Scherbius compró las patentes de Koch y en 1928 agregaron un tablero de conexiones , esencialmente un cuarto rotor no giratorio que se podía recablear manualmente, en la parte frontal de la máquina. Después de la muerte de Scherbius en 1929, Willi Korn estuvo a cargo del desarrollo técnico posterior de Enigma.

Al igual que otros intentos iniciales de fabricar máquinas de rotor, el Scherbius tuvo un éxito comercial limitado. Sin embargo, las fuerzas armadas alemanas, en parte como respuesta a las revelaciones de que sus códigos habían sido descifrados durante la Primera Guerra Mundial, adoptaron el Enigma para proteger sus comunicaciones. La Reichsmarine adoptó el Enigma en 1926 y el ejército alemán comenzó a utilizar una variante diferente alrededor de 1928.

La Enigma (en varias variantes) era la máquina de rotor que la compañía de Scherbius y su sucesora, Heimsoth & Reinke, suministraron al ejército alemán y a agencias como la organización de seguridad del partido nazi, la SD .

Los polacos descifraron la Enigma del ejército alemán a principios de diciembre de 1932, poco después de que se pusiera en servicio. El 25 de julio de 1939, sólo cinco semanas antes de la invasión de Polonia por Hitler, la Oficina de Cifrado del Estado Mayor polaco compartió sus métodos y equipos de descifrado de la Enigma con los franceses y los británicos como contribución de los polacos a la defensa común contra la Alemania nazi. Dilly Knox ya había descifrado mensajes nacionalistas españoles en una máquina Enigma comercial en 1937 durante la Guerra Civil Española .

Unos meses después, utilizando las técnicas polacas, los británicos comenzaron a leer los códigos Enigma en colaboración con criptólogos de la Oficina de Cifrado Polaca que habían escapado de Polonia, invadida por los alemanes, para llegar a París . Los polacos continuaron descifrando los códigos Enigma del ejército alemán (junto con el tráfico de códigos Enigma de la Luftwaffe ) hasta que el trabajo en la estación PC Bruno en Francia se interrumpió debido a la invasión alemana de mayo-junio de 1940.

Los británicos continuaron descifrando el código Enigma y, con la ayuda eventualmente de los Estados Unidos, extendieron el trabajo al tráfico naval alemán de Enigma (que los polacos habían estado leyendo antes de la guerra), especialmente hacia y desde los submarinos durante la Batalla del Atlántico .

Varias máquinas

El conjunto de rotores de una máquina de rotores Enigma. Los rotores de esta máquina contienen 26 contactos.

Durante la Segunda Guerra Mundial , tanto los alemanes como los aliados desarrollaron máquinas de rotor adicionales. Los alemanes utilizaron las máquinas Lorenz SZ 40/42 y Siemens y Halske T52 para cifrar el tráfico de teleimpresoras que utilizaba el código Baudot ; este tráfico se conocía como Fish para los aliados. Los aliados desarrollaron el Typex (británico) y el SIGABA (estadounidense). Durante la guerra, los suizos comenzaron a desarrollar una mejora de Enigma que se convirtió en la máquina NEMA que se puso en servicio después de la Segunda Guerra Mundial. Hubo incluso una variante desarrollada en Japón de la Enigma en la que los rotores se encontraban en posición horizontal; aparentemente nunca se puso en servicio. La máquina PURPLE japonesa no era una máquina de rotor, ya que estaba construida alrededor de interruptores eléctricos de paso , pero era conceptualmente similar.

Las máquinas de rotores se siguieron utilizando incluso en la era informática. La KL-7 (ADONIS), una máquina de cifrado con 8 rotores, fue ampliamente utilizada por los EE. UU. y sus aliados desde la década de 1950 hasta la de 1980. El último mensaje canadiense cifrado con una KL-7 se envió el 30 de junio de 1983. La Unión Soviética y sus aliados utilizaron una máquina de 10 rotores llamada Fialka hasta bien entrada la década de 1970.

Typex era una máquina de impresión de rotor utilizada por el Reino Unido y su Commonwealth, y estaba basada en las patentes de Enigma.
El SIGCUM estadounidense era un sistema de cinco rotores utilizado para cifrar el tráfico de teletipo.

En 2002, la holandesa Tatjana van Vark construyó una máquina de rotor única llamada Cryptograph . Este dispositivo inusual está inspirado en Enigma, pero utiliza rotores de 40 puntas, que permiten introducir letras, números y algunos signos de puntuación; cada rotor contiene 509 partes.

En el comando crypt , que formaba parte de los primeros sistemas operativos UNIX , se utilizó una implementación de software de una máquina de rotor . Fue uno de los primeros programas de software que infringió las normas de exportación de Estados Unidos , que clasificaban las implementaciones criptográficas como municiones.

Lista de máquinas de rotor

Referencias

Enlaces externos