stringtranslate.com

Contador kilométrico de bicicleta

Ciclómetro , ideado a mediados de la década de 1930 por Rejewski para catalogar la estructura cíclica de las permutaciones de Enigma . En la parte superior se encuentran los dos bancos de rotores, uno con la tapa abierta; debajo, a la izquierda, el reóstato y, a la derecha, el conjunto de lámparas e interruptores etiquetados con las letras correspondientes.

El ciclómetro fue un dispositivo criptológico diseñado, "probablemente en 1934 o 1935", por Marian Rejewski de la sección alemana de la Oficina de Cifrado Polaca (BS-4), para catalogar la estructura cíclica de las permutaciones de Enigma , facilitando así el descifrado del texto cifrado de Enigma alemán . [1]

Junto con la posterior bomba criptológica de Rejewski , se la puede considerar como un predecesor de la bomba que ayudaría a descifrar los códigos Enigma más tarde en la guerra en Bletchley Park , en Inglaterra.

Utilizando dibujos realizados por Rejewski, Hal Evans y Tim Flack en el Departamento de Ingeniería de la Universidad de Cambridge , en 2019 se construyó una versión funcional del ciclómetro. [2]

Historia

Mensaje de ejemplo

Enigma , una máquina de rotor electromecánica con desmodulador que comprende un tambor de entrada, tres rotores y un reflector. Este modelo militar también tiene un tablero de conexiones.

Fede Weierud proporciona el procedimiento, la configuración secreta y los resultados que se utilizaron en un manual técnico alemán de 1950. [3] [4]

Clave diaria (secreto compartido): Orden de ruedas: II I III Fecha de emisión: 24 18 22 (XMV) Reflector: A Tablero de conexiones: AM, FI, NV, PS, TU, WZ Fundamento: FOLClave de mensaje elegida por el operador: ABLCifrado que comienza con FOL: PKPJXIMensaje de texto claro a enviar y texto claro resultante: Feindliche Infanteriekolonne beobachtet. Entrada sur de Bärwalde. Ende drei km ostwärts Neustadt. FÁCIL LLENADO DE ERIEK OLONN EBEOB AQTET XANFA NGSUE DAUSG ANGBA ERWAL DEXEN DEDRE IKMOS TWAER Ciudad de TSNEUMensaje resultante: 1035 – 90 – 341 – PKPJX IGCDS EAHUG WTQGR KVLFG XUCAL XVYMI GMMNM FDXTG NVHVR MMEVO UYFZS LRHDR RXFJW CFHUH MUNZE FRDIS IKBGP MYVXU Z

La primera línea del mensaje no está cifrada. El "1035" es la hora, "90" es el número de caracteres cifrados con la clave del mensaje y "341" es un indicador del sistema que le dice al destinatario cómo se cifró el mensaje (es decir, utilizando Enigma con una determinada clave diaria). Las primeras seis letras del cuerpo ("PKPJXI") son la clave duplicada ("ABLABL") cifrada utilizando la configuración de la clave diaria y comenzando el cifrado en la configuración básica/Grundstellung "FOL". El destinatario descifraría las primeras seis letras para recuperar la clave del mensaje ("ABL"); luego establecería los rotores de la máquina en "ABL" y descifraría los 90 caracteres restantes. Observe que la Enigma no tiene números, puntuación ni diéresis. Los números se deletreaban con todas las letras. La mayoría de los espacios se ignoraban; se utilizaba una "X" para un punto. Las diéresis utilizaban su ortografía alternativa con una "e" al final. Se utilizaban algunas abreviaturas: se utilizaba una "Q" para "CH".

Marian Rejewski

Marian Rejewski , hacia 1932

Durante los estudios de matemáticas de Marian Rejewski en la Universidad de Poznań , la Oficina de Cifrado de Polonia lo reclutó a él y a otros estudiantes de matemáticas, entre ellos Jerzy Różycki y Henryk Zygalski , para realizar un curso patrocinado por la Oficina sobre criptología. Posteriormente, la Oficina contrató a algunos de los estudiantes para que trabajaran a tiempo parcial en una oficina local temporal de la Oficina. Después de graduarse en la Universidad de Poznań, en la Universidad de Göttingen, Rejewski completó el primer año de un curso de estadística actuarial de dos años y luego regresó a Poznań. En septiembre de 1932, él, Różycki y Zygalski fueron a Varsovia para trabajar a tiempo completo para la Oficina de Cifrado.

