viernes, 22 de mayo de 2015

Criptografía X: la máquina Enigma (IX)

Decía en el post anterior que, como en el simulador que incluí en él no se aprecia la operativa en la práctica (cómo se iban apilando las hojas apropiadas), me propongo poner en este post un ejemplo para ver si he comprendido correctamente el método de las hojas Zygakski.

Pues bien, consideremos que entre los mensajes interceptados nos encontramos con que nueve de ellos presentan las siguientes "hembras" en las posiciones 1-4 ("1,4-female" en la terminología que ellos acuñaron):

1.- PTJ XZI XPG; 2.- CEH CMS CID; 3.- BUG RCJ RVU; 4.- EON NSF NLG; 5.- XLV IEJ IRU;
6.- BWY SXN SBU; 7.- AGY WDH WWT; 8.- KGS OXT OXU; 9.- CWI UBG UHS.
Nota: los tres primeros caracteres se corresponden con el indicador (los tres caracteres que se transmitían en claro y que el operador había elegido para cifrar la "clave de sesión") y los seis siguientes con los caracteres correspondientes al doble cifrado de ésta.

1º) Lo primero que debemos hacer es establecer una hipótesis de partida (a probar) para el orden de los rotores y fijar un carácter para el ajuste del anillo del rotor lento. En nuestro caso elegimos "I-III-II" y la letra "Q".

2º) Seleccionamos como primera hoja la rotulada con la letra "B" correspondiente al orden de los rotores elegido para probar ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "P" (primera letra del primer indicador) = "B", y la ponemos sobre una mesa iluminada por debajo:

Como se observa en la figura anterior, la luz de la mesa iluminada por debajo atraviesa 326 cuadrados perforados.

3º) A continuación seleccionamos la hoja  rotulada con la letra "O" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "C" (primera letra del segundo indicador) = "O", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "O") coincidan en las coordenadas "PC" de la anterior (hoja "B"), ya que "T" (segunda letra del primer indicador) - "E" (segunda letra del segundo indicador) = "P" y "J" (tercera letra del primer indicador) - "H" (tercera letra del segundo indicador) = "C":

Como se observa en la figura anterior, ahora la luz atraviesa sólo 148 cuadrados perforados, frente a los 326 que atravesaba antes.

4º) Continuamos con la hoja  rotulada con la letra "P" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "B" (primera letra del tercer indicador) = "P", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "P") coincidan en las coordenadas "ZD" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "U" (segunda letra del tercer indicador) = "Z" y "J" (tercera letra del primer indicador) - "G" (tercera letra del tercer indicador) = "D":

Tal y como se ve en la figura anterior, ahora la luz atraviesa sólo 56 cuadrados perforados, frente a los 148 que atravesaba antes.

5º) Seguimos con la hoja  rotulada con la letra "M" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "E" (primera letra del cuarto indicador) = "M", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "M") coincidan en las coordenadas "FW" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "O" (segunda letra del cuarto indicador) = "F" y "J" (tercera letra del primer indicador) - "N" (tercera letra del cuarto indicador) = "W":

Ahora la luz atraviesa sólo 26 cuadrados perforados, frente a los 56 que atravesaba antes.

6º) Seleccionamos la hoja  rotulada con la letra "T" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "X" (primera letra del quinto indicador) = "T", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "T") coincidan en las coordenadas "IO" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "L" (segunda letra del quinto indicador) = "I" y "J" (tercera letra del primer indicador) - "V" (tercera letra del quinto indicador) = "O":

Tal y como vemos, la luz atraviesa sólo 14 cuadrados perforados, frente a los 26 que atravesaba antes.

7º) Elegimos ahora la hoja  rotulada con la letra "P" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "B" (primera letra del sexto indicador) = "P", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "P") coincidan en las coordenadas "XL" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "W" (segunda letra del sexto indicador) = "X" y "J" (tercera letra del primer indicador) - "Y" (tercera letra del sexto indicador) = "L":

Observamos que la luz atraviesa ahora sólo 6 cuadrados perforados, frente a los 14 que atravesaba antes.

8º) Continuamos ahora con la hoja  rotulada con la letra "Q" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "A" (primera letra del séptimo indicador) = "Q", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "Q") coincidan en las coordenadas "NL" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "G" (segunda letra del séptimo indicador) = "N" y "J" (tercera letra del primer indicador) - "Y" (tercera letra del séptimo indicador) = "L":

La luz atraviesa ahora sólo 4 cuadrados perforados, frente a los 6 que atravesaba antes.

9º) Seguimos con la hoja  rotulada con la letra "G" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "K" (primera letra del octavo indicador) = "G", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "G") coincidan en las coordenadas "NR" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "G" (segunda letra del octavo indicador) = "N" y "J" (tercera letra del primer indicador) - "S" (tercera letra del octavo indicador) = "R":

La luz únicamente atraviesa ya 2 cuadrados perforados, frente a los 4 que atravesaba antes.

10º) Y, finalmente, terminamos con la hoja  rotulada con la letra "O" correspondiente al mismo orden de los rotores ("I-III-II"), ya que "Q" (letra fijada para el ajuste del anillo del rotor lento) - "C" (primera letra del noveno indicador) = "O", y la ponemos sobre la anterior de tal manera que las coordenadas "AA" de la nueva hoja (hoja "O") coincidan en las coordenadas "XB" de la primera hoja (hoja "B"), ya que "T" (segunda letra del primer indicador) - "W" (segunda letra del noveno indicador) = "X" y "J" (tercera letra del primer indicador) - "I" (tercera letra del noveno indicador) = "B":

Como se observa la luz atraviesa ya un único cuadrado perforado, el de coordenadas "JD", lo que ya identifica de forma unívoca el orden de los rotores y el ajuste de lo anillos de la clave del día.

El orden de los rotores y el ajuste del anillo del rotor lento se obtienen directamente, es decir, serían "I-III-II" y "Q", respectivamente, mientras que el ajuste del anillo del rotor central se obtiene mediante la diferencia entre el segundo carácter del primer indicador ("T") y la coordenada correspondiente al rotor central del cuadrado perforado ("J") y  el ajuste del anillo del rotor rápido se obtiene mediante la diferencia entre el tercer carácter del primer indicador ("J") y la coordenada correspondiente al rotor rápido del cuadrado perforado ("D"); dando como resultado "J" y "F", respectivamente.

Por tanto, la clave del día contendría los siguientes valores:

Orden de los rotores: "I-III-II".
Ajuste de los anillos: "Q-J-F".

Lo que coincide con el resultado obtenido con el simulador que incluí en el post anterior, aunque en éste he puesto un ejemplo de la operativa que no se aprecia en dicho simulador para comprobar que lo he entendido correctamente. Creo que sí, si no es así y como siempre, por favor, que algún amable lector de este humilde blog me saque del error.

Para finalizar decir que en posteriores posts compartiré  lo que voy aprendiendo sobre cómo continuó esta apasionante historia, al menos para mí, de la máquina Enigma utilizada por el ejército alemán durante la II Guerra Mundial.

No hay comentarios:

Publicar un comentario