EL DESCRIFRAMIENTO DE LA CIFRA VIGENERE.
Como hemos visto en el post anterior , la cifra Vigenere fué una revolución en el campo de la criptología ya que se abandonaba la sustitución monoalfabética y por tanto la resolución mediante el análisis de frecuencia puro y duro quedaba en principio superado.
Sin embargo hubo un hombre ,Charles Babbage que pensó que si la cifra había sido pensada por un hombre , otro hombre podría descubrir sus secretros y lo consiguió, desafortunadamente para el no publicó su método y otro hombre de manera independiente Friedrich Kasiski descubrió a su vez el método de desciframiento de la cifra vigenere y se llevó la gloria, por eso el método de desciframiento se conoce como el método kasiski aunque algunos autores por reconocimiento a Babbage le llaman kasiski/babbage.
El método de desciframiento al que llegaron ambos hombres se describe en el siguiente texto.
Ahora voy a colocar un fragmento del libro "LOS CODIGOS SECRETOS. DE ............................... Este libro es interesantísimo para los que gusten de saber sobre la historia de la criptología . Voy a colocar este texto que se encuentra en
http://personal.telefonica.terra.es/web ... tml#Indice.
Lo voy a colocar por dos razones : la primera es porque en este libro viene perfectamente explicado ( indudablemente mejor que lo haría yo) y la segunda razón es porque me ahorro de escribir un montón :dpp: .
INICIO DEL TEXTO.
Babbage contra la cifra Vigenère
La figura más fascinante del criptoanálisis del siglo XIX es Charles Babbage , el excéntrico genio británico más conocido por desarrollar el precursor del ordenador moderno. Nació en 1791, hijo de Benjamin Babbage, un rico banquero de Londres. Cuando Charles se casó sin el permiso de su padre perdió el acceso a la fortuna Babbage, pero todavía tenía suficiente dinero para gozar de seguridad económica y vivió como un erudito errante, aplicando su talento a cualquier problema que excitaba su imaginación. Sus inventos incluyen el velocímetro y el avisador de vacas, un aparato que se podía sujetar a la parte delantera de las locomotoras de vapor para apartar a las vacas de las vías del ferrocarril. Desde el punto de vista de los avances científicos, fue el primero en darse cuenta de que la anchura del anillo de un árbol dependía del tiempo que había hecho ese año, y dedujo que era posible determinar los climas pasados estudiando árboles muy antiguos. También se sentía fascinado por la estadística, y para divertirse trazó una serie de tablas de mortalidad, una herramienta básica para las compañías de seguros actuales.
Mientras la mayoría de los criptoanalistas habían abandonado toda esperanza de llegar a descifrar la cifra Vigenère, a Babbage le animó a intentar el desciframiento un intercambio de cartas con John Hall Brock Thwaites, un dentista de Bristol con un concepto bastante inocente de las cifras. En 1854, Thwaites afirmó haber inventado una nueva cifra, que, en realidad, era equivalente a la cifra Vigenère. Escribió al Journal oi the Society of Arts con la intención de patentar su idea, por lo visto sin darse cuenta de que llegaba con varios siglos de retraso. Babbage escribió a esa sociedad señalando que «la cifra... es muy antigua, y aparece en la mayoría de los libros». Thwaites no ofreció ningún tipo de disculpas y desafió a Babbage a descifrar su cifra. Que fuera o no descifrable no tenía nada que ver con el hecho de si era nueva o no, pero la curiosidad de Babbage se excitó lo suficiente como para embarcarse en la búsqueda de un punto débil en la cifra Vigenère.
Descifrar una cifra difícil es similar a escalar la cara muy escarpada de un acantilado. El criptoanalista busca cualquier resquicio o arista que pudiera proveer el más ligero apoyo. En una cifra monoalfabética, el criptoanalista se agarrará a la frecuencia de las letras, porque las letras más corrientes -en inglés, la e, la t y la a- destacarán no importa cómo hayan sido escondidas. En la polialfabética cifra Vigenère, las frecuencias están mucho más equilibradas, porque se usa la palabra cifra para cambiar entre diferentes alfabetos cifrados. Por eso, a primera vista, la roca parece perfectamente lisa.
Recuerde, la gran fuerza de la cifra Vigenère es que la misma letra será codificada de maneras diferentes. Por ejemplo, si la palabra clave es KING (rey), entonces cada letra del texto llano puede ser potencialmente codificada de cuatro maneras diferentes, porque la clave tiene cuatro letras. Cada letra de la clave define un alfabeto cifrado diferente en el cuadro Vigenère, .
Un cuadro Vigenère utilizado en combinación con la clave KING. La clave define cuatro alfabetos cifrados separados, de forma que la letra e puede ser codificada como O, M, R o K.
Si se usa la K de KING para codificar la e, la letra resultante en el texto cifrado es la O.
Si se usa la I de KING para codificar la e, la letra resultante en el texto cifrado es la M.
Si se usa la N de KING para codificar la e, la letra resultante en el texto cifrado es la R.
Si se usa la G de KING para codificar la e, la letra resultante en el texto cifrado es la K.
De manera similar, palabras enteras serán descifradas de maneras diferentes: la palabra the, por ejemplo, podría ser codificada como DPR, BUK, GNO o ZRM, dependiendo de su posición en relación con la clave. Aunque esto dificulta muchísimo el criptoanálisis, tampoco hace que sea imposible. El dato importante que hay que notar es que si sólo hay cuatro maneras de codificar la palabra the, y el mensaje original contiene varios casos de la palabra the, entonces es altamente probable que alguna de las cuatro codificaciones posibles se repetirá en el texto cifrado. Vamos a demostrado con el siguiente ejemplo, en el que la línea The sun and the Man in the Moon («El sol y el hombre en la luna») ha sido codificada usando la cifra Vigenère y la clave KING.
La palabra the es codificada como DPR en el primer caso, y luego como BUK en la segunda y en la tercera ocasión. La causa de la repetición de BUK es que el segundo the está a ocho letras de distancia del tercer the, y ocho es un múltiplo del número de letras de la clave, que, como sabemos, tiene cuatro letras. En otras palabras, el segundo the fue codificado según su relación con la palabra clave (the cae debajo de ING), y para cuando llegamos al tercer the, la clave ha pasado exactamente dos veces, de manera que se repite esa relación y, por tanto, la codificación.
Babbage se dio cuenta de que este tipo de repetición le suministraba exactamente la asidera que necesitaba para conquistar la cifra Vigenère. Logró definir una serie de pasos relativamente simples que cualquier criptoanalista podía seguir para descifrar la hasta entonces chiffre indéchiffrable. Para demostrar su brillante técnica, imaginemos que hemos interceptado el texto cifrado que aparece en la Figura siguiente.
Sabemos que ha sido codificado utilizando la cifra Vigenère, pero no sabemos nada sobre el mensaje original, y la clave es un misterio.
La primera fase del criptoanálisis de Babbage consiste en buscar secuencias de letras que aparecen más de una vez en el texto cifrado. Hay dos maneras en las que podrían surgir semejantes repeticiones. La más probable es que la misma secuencia de letras del texto llano haya sido codificada usando la misma parte de la clave. Como alternativa, existe una ligera posibilidad de que dos secuencias de letras diferentes del texto llano hayan sido codificadas usando diferentes partes de la clave, resultando por casualidad en una secuencia idéntica en el texto cifrado. Si nos limitamos a secuencias largas, entonces podemos descartar en gran medida la segunda posibilidad y en este caso, sólo consideramos las secuencias repetidas que tengan cuatro letras o más.
Además de utilizarse para codificar el texto llano y convertido en el texto cifrado, la clave la usa también el receptor para descifrar el texto cifrado y volverlo a convertir en el texto llano. Por eso, si pudiéramos identificar la clave, descifrar el texto no sería difícil. En esta fase aún no disponemos de suficiente información para deducir la clave, pero nos proporciona indicios muy buenos sobre su longitud. Tras enumerar qué secuencias se repiten, así como los espacios que hay entre las repeticiones, el resto de la Tabla se dedica a identificar los factores de los espaciamientos: los números por los que se pueden dividir los espaciamientos. Por ejemplo, la secuencia W-C-X-Y-M se repite tras 20 letras, por lo que los números 1,2,4,5, 10 Y 20 son factores, ya que pueden dividir exactamente a 20 sin dejar decimales. Estos factores sugieren seis posibilidades:
(1) La clave tiene 1 letra y se recicla 20 veces entre las codificaciones.
(2) La clave tiene 2 letras y se recicla 10 veces entre las codificaciones.
(3) La clave tiene 4 letras y se recicla 5 veces entre las codificaciones.
(4) La clave tiene 5 letras y se recicla 4 veces entre las codificaciones.
(5) La clave tiene 10 letras y se recicla 2 veces entre las codificaciones.
(6) La clave tiene 20 letras y se recicla 1 vez entre las codificaciones.
La primera posibilidad puede ser excluida, porque una clave que sólo tenga una letra da lugar a una cifra monoalfabética, sólo se usaría una línea del cuadro Vigenère para toda la codificación, y el alfabeto cifrado permanecería inalterado; es muy improbable que un criptógrafo hiciera algo así. Para indicar cada una de las demás posibilidades se ha colocado una marca en la columna apropiada del diagrama de frecuencias de aparición de cada letra. Cada marca indica una longitud potencial de la clave.
Para identificar si la clave tiene 2, 4, 5, 10 o 20 letras necesitamos observar los factores de todos los demás espaciamientos. Como la clave parece tener 20 letras o menos, la [Imagen 02 - 11] enumera los factores equivalentes para cada uno de los espaciamientos. Hay una clara propensión por el espaciamiento divisible por 5. De hecho, todos los espaciamientos que aparecen son divisibles por 5. La primera secuencia repetida, E-F-I-Q, se puede explicar con una clave de 5 letras, reciclada 19 veces entre la primera codificación y la segunda. La segunda secuencia repetida, P-S- D-L-P, se puede explicar con una clave de 5 letras, reciclada sólo una vez entre la primera codificación y la segunda. La tercera secuencia repetida, W-C-X-Y-M, se puede explicar con una clave de 5 letras, reciclada 4 veces entre la primera codificación y la segunda. La cuarta secuencia repetida, E-T-R-L, se puede explicar con una clave de 5 letras, reciclada 24 veces entre la primera codificación y la segunda. En resumen, todo concuerda con una clave de 5 letras.
Asumiendo que la clave tiene efectivamente 5 letras, el siguiente paso es deducir cuáles son exactamente esas letras. Por ahora, llamemos a la clave L1.-L2-L3-L4-L5, de forma que L1 represente a la primera letra de la clave, y así sucesivamente. El proceso de codificación habría empezado codificando la primera letra del texto llano según la primera letra de la clave, L1. La letra L1 define una línea del cuadro Vigenère, y de hecho proporciona un alfabeto cifrado de sustitución monoalfabética para la primera letra del texto llano. Sin embargo, a la hora de codificar la segunda letra del texto llano, el criptógrafo habría usado L2 para definir una línea distinta del cuadro Vigenère, proporcionando de este modo un alfabeto cifrado de sustitución monoalfabética diferente. La tercera letra del texto llano se codificaría según L3 la cuarta según L4 y la quinta según L5. Cada letra de la clave proporciona un alfabeto cifrado diferente para la codificación. Sin embargo, la sexta letra del texto llano sería codificada de nuevo según L1, la séptima letra del texto llano sería codificada de nuevo según L2 y el ciclo se repite después de eso. En otras palabras, la cifra polialfabética consta de cinco cifras monoalfabéticas, cada cifra monoalfabética es responsable de la codificación de un quinto del mensaje total y, lo que es más importante, ya sabemos cómo criptoanalizar las cifras monoalfabéticas.
Procederemos de la siguiente manera. Sabemos que una de las líneas del cuadro Vigenère, definida por L1, proporciona el alfabeto cifrado para codificar las letras lª, 6ª, 11ª, l6ª... del mensaje. Por eso, si observamos las letras lª, 6ª, 11ª, l6ª... del texto cifrado podríamos utilizar el análisis de frecuencia tradicional para deducir el alfabeto cifrado en cuestión.
haciendo un cuadro de muestra de la distribución de la frecuencia de las letras que aparecen en las posiciones lª, 6ª, 11ª, l6ª... del texto cifrado, que son W, I, R, E... Es preciso recordar ahora que cada alfabeto cifrado del cuadro Vigenère es simplemente un alfabeto normal desplazado entre 1 y 26 posiciones. Por eso, la distribución de frecuencias del diagrama de frecuencias debería tener rasgos similares a la distribución de frecuencias de un alfabeto normal, excepto que habrá sido desplazado unas cuantas posiciones. Al comparar la distribución L. con la distribución normal debería ser posible calcular ese desplazamiento.
La distribución normal muestra cimas, mesetas y valles, y para hacerla encajar con la distribución de la cifra L1 buscamos la combinación de rasgos más sobresaliente. Por ejemplo, los tres pilares de R-S-T en la distribución normal y la larga depresión a su derecha, que se extiende a lo largo de seis letras, de la U hasta la Z: ambas cosas juntas forman un par muy característico de rasgos. Los únicos rasgos similares en la distribución L1 son los tres pilares de V-W-X, seguidos de la depresión que se extiende a lo largo de seis letras, de la Y a la D. Esto sugeriría que todas las letras codificadas según L1 se han desplazado cuatro posiciones o, en otras palabras, que L1 define un alfabeto cifrado que comienza E, F, G, H... A su vez, esto significa que la primera letra de la clave, L1 es probablemente la E. Esta hipótesis se puede poner a prueba desplazando la distribución L1 cuatro lugares y comparándola con la distribución normal.
La distribución L1 desplazada cuatro lugares ,comparada con la distribución de frecuencias normal ,Todas las cimas y las depresiones principales encajan.
La superposición de los diagramas de frecuencia ( de un texto llano en el idioma utilizado en el mensaje y el diagrama de frecuencias de L1 obtenidas en el desciframiento muestra ambas distribuciones para poder comparar. La coincidencia entre las cimas mayores es muy grande, implicando que resulta seguro asumir que la clave comienza efectivamente por E.
Resumiendo, buscar repeticiones en el texto cifrado nos ha permitido identificar la longitud de la clave, que resultó ser de cinco letras. Esto nos permitió dividir el texto cifrado en cinco partes, cada una de ellas codificada según una sustitución monoalfabética definida por una letra de la clave Analizando la fracción del texto cifrado que fue codificada según la primera letra de la clave, hemos podido mostrar que esta letra L1 es probablemente la E. Este proceso se repite para identificar la segunda letra de la clave Así, establecemos una distribución de frecuencias para las letras 2ª, 7ª, l2ª, 17ª... del texto cifrado. De nuevo, la distribución resultante, en los diagramas de frecuencia se compara con la distribución normal para deducir el desplazamiento.
Este proceso se debería continuar para analizar L2, L3, L4 y así sucesivamente en función de las L obtenidas en función de la longitud de la clave ( por cada letra que tenga la clave habrá una L)
El satisfactorio criptoanálisis de la cifra Vigenère realizado por Babbage fue logrado probablemente en 1854, poco después de su altercado con Thwaites, pero su descubrimiento no fue reconocido en absoluto, porque nunca lo publicó. El descubrimiento no salió a la luz hasta el siglo xx, cuando algunos eruditos examinaron las extensas notas de Babbage. Mientras tanto, su técnica fue descubierta independientemente por Friedrich Wilhelm Kasiski, un oficial retirado del ejército prusiano. Desde 1863, cuando publicó su gran avance criptoanalítico en Die Geheimschriften und die Dechijfrirkunst ( «La escritura secreta y el arte del desciframiento»), la técnica ha sido conocida como la Prueba Kasiski, y la contribución de Babbage ha sido ignorada en gran medida.
Pero, ¿por qué no publicó Babbage su desciframiento de una cifra tan vital? Ciertamente, tenía el hábito de no acabar sus proyectos y no publicar sus descubrimientos, lo que podría sugerir que éste es simplemente un ejemplo más de su actitud indolente. Sin embargo, hay una explicación alternativa. Su descubrimiento sucedió poco después del estallido de la guerra de Crimea, y una teoría es que ese descubrimiento proporcionó a los británicos una clara ventaja sobre su enemigo ruso. Es muy posible que la Inteligencia británica exigiera que Babbage mantuviese secreto su trabajo, proporcionándoles de esta forma una ventaja de nueve años sobre el resto del mundo. Si esto fuera así, encajaría con la ya antigua tradición de encubrir los logros del desciframiento en beneficio de la seguridad nacional, una práctica que ha continuado en el siglo xx.
FIN DEL TEXTO..
RESUMEN.
Primero de todo decir que el texto completo se halla en el libro mencionado o en su defecto en la página cuya dirección he puesto al principio, recomiendo su lectura en esta página ( o el libro ) ya que aparecen dibujados los diagramas mencionados con lo que resultará mas fácil la comprensión del método Babbage/kasinski.
El punto flaco de cualquier mensaje cifrado es su repetición y estructuración, en el momento que aparecen secuencias lógicas y/o estructuras repetitivas un buen criptógrafo tendrá agarres para tratar de descifrar cualquier mensaje.
A modo de resúmen decir que este sistema de desciframiento de la cifra Vigenere, se basa en :
- La clave aunque desconocidda, normalmente tiene un número relativamente pequeño de letras.
- Este número de letras es el que nos indica el número de alfabetos que se utilizan para cifrar el texto.
- Una debilidad de la cifra Vigenere es que los alfabetos del cuadro están siempre en el mismo orden y se utilizan siguiendo el mismo orden, cuando se acaban las letras de la clave se comienza de nuevo. Como pequeña aclaración decir que esto es lo que le daba fuerza a la Enigma ( aparte de utilizar billones de alfabetos) es decir el orden en el que se utilizaban los alfabetos era distinto cada vez que se cifraba un mensaje , de ahí que se necesitase saber en que posición había que colocar los rotores y los intercambiadores a la hora de comenzar a descodificar un mensaje enviado.
- En un texto largo,( por ejemplo de 1.000 letras ), si utilizamos una clave de 10 letras quiere decir que se utilizarán 10 alfabetos , y que cada diez letras del texto cifrado el alfabeto utilizado se repite, en un texto muy largo es factible que se repitan muchas palabras, si casualmente ( que es muy pero que muy posible) dos palabras iguales se codifican con los mismos alfabetos , ya está , se puede aplicar el método descrito y el mensaje quedará descifrado.
En cualquier caso la cifra vigenere fué un avance muy importante en el campo de la criptología y como he comentado la base de la ENIGMA ( mucho más desarrollado eso sí pero es el embrión de la famosa ENIGMA).
Como iniciso y aunque me adelante a los acontecimientos ( ya abordaremos el tema) decir que el código navajo que utilizaron los americanos en la IIGM y que nunca fué descrifrado, estuvo cerca de ser un fracaso ¿porqué? , a muy groso modo, porque como todos sabeis el código navajo consistia en que los navajos utilizaban su lenguaje propio para codificar mensajes y utilizaban nombres de animales para referirse a las distintas armas, aviones, tanques etc etc. ( dicho todo esto a muy groso modo) , pues bien al principio pensaban utilizarlo directamente así , hasta que alguien se dió cuenta de que si utilizaban siembre una misma palabra para una misma letra , los japoneses descifrarían el código aplicando el método de desciframiento mas antiguo del mundo , el simple análisis de frecuencia , por esto para referirse a una misma letra los navajos utilizaban distintas palabras ( todo esto lo comentaremos en proximos post para que resulte más didáctico).