En diciembre de 1932, la Oficina de Cifrado encargó a Rejewski que trabajara en la máquina de cifrado alemana Enigma. La Oficina había intentado, sin éxito, descifrarla. En pocas semanas, Rejewski logró reconstruir la máquina. Los procedimientos de mensajes de la Enigma alemana utilizaban configuraciones diarias comunes y secretas de la máquina, pero también requerían que un empleado de cifrado eligiera una clave de mensaje individual de tres letras. Por lo tanto, un empleado podía elegir "ABL" como clave de mensaje. La clave de mensaje se utilizaba para establecer la posición inicial de los rotores al cifrar o descifrar el mensaje.

La elección de una clave de mensaje individual era una medida de seguridad: evitaba que todos los mensajes del día se enviaran utilizando la misma clave polialfabética, lo que habría hecho que los mensajes fueran vulnerables a un ataque polialfabético. Sin embargo, el remitente necesitaba comunicar la clave del mensaje al destinatario para que este último pudiera descifrar el mensaje. La clave del mensaje se cifraba primero utilizando la Grundstellung del día (una posición inicial secreta de los rotores de la Enigma, por ejemplo, "FOL").

Las comunicaciones a veces eran confusas y, si la clave del mensaje estaba confusa, el destinatario no podía descifrar el mensaje. En consecuencia, los alemanes tomaron la precaución de enviar la clave del mensaje dos veces; si había una confusa, el destinatario debería poder encontrar la clave del mensaje. Aquí los alemanes cometieron un error crucial. En lugar de enviar la clave del mensaje encriptada (por ejemplo, "PKP") dos veces para obtener "PKP PKP", duplicaron la clave del mensaje (por ejemplo, "ABL ABL"), encriptaron la clave duplicada para obtener ("PKP JXI") y enviaron la clave duplicada encriptada. Ese error le permitió a Rejewski identificar seis permutaciones secuenciales de la Enigma y aprovechar el conocimiento de que encriptaban la misma clave del mensaje.

Con la ayuda de una máquina Enigma comercial, materiales alemanes obtenidos por el espía francés Hans-Thilo Schmidt y empleados de cifrado alemanes que eligieron claves débiles, Rejewski pudo realizar ingeniería inversa del cableado de los rotores y el reflector de la Enigma. La Oficina de Cifrado construyó luego varias máquinas Enigma polacas dobles que podían utilizarse para descifrar mensajes alemanes.

Característica

El procedimiento alemán que enviaba una clave duplicada encriptada fue el error que le dio a Rejewski una vía de entrada. Rejewski consideraba que la Enigma permutaba las letras del texto simple en texto cifrado. Para cada posición de carácter en un mensaje, la máquina utilizaba una permutación diferente. [5] Sea ABCDEF las permutaciones respectivas para las letras primera a sexta. Rejewski sabía que la primera y la cuarta letras eran las mismas, la segunda y la quinta letras eran las mismas, y la tercera y la sexta letras eran las mismas. Rejewski podía entonces examinar el tráfico de mensajes del día; con suficiente tráfico podía reconstruir las permutaciones compuestas.

Por ejemplo, para la clave diaria de un manual técnico de 1930, entonces (con suficientes mensajes) Rejewski podría encontrar las siguientes características:

La notación es la notación cíclica de Cauchy . Al examinar el tráfico del día, Rejewski se daría cuenta de que si "p" fuera la primera letra del indicador, entonces "j" sería la cuarta letra. En otro indicador, "j" sería la primera letra y "x" sería la cuarta letra. Rejewski continuaría siguiendo las letras. Finalmente, habría un mensaje cuya primera letra sería "y" y la cuarta letra volvería a ser "p". Se harían las mismas observaciones para la segunda y la quinta letra; por lo general, habría varios ciclos.

Método de parrilla

Rejewski podría usar esta información del ciclo y algunos hábitos descuidados de los empleados de código para averiguar las permutaciones individuales ABCDEF utilizando el método de la parrilla , pero ese método era tedioso. Después de usar la parrilla, los polacos sabrían el rotor más a la derecha y su posición, las conexiones del tablero de conexiones y Q (la permutación del reflector y los otros dos rotores). Para obtener la clave diaria, los polacos todavía tendrían mucho trabajo por hacer, y ese trabajo podría implicar probar todos los órdenes y posiciones posibles para los dos rotores izquierdos para encontrar la posición para el Grundstellung. Los polacos comenzaron a usar un catálogo Q para facilitar parte del método de la parrilla; ese catálogo tenía 4.056 entradas (26 × 26 × 6). Para encontrar las configuraciones del anillo, el método de la parrilla podría requerir probar 17.576 posibilidades.

El método de la parrilla funcionó bien hasta el 1 de octubre de 1936, día en que los alemanes dejaron de utilizar seis steckers (conexiones de tablero de conexiones) y comenzaron a utilizar de cinco a ocho steckers. [6] Más steckers podrían frustrar el método de la parrilla.

Duración de los ciclos

