miércoles, agosto 04, 2010

Criptografía clásica. Sustiticiones polialfabéticas. El método de Kasiski

El método de Kasiski

El método de Kasiski fue introducido en 1863 por el oficial militar prusiano Friedrich W. Kasiski. Se trata de un método de criptoanális que analiza repeticiones en el texto cifrado para determinar el periodo que se usó para cifrarlo.

Por ejemplo, supongamos que el texto plano "Me siento como si cientos de ojos me observaran" es cifrado con el método de Vigenère usando la clave "ole" como se muestra a continuación:

Mensaje: ME SIENTO COMO SI CIENTOS DE OJOS ME OBSERVARAN
Clave:   OL EOLEOL EOLE OL EOLEOLE OL EOLE OL EOLEOLEOLE
Cifrado: AO WWOQIZ GDWS HS GWOQIZW RO SXZW AO SPDIGGEGLQ

Cuando se encuentran n-gramas (palabras) repetidos en el texto cifrado con n = 3, lo más probable es que esos n-gramas sean también iguales en el texto original. Esto implica que han sido cifrados con la misma sustitución, con lo que la distancia entre los comiezos de los n-gramas iguales será un múltiplo del periodo que se usó para cifrar el texto.

En nuestro ejemplo tenemos repetido el 5-grama "WOQIZ", a una distancia de 12 caracteres. Esto quiere decir que el periodo que se usó para cifrar el texto es divisor de 12, con lo que sólo puede ser d = 1, 2, 3, 4, 6 o 12. En nuestro ejemplo es 3. Parece que nos salen demasiadas posibilidades para el periodo pero debemos tener en cuenta que el texto que se ha elegido para el ejemplo es muy pequeño. En textos más grandes suelen encontrarse varias parejas de n-gramas repetidos con varias distancias que los separan. En estos casos el periodo que se tomó para cifrar el texto será un divisor común de todas las distancias que separen n-gramas iguales, con lo que las posibilidades se reducen bastante. En el criptoanálisis del método de Vigenère veremos un ejemplo en el que se aplica este método para descifrar un texto de periodo desconocido a priori.

No hay comentarios: