domingo, 15 de marzo de 2009

Criptografía (XII)

Turing debía de encontrar la manera de leer los mensajes Alemanes sin la necesidad de la ventaja de debilidad de la doble clave enviada en las cabeceras de los mensajes. Turing se dio cuenta, estudiando la gran biblioteca de mensajes cifrados que guardaban en Bletchley, de que podía predecir parte de los mensajes basándose en el origen del mensaje y cuando había sido enviado.
Por ejemplo, el parte meteorológico era enviado todos los días poco después de las 6 de la mañana, por lo que un mensaje interceptado sobre esa hora seguramente contendría la palabra Wetter (tiempo). Y como los militares son bastante cuadriculados, esta palabra iba casi siempre al principio del texto cifrado. A estos textos llanos que se podían asociar con un fragmento de texto cifrado se le llamaban puntales.
Pero claro, esto era siempre una suposición, había que probarla e identificar las posiciones de la máquina. La manera más directa era probar posiciones, teclear wetter y ver si surgia el texto cifrado que se creía correspondiente. El problema de esto...probar los 159.000.000.000.000.000.000 posibles conbinaciones. Para simplificar esto Turing siguió la estrategia de Rejewski de separar los efectos de las posicones de los diferentes componentes de la máquina: por una parte los modificadores (ranura y posición) y por otra los cableados del clavijero.
Al final Turing se decidió por un tipo de puntal que contenía rizos internos, similares a las cadenas utilizadas por Rejewski pero sin asociar las letras de la clave repetida. Los rizos de Turing conectaban letras de texto llano y de texto cifrado en un puntal.
En la figura podemos ver el puntal correspondiente a la suposición de que wetter corresponde al texto cifrado ETJWPX.
Así suponemos que en la posición S la máquina codifica w como E, en la posición S+1 codifica e como T y en la posición S+3 codifica t como W.
En lugar de trabajar con sólo una máquina enigma Turing propuso trabajar con varias y cada una de ellas se encargaría de una posición. Pero parece que seguimos sin avanzar pues todavía tendríamos que probar todas las combinaciones, pero además en las 3 máquinas.
La mente de Turing ya tenía el paso siguiente en la cabeza. Conectar las tres máquinas mediante cables, haciéndolos pasar entre los dispositivos de entrada y salida de cada máquina (ver figura abajo). El rizo del puntal tiene su equivalente en el rizo del circuito eléctrico por lo que el circuito sólo se cerraría cuando todas las posiciones fueran correctas. Ahora sólo tenía que añadir una bombilla al circuito para que le indicase este momento.
Pero no estaba todo, todavía seguimos con 159 trillones de pruebas dando guerra. Pero Turing ya había visto el siguiente paso.
A ver si soy capaz de explicarlo: Turing xonstruyó el circuito de manera que se anularan los efectos del clavijero y de esta manera desechar billones de posibles combinaciones. Si miramos la figura, en la primera máquina Enigma (superior) la corriente entra en los modificadores y sale por alguna letra desconocida L1. La corriente sigue y pasa por el clavijero que transforme L1 en E. Esta letra E se conecta con con un cable con la letra e de la segunda Enigma y cuando la corriente pasa por el segundo clavijero se vuelve a transformar en L1. De esta manera se contrarrestan los clavijeros mutuamente. De igual manera la corriente que sale de los modificadores de la segunda Enigma entra en el clavijero en L2 y después se transforma en T. Esta letra T se conecta con la letra t de la tercera enigma y cuando pasa la corriente por el tercer clavijero se vuelve a transformar en L2. Así que Turing podía ignorar las posiciones de los clavijeros. Pero Turing no sabóia el valor de L1 así que tuvo que conectar los 26 dispositivos de salida del primer juego de modificadores a los 26 de entrada del segundo juego de modificadores y así sucesivamente. Ahora tenía 26 rizos y 26 bombillas para indicar cuando se completaba. Ahora sólo tenía que probar 17.576 orientaciones. Sólo se tardaría unas 5 horas en probar toda slas orientaciones si los modificadores giraban cada segundo.
Quedaban 2 problemas. El primero es que podía ser que la disposición de los modificadores no fuera la correcta. Recordemos que teníamos 5 modificadores y 3 ranuras, un total de 60 disposiciones. O sea, que si probamos las 17.576 posiciones y no se enciende la bombilla hay que probar con otra de las 60 disposiciones. Como alternativa: tener sesenta juegos de 3 máquinas Enigmas funcionando en paralelo.
El segundo problema era descubrir los cableados del clavijero. Si el resultado del cifrado es tewwer en vez de wetter, es evidente que las teclas w y t estan conectadas. Teclear más texto cifrado revelaría otros cableados del clavijero.
Bletchley consiguió 100.000 libras esterlinas para la construcción de la máquina de Turing, a la que apodaron Bomba por que su enfoque mecánico era parecido a las bombas de Rejewski.
La unidad compelta medía unos 2 metros de alto por unos 2 de largo por 1 de ancho.
Debido al alto grado de secretismo nadie fuera de Bletchley sabía donde y en que trabajaba Turing, ni por supuesto ninguno de los que allí lo hacían. Los militares toleraban el desaliño y las excentricidades de los "profesores". Turing casi nunca se afeitaba, sus uñas siempres etaban negras y su ropa siempre arrugada. Lo que no sabemos es si hubieran aceptado su homosexualidad. Un veterano de Blertchley, Jack Good comentó: "Afortunadamente, las autoridades no sabían que Turing era homosexual. Si no, podríamos haber perdido la guerra"
La priemra "bomba" llegó de la fábrica de Maquinaria de Tabulación Británica de Letchworth el 14 de marzo de 1940.
Fue un desastre, tardaba casi una semana en conseguir una clave. El diseño mejorado tardaría 4 meses en construirse. En ese lapso de timepo, el 10 de mayo, los alemanes cambiaron su protocolo de intercambio de claves. Ya no repetían la clave. La información desencriptada bajo a 0 hasta el 8 de agosto, cuando llegó la nueva "bomba". Esta nueva máquina podía encontrar la clave en menos de una hora. En menos de año y medio había 15 bombas trabajando en Bletchley sacando punta a los puntales. La parte más delicada seguía siendo encontrar el puntal y su posición correcta dentro del texto codificado para poder ajustar las máquinas.
Una debilidad de la enigma era que no podía codificar una letra como ella misma, así que si la suposición del criptógrafo respecto a la posición de una palabra en el texto cifrado resultaba que una letra codificaba a ella misma, entonces sabía que no era correcta y desplazaba la palabra para que esto no ocurriese.
Con el trabajo de todos los descifradores y la bomba de Turing ya no había mensaje alemán interceptado que no se pudiera leer.
Pero había una máquina Enigma que resistió las bombas de turing. Eran las máquinas Enigma navales, usadas por por la Kriegsmarine. Estas tenían 8 modificadores en lugar de 5, con lo que había casi seis veces más posiciones de los modificadores, y seis veces más claves que Bletchley tenía que probar. Además el reflector de esta máquina no era fijo, podía colocarse en 26 posiciones diferentes, lo que incrementaba el número de claves en un factor de 26. Pero lo peor era que los operadores eran más cuidadosos que los de tierra y no enviaban mensajes estereotipados, o sea que no había puntales donde agarrarse.
La única forma de leer mensajes era robando los libros de códigos...pero esta historia ya no viene al caso y pasa a formar parte de las estrategias de la guerra pura y dura como la conocemos.
Dspués de finalizada la guerra, Bletchley se desmanteló y su miembros fueron dispersados. Los soldados de a pié alardeaban de sus hazañas y victorias...la gente de Bletchley no podía, seguía siendo un secreto lo que allí sucedió hasta el año 1974 cuando todo se hizo público, pues ya nadie usaba la Enigma. al fin la gente de Bletchley obuvo su reconocimiento. No toda, muchos de ellos habían fallecido ya, entre llos Turing. En 1952 mientras denunciaba un robo se le escapó que mantenía una relación homosexual. La policía lo detuvo y lo acusó de "Flagrante indecencia". Los periódicos informaron del juicio y la condena impuesta, Turing fue humillado publicamente. El gobierno le retiró su acreditación de miembro de la seguridad, y se le prohibió trabajar en proyectos de investigación relacionados con el desarrollo del ordenador. (posiblemente ahora el windows no se colgaría si hubieran dejado a Turing tranquilo, o sí) Fue obligado a ir a consulta de un psiquiatra y someterse a un tratamiento de hormonas, que lo dejó impotente. Sufrió una depresión que duró 2 años, hasta que el 7 de junio de 1954 se suicidó comiendose una manzada mojada con cianuro. A los 52 años murió uno de los genios del criptoanálisis. Leer más...