En lugar de indexar el catálogo según los ciclos reales, los polacos optaron por indexarlo según la duración de los ciclos. Aunque el tablero de conexiones cambiaba la identidad de las letras en la permutación, no cambiaba la duración de los ciclos.

Resulta que hay 101 patrones posibles para las longitudes de ciclo de una permutación de indicador. [7] Con las tres permutaciones en la característica, hay alrededor de un millón de posibles combinaciones de longitud de ciclo ( 101 3 =1,030,301 ). En consecuencia, las longitudes de ciclo podrían usarse como una función hash en una tabla hash de las 105,456 combinaciones posibles. Los polacos observarían el tráfico del día, recuperarían la característica del indicador y luego buscarían en el catálogo de tarjetas. Las probabilidades serían buenas de que solo una (o tal vez unas pocas) tarjetas tuvieran esas longitudes de ciclo.

El resultado sería el orden de rotores adecuado y las posiciones de todos los rotores sin mucho trabajo. El método era más simple que el método de la parrilla y funcionaba cuando había muchos steckers.

Recuperando el tablero de conexiones

El catálogo no revelaba la configuración del tablero de conexiones. Para seis conectores ( steckers ), hay alrededor de 100 mil millones de posibles configuraciones. [8] Probarlos todos es inviable. Sin embargo, el criptógrafo podría encontrar la característica para ese orden de rotor sin un tablero de conexiones, usar esa característica simple en un ataque de texto simple conocido y luego determinar la configuración del tablero de conexiones comparándola con la característica diaria. [9]

A partir de algún tráfico diario, el criptoanalista calcularía la característica.

En el método de la parrilla, la característica anterior se resolvería para las permutaciones individuales ABCDEF y luego se realizaría una búsqueda laboriosa. En su lugar, se calcularían las longitudes de ciclo pareadas de la característica:

d.C.: 13SER: 10 3Cf: 10 2 1

Esas longitudes se buscarían en el catálogo de tarjetas y se encontraría una entrada que indicaría el orden de las ruedas (II, I, III) y la posición inicial de cada rueda.

El catálogo de tarjetas no incluía la característica real: el ciclómetro solo indicaba la pertenencia a un ciclo; no especificaba el orden de las letras en un ciclo. Después de encontrar una entrada en el catálogo, el criptoanalista calculaba la característica sin steckers (solo los ajustes del catálogo). El criptoanalista puede determinar cada una de las permutaciones individuales A* B* C* D* E* F* configurando una Enigma en el orden de rueda y las posiciones iniciales dadas. El criptoanalista luego la presiona ay la mantiene presionada; la lámpara correspondiente se enciende y se escribe; sin soltar la primera letra, el criptoanalista presiona by luego suelta la primera letra; eso evita que la máquina avance los rotores y enciende la lámpara correspondiente a b. Después de mapear todo A , el criptoanalista puede pasar a B y las otras permutaciones. El criptoanalista recupera la característica sin steckers:

Las dos características se utilizan luego para resolver la permutación de Stecker S.

En este ejemplo, hay seis steckers y afectarían a 12 caracteres. Si nos fijamos en los ciclos CF , los ciclos del tablero de conexiones (un)(fa) deben transponerse con los ciclos no steckerizados (vt)(mi) . Ninguna de las letras es igual, por lo que todas esas ocho letras están steckerizadas. Si nos fijamos en los ciclos singleton de CF y C*F*, no solo se ve que "e" no está steckerizada, sino que también "w" y "z" están steckerizadas juntas. [10] Por lo tanto, diez de las doce letras steckerizadas se identifican rápidamente. La mayoría de las otras 16 letras, como "b", "d", "g" y "l", probablemente no estén steckerizadas. La notación de ciclo de A*D* , B*E* y C*F* se puede reorganizar para que coincida con los caracteres probablemente no steckerizados. (La letra inicial de la notación de un ciclo no es significativa: dentro de un ciclo, las letras deben mantener la misma secuencia, pero pueden rotarse. Por ejemplo, (dtj) es lo mismo que (tjd) que es lo mismo que jdt .)

En este punto, los posibles steckers pueden leerse a partir de las diferencias en las dos primeras líneas; también se puede comprobar su coherencia de intercambio. El resultado es

PS TU WZ NV AM FI

Estos steckers coinciden con el ejemplar Enigma de 1930.

El único secreto que queda es la posición de los anillos ( Ringstellung ).

Construyendo el catálogo

El ciclómetro se utilizó para preparar un catálogo de la longitud y el número de ciclos en las "características" de las 17.576 posiciones de los rotores para una secuencia dada de rotores. Como había seis posibles secuencias de este tipo, el "catálogo de características" resultante, o " catálogo de tarjetas ", comprendía un total de (6) (17.576) = 105.456 entradas. [11]

