Criptología · Enigma · 1932
Cómo dedujo Rejewski el cableado del rotor derecho (R1)
Una reconstrucción paso a paso de la parte del método de Marian Rejewski que permite averiguar las conexiones internas del rotor derecho — con un ejemplo numérico completo usando un alfabeto reducido de 6 letras.
Este es el cableado real del rotor de nuestro ejemplo (desconocido para Rejewski al empezar): A→C, C→F, F→E, E→D, D→B, B→A. Es la incógnita que todo el proceso busca reconstruir.
| Símbolo | Qué representa |
|---|---|
| P | Giro del rotor una posición: A→B→C→D→E→F→A. Es conocido siempre, no es un secreto. |
| S | El plugboard (clavijero) del día. Cambia cada día. Rejewski lo conocía por documentos de espionaje. |
| N | El cableado interno del rotor derecho. Es fijo (hardware) y es la incógnita que se busca. |
| Q | Todo lo que queda fijo durante un día: rotores 2 y 3 más el reflector. Cambia de un día a otro. |
| A, B, C, D, E, F | La permutación completa de la máquina en la 1ª, 2ª, 3ª... 6ª pulsación del indicador de seis letras. |
01. Lo único que se observa: los productos AD, BE, CF
Rejewski nunca ve A ni D por separado. Solo puede comparar la 1ª letra del indicador cifrado con la 4ª, de muchos mensajes del mismo día — y eso da el producto AD, no A ni D sueltas.
— es decir: A→E, E→C, C→A, B→D, D→F, F→B
Esto es un dato observado directamente del tráfico cifrado — no requiere conocer nada del interior de la máquina. Fíjate que salen dos ciclos de 3 letras, no de 2: AD es un producto de A y D, así que no tiene por qué salir en parejas limpias — solo A, D o Q por separado las tienen.
Cada operador cifra tres letras de clave dos veces seguidas (p. ej. "vbn" se convierte en un indicador de 6 letras). Como la 1ª pulsación y la 4ª pulsación cifran la misma letra de clave, comparar la letra 1 con la letra 4 de muchos mensajes revela una permutación completa: AD. Pero AD es un producto: primero pasa por la permutación A (pulsación 1) y luego por D (pulsación 4). No es "un cable" limpio de una letra a otra — arrastra dos rotaciones distintas del rotor mezcladas.
02. Separar A y D del producto
Con ayuda de un teorema sobre productos de transposiciones, y de operadores que repetían la misma letra como clave (p. ej. "jjj"), Rejewski podía recuperar A y D como permutaciones individuales.
El teorema dice: si dos permutaciones están hechas solo de parejas de letras (como A y D, por ser Enigma recíproca), su producto siempre da un número par de ciclos de cada longitud. Esto permite, a partir de AD, calcular varias decenas de parejas (A, D) candidatas — sin necesidad de descifrar nada.
Para reducir esas decenas a una sola, Rejewski disponía de dos apoyos, ninguno de los dos una certeza: por un lado, contrastar varios días de tráfico a la vez (la misma idea que usaremos más adelante para resolver la ambigüedad final de N); por otro, una conjetura sobre hábitos de algunos operadores poco cuidadosos que repetían la misma letra como clave. Él mismo reconoció que esto último era, en sus palabras, cosa de "pruebas largas, imaginación y a veces un poco de suerte" — no un descifrado, sino un atajo práctico que aceleraba el trabajo cuando acertaba.
Partimos solo de AD = (A E C)(B D F). Cada flecha de AD esconde una letra intermedia: A→?→E, donde el "?" es donde actúa A y la segunda flecha es donde actúa D.
Esa letra intermedia tiene que salir del otro ciclo: {B, D, F}. Repartir esas tres letras en los tres huecos, respetando su propio orden circular (B→D→F→B), da exactamente 3 formas posibles:
| Opción | A→?→E | E→?→C | C→?→A | Resultado para A |
|---|---|---|---|---|
| 1 | A→F→E | E→D→C | C→B→A | (A F)(D E)(B C) |
| 2 | A→D→E | E→B→C | C→F→A | (A D)(B E)(C F) |
| 3 | A→B→E | E→F→C | C→D→A | (A B)(E F)(C D) |
Las tres reproducen exactamente el mismo AD al multiplicarlas por su D correspondiente — las tres son matemáticamente válidas. La opción 1 es la real (coincide con el A que ya conocíamos), pero solo con este día de datos no hay forma de distinguirla de las otras dos: hace falta un segundo día, o una conjetura sobre alguna clave, para descartar las opciones 2 y 3.
03. Quitar el plugboard (S) de la ecuación
A y D todavía llevan "puesto" el plugboard del día. Como S cambia cada día y N es siempre el mismo cableado físico, hay que pelar S para quedarse con algo invariable.
Gracias a documentos obtenidos por el espionaje francés, Rejewski ya conocía S (el plugboard) del día. Eso permite despejarlo algebraicamente: si algo tiene forma S∘(interior)∘S⁻¹, se puede pasar S al otro lado de la ecuación y quedarse solo con el interior.
Esto es imprescindible: si no se quita S, lo que se reconstruye cambia cada día (porque S cambia cada día), y nunca se llega al cableado real, que es siempre el mismo.
04. Alinear con P y eliminar Q
Cada A, D (etc.) es una versión de Q "conjugada" por el rotor en una posición distinta. Multiplicando ecuaciones de posiciones consecutivas, la parte desconocida Q se cancela sola.
Cada letra del indicador corresponde a una posición distinta del rotor: A = N₁∘Q∘N₁⁻¹, D = N₄∘Q∘N₄⁻¹, donde Nₖ es el cableado N visto tras k giros del rotor (Nₖ = Pᵏ∘N∘P⁻ᵏ).
Transformando cada ecuación con las potencias de P correspondientes, y multiplicando ecuaciones de posiciones consecutivas entre sí, el factor Q —que se repite igual en ambas— se cancela. Lo que queda es una ecuación que solo involucra N y P: concretamente, la permutación N∘P∘N⁻¹.
05. El paso decisivo: leer el cableado letra a letra
En este punto Rejewski conoce P como un ciclo y N∘P∘N⁻¹ como otro ciclo. Basta alinearlos para leer N.
P es, por definición, un único ciclo que recorre todas las letras en orden: (A B C D E F). Y por construcción, N∘P∘N⁻¹ es exactamente ese mismo ciclo, pero con cada letra "traducida" por N: (N(A) N(B) N(C) N(D) N(E) N(F)).
Así que basta con escribir un ciclo debajo del otro, letra por letra, en el mismo orden. La letra que aparece en la segunda fila, justo debajo de cada letra de P, es directamente N de esa letra.
| Ciclo de P | A | B | C | D | E | F |
|---|---|---|---|---|---|---|
| Ciclo de N∘P∘N⁻¹ | C | A | F | B | D | E |
| Posición | Letra de P | Letra de N∘P∘N⁻¹ | Conclusión |
|---|---|---|---|
| 1 | A | C | N(A) = C |
| 2 | B | A | N(B) = A |
| 3 | C | F | N(C) = F |
| 4 | D | B | N(D) = B |
| 5 | E | D | N(E) = D |
| 6 | F | E | N(F) = E |
Comparando con el cableado real del principio del documento (A→C, B→A, C→F, D→B, E→D, F→E) — coincide exactamente. El cableado ha quedado reconstruido letra por letra.
06. Por qué salen 26 soluciones (y no importa)
Un ciclo se puede empezar a escribir por cualquier letra sin dejar de ser el mismo ciclo. Eso genera varias soluciones igual de válidas.
El ciclo (C A F B D E) es exactamente la misma permutación que (A F B D E C) o que (F B D E C A): solo cambia por dónde "empiezas a leerlo". Como no hay forma de saber, a partir de las ecuaciones, qué posición del rotor merece llamarse "posición 0", la alineación con P se puede hacer de tantas formas como letras tiene el alfabeto.
Con 26 letras reales, esto da 26 soluciones distintas para N — todas ellas el mismo cableado físico, solo "rotadas" entre sí. Cualquiera funciona igual de bien para simular la máquina, siempre que se sea consistente con esa elección en el resto de los cálculos.
En una frase
Rejewski no "prueba cableados hasta que algo cuadre": separa las permutaciones individuales del indicador, retira el plugboard ya conocido, cancela algebraicamente la parte desconocida del reflector multiplicando ecuaciones de posiciones consecutivas, y lo que le queda —N conjugando el giro simple P— se lee directamente comparando dos ciclos, letra por letra. La única ambigüedad que sobrevive es de origen (dónde empieza a contar las posiciones), no de contenido.
Fuente principal: M. Rejewski, "An Application of the Theory of Permutations in Breaking the Enigma Cipher", Applicationes Mathematicae 16, No. 4, Varsovia, 1980.
Este artículo se elabora a partir del capítulo 3 de «La Decodificación de Enigma» (Fidel García), donde el funcionamiento de la máquina se desarrolla con diagramas paso a paso, notas con sus fuentes y glosario.