Mostrando entradas con la etiqueta sustituciones polialfabéticas. Mostrar todas las entradas
Mostrando entradas con la etiqueta sustituciones polialfabéticas. Mostrar todas las entradas

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.

jueves, julio 22, 2010

Criptografía clásica. Sustituciones Polialfabéticas. Descripción en el caso general

Descripción en el caso general

    Los cifrados polialfabéticos esconden la distribución usando sustituciones multiples, es decir, varios alfabetos. Los alfabetos no necesitan necesariamente ser de orígenes diferentes, por ejemplo, un alfabeto romano y otro cirílico. El simple hecho de alterar la orden en la secuencia de las letras ya caracteriza un "nuevo" alfabeto. Por ejemplo, z-y-x-...-c-b-a es un alfabeto de sustitución; b-a-d-c-... es un alfabeto de sustitución diferente. Si ambos fueran utilizados para cifrar un mismo mensaje, sustituyendo las letras originales, entonces se trata de una sustitución polialfabética.

Así, usando d alfabetos de cifrado (periódo d): C1, C2, ..., Cd y con alfabeto de texto llano A:

fi A -> Ci; i = 1 ... d

Entonces el mensaje:

M = m1m2 ... mdmd+1 ...

se convierte en:

Ek(M) = f1(m1)f2(m2) ... fd(md)fd+1(md+1) ...


Si d = 1, obtenemos de nuevo los cifrados monoalfabéticos.


La forma más antigua de la cifra polialfabética fue desarrollada por Leon Battista Alberti en 1466. Su sistema consistía en escribir el texto cifrado en letras minúsculas y usar letras mayúsculas como símbolos, denominados indicadores, para indicar cuando la sustitución cambiaba. El alfabeto cifrante del Disco de Alberti era ordenado e incluía los dígitos de 1 la 4, usados para formar palabras-código de un pequeño vocabulario. Posteriormente, formas más modernas fueron desarrolladas, donde la sustitución era cambiada cada letra del texto claro.


Esta sección (Descripción en el caso general) ha sido amplidada con información obtenida de serdis.dis.ulpgc.es

Criptografía clásica. Sustituciones Polialfabéticas

Sustituciones Polialfabéticas

    Los sistemas polialfabéticos también cambian símbolos del texto llano por otros símbolos para formar el texto cifrado. La diferencia con los sistemas monoalfabéticos es que no siempre se cambia un símbolo del texto llano por el mismo símbolo en el texto cifrado sino que el símbolo por el que se cambiará dependerá del símbolo que se va a sustituir y de la posición que ocupe.

Los cifrados polialfabéticos aplican varias sustituciones monoalfabéticas al texto llano. Según la posición del símbolo a cifrar le aplicarán una sustitución monoalfabética u otra.

Primero veremos los métodos generales y luego entraremos en algunos casos particulares tal y como se detalla a continuación:


  • Casos particulares
    • Criptosistema de Vigenere
    • Cifrado de Beaufort
    • Cifrado de llave continua
    • Cifrados de Vernam y cuadernos de un sólo uso