La utilidad del catálogo de tarjetas , escribe Rejewski, era independiente del número de conexiones que utilizaban los alemanes en sus máquinas Enigma (y de la reconstrucción de las claves de los mensajes). La preparación del catálogo "era laboriosa y llevaba más de un año, pero cuando estaba listo... las claves diarias [se podían obtener] en unos quince minutos". [12]

Sin embargo, el 1 de noviembre de 1937, los alemanes cambiaron el "tambor inversor" o " reflector ". [13] Esto obligó a la Oficina de Cifrado a empezar de nuevo con un nuevo catálogo de tarjetas, "una tarea", escribe Rejewski, "que consumió, debido a nuestra mayor experiencia, probablemente algo menos de un año". [14]

Pero el 15 de septiembre de 1938, los alemanes cambiaron por completo el procedimiento de cifrado de claves de mensajes y, como resultado, el método del catálogo de tarjetas se volvió completamente inútil. [14] Esto estimuló la invención de la bomba criptológica de Rejewski y las hojas perforadas de Zygalski . [15]

Véase también

Notas

  1. ^ Marian Rejewski , "Resumen de nuestros métodos para reconstruir ENIGMA y reconstruir claves diarias...", pág. 242.
  2. ^ Evans, Henry A. (2019): Recreación del ciclómetro polaco y su papel en el descifrado de la ley Enigma. Tesis de maestría en ingeniería, Universidad de Cambridge [1]
  3. ^ "CryptoCellar de Frode Weierud | Mensaje de prueba de Enigma de 1930". Archivado desde el original el 30 de octubre de 2014. Consultado el 7 de octubre de 2014 ., citando 1930 "Schlüsselanleitung zur Chiffriermachine Enigma I" ["Instrucciones para el uso de claves en la máquina Cypher 'Enigma I'"]
  4. ^ Se puede comprobar con un simulador. Por ejemplo, http://people.physik.hu-berlin.de/~palloks/js/enigma/enigma-u_v20_en.html Seleccione Enigma I, elija el reflector A (en ese momento, los alemanes solo tenían un reflector), configure el orden de las ruedas (II, I, III), configure los anillos (24, 13, 22), configure los conectores (AM, FI, NV, PS, TU, WZ), active el tablero de conectores y configure los talones en el suelo ("FOL"). Al escribir ABLABL en el cuadro de entrada, debería aparecer PKPJXI como salida.
  5. ^ Las permutaciones estarían determinadas por el tablero de conexiones, el orden del rotor, las posiciones del rotor y el reflector. El rotor derecho (y posiblemente otros rotores) se movían para cada carácter cifrado, y ese movimiento cambiaba la permutación.
  6. ^ Rejewski 1981, pág. 224
  7. ^ La característica es de 26 letras, pero los ciclos en la característica deben emparejarse, por lo que la pregunta es cuántos patrones hay para 13 letras: la cantidad de formas de particionar 13 objetos indistinguibles. Véase "a(n) = número de particiones de n (los números de partición)" https://oeis.org/A000041; "Función de partición P(n)", que indica "da la cantidad de formas de escribir el entero n como una suma de enteros positivos, donde el orden de los sumandos no se considera significativo", http://mathworld.wolfram.com/PartitionFunctionP.html; Partición (teoría de números)
  8. ^ Rejewski 1981, pág. 216
  9. ^ Rejewski (1981, p. 225) afirma: "Cuando se prepararon los seis archivos de tarjetas, encontrar la clave diaria era una tarea ordinaria que tomaba apenas 10 o 15 minutos. Las posiciones de los tambores se leían en la tarjeta, el orden de los tambores se leía en la caja de la que se recuperaba la tarjeta y la permutación S se obtenía comparando las letras en los ciclos de la característica con las letras en los ciclos de las permutaciones AD , BE , CF , que se encontraron al escribirlas en la máquina". Rejewski dice que no obtuvieron la información de la tarjeta sino que la obtuvieron del doble. Eso parece poco probable. El ciclómetro proporcionaría rápidamente la información y la información podría estar en la tarjeta.
  10. ^ Si se steckerara "e", se debe emparejar con "w" en una transposición y con "z" en otra transposición — pero "e" no se puede emparejar con dos letras diferentes, por lo que "e" no se puede steckerar.
  11. ^ Marian Rejewski , "La solución matemática del cifrado Enigma", págs. 284–87.
  12. ^ Marian Rejewski , "Resumen de nuestros métodos...", pág. 242.
  13. ^ Rejewski 1981, pág. 225
  14. ^ ab Rejewski, "Resumen de nuestros métodos...", pág. 242.
  15. ^ Rejewski, "Resumen de nuestros métodos...", págs. 242–43.

Referencias

Enlaces externos