Applied Mathematics">
Tema 2
Tema 2
Tema 2
Tema 2. Criptografía y
criptoanálisis clásicos
Índice
Esquema
Ideas clave
A fondo
Proyecto M4
Enigma
Test
Esquema
En este tema estudiaremos los métodos clásicos de cifrado, que son aquellos
texto «en claro». Todos los métodos clásicos caen dentro de la categoría de
Por otro lado, los cifradores por sustitución literalmente sustituyen cada carácter el
¿Qué es la criptografía?
L a criptografía (del griego krypto y logos, que significa «el estudio de lo oculto, lo
escondido») es la ciencia que trata sobre escribir mensajes que nadie pueda
Conviene aquí hacer una aclaración sobre un error muy común; tanto que puede
traducción directa del inglés), y que, al menos, te servirán para distinguir quién
periodo clásico de la misma se extiende desde sus orígenes, casi con el nacimiento
realizaban a mano, con lápiz y papel, o, como mucho, con sistemas mecánicos muy
En el periodo entre las dos grandes guerras mundiales, los sistemas de cifrado
varios años y salvar muchos miles de vidas. Patentada en 1918, hizo de los
diplomáticos, donde había residido hasta entonces. Esto se debió a dos hechos
cruciales que abrieron la criptografía al mundo civil: la publicación por parte del NIST
del Data Encryption Standard (el famoso algoritmo DES), y el otro, la invención de la
que nos aporta el hardware. Cifrados de no muchos meses, están «rotos» por
monumento egipcio del Imperio Antiguo. El escriba encargado de decorar una sala
del mismo con una oda a las virtudes de su señor decidió utilizar un código sencillo
de sustitución jeroglífica, cambiando algún que otro símbolo por uno de sus
propiamente dicho, pues únicamente cambió algunos jeroglíficos aquí y allá, sobre
¿Por qué lo hizo? Seguramente nunca lo sabremos, pero es posible que la intención
Sin embargo, los primeros ejemplos más serios llegarían, como tantas otras cosas, a
través de sus usos militares. Se sabe que en la Grecia clásica, en el siglo quinto
e informaciones.
«La escítala era un palo o bastón en el cual se enrollaba en espiral una tira de cuero.
Sobre esa tira se escribía el mensaje en columnas paralelas al eje del palo. La tira
desenrollada mostraba un texto sin relación aparente con el texto inicial, pero que podía
leerse volviendo a enrollar la tira sobre un palo del mismo diámetro que el primero».
Según algunos documentos históricos, este sistema se utilizó por los gobernantes de
principalmente durante las campañas militares. Obviamente, para poder utilizar este
método, tanto el emisor como el receptor del mensaje debían disponer de un bastón
con el mismo grosor y longitud (que podrían considerarse la clave del sistema).
Al desenrollar el mensaje del cilindro o bastón todas las letras del mismo siguen
por lo que la lectura lineal del mensaje resulta incomprensible. Por ejemplo, en el
C = «ungcariaudndedaedlsacsdreimsaltwaiana»
Para poder leer el mensaje, el receptor debía utilizar otro bastón del mismo tamaño y
enrollar la cinta de papel escrita alrededor de él. Este sistema tenía la ventaja de que
era rápido y bajo condiciones normales, estaba libre de errores, lo que lo hace muy
caracteriza por un nivel de seguridad muy bajo y podía romperse con facilidad.
A pesar de ello, la importancia de este método de codificación llegó a ser tan grande
El cifrado de César
El imperio romano, como no podía ser de otro modo, también conocía e hizo uso de
«Si él [César] tenía algo que decir, lo escribía en cifra, es decir, cambiando el orden de
las letras del alfabeto, de modo que no se pudiese reconocer ni una palabra. Si alguien
quiere descifrar eso, y obtener su significado, deberá sustituir la cuarta letra del alfabeto,
módulo de la suma.
Octavio Augusto, heredero político de Julio César, utilizaría un método similar, pero
desplazando una sola posición el texto: «cuando escribía en cifra ponía la b por la a,
c por b y así con las otras letras; por x ponía dos a».
C = (M - 3) (mód 26)
C = (M + k) (mód n)
Tomaremos en nuestro caso como mensaje M = FIRMA LA PAZ. Sin más que ir
C = (5 - 3) (mód 26) = 2
Casi no haría falta decirlo, pero obviamente este método de cifrado (ni ninguno de los
claves diferentes. Por tanto, basta con probarlas todas, cosa que puede hacerse a
Los sistemas que hemos presentado ilustran los dos principios esenciales en los que
se transponen, por tanto, las letras son las mismas en el mensaje original y en el
cifrado).
Como acabamos de comentar, con solo unas pocas claves posibles, el cifrado de
César es completamente inseguro, nada más que una curiosidad histórica hoy en
día. Sin embargo, su estudio proporciona las bases para entender mejor los
cifradores modernos, que, en esencia, están construidos sobre los mismos principios.
sustitución arbitraria en ese esquema en lugar de una fija. Este simple cambio haría
tampoco, porque existe otra línea de ataque, de criptoanálisis, por el que caen
mensaje.
En efecto, todos los lenguajes humanos tienen una gran redundancia. Por ejemplo,
Como puede observarse, las letras más frecuentes son la E, la A y la S. Para atacar
que probar en los lenguajes más comunes, inglés, español, alemán, etc.
como n-gramas. En general, para textos «genéricos» se observa que los tres
digramas con mayor frecuencia relativa en castellano son DE , ES y , a los que les
siguen LA, OS, AR, UE, RA, RE, ER, AS, ON, ST y AD , en orden decreciente.
Por otro lado, los trigramas más comunes son, de nuevo de mayor a menor
Asimismo, existirán digramas con frecuencia nula como sería el caso de QA, KK,
ÑL, WZ, etc., pues no forman parte de palabra alguna ni son término e inicio de dos
Veamos ahora cómo podemos utilizar más de un alfabeto para mejorar nuestros
cifradores de sustitución.
Ya hemos visto que en el cifrado César la letra D del texto en claro se cifraba
¿Qué gran ventaja tiene este enfoque? Pues que el criptograma que se produce
ahora ya no existe una correspondencia única entre los caracteres del texto en claro
y los de un alfabeto de cifrado: una letra concreta se cifrará como un carácter u otro,
Este procedimiento de cifrado será el origen de, entre otros, al cifrador de Vigenère,
mensaje.
Cifrador de Vigenère
a esta regla son los no periódicos, también llamados cifradores de clave continua. Su
ejemplo más característico es el cifrador de Vernam, que posee una clave de igual
El sistema funciona sumando a cada carácter del texto en claro uno de los caracteres
Clave: RUNRUNRUNRUNRUNRUNRUNRUNRU...
Criptograma: KIOVIEEIGKIOVNURNVJNUVKHVMGZIA
Hamlet, «To be or not to be, that is the question». La clave es RUN, que tendrá,
obviamente, un periodo de 3. Así, el primer carácter del texto en claro (T) se le aplica
un desplazamiento equivalente al primer carácter de la clave (R), dando lugar a T +
Es importante observar que letras repetidas del texto en claro se cifran habitualmente
una misma letra del criptograma puede ser originada por letras diferentes del texto en
claro.
Para acelerar este proceso de cifrado, se han utilizado varias técnicas diferentes a lo
largo de los años, desde ruedas de cifrado (que, a pesar de ser útiles, era necesario
primera letra del mensaje a cifrar en la primera fila de la tabla, y haciendo lo mismo
con la primera letra de la clave en la primera columna. Es decir, las letras del
Ejemplo
MEENCANTAESTAASIGNATURA
U N I R U N I R U N I R U N I R U N I...
Vigenère, no hay más que proceder de forma inversa. Ahora los papeles de filas y
2.En ese momento, nos movemos hacia la izquierda, hasta llegar a la columna de
Clave de cifrado, donde encontraremos ya la letra correspondiente del mensaje
descifrado.
Por ejemplo, descifremos las primeras letras del ejemplo anterior. El primer carácter
Ahora bajamos por esa columna hasta encontrar la primera letra del criptograma, G,
solución correcta fue publicada en 1863, algo más de trescientos años después de
Existen dos métodos básicos para conseguir este objetivo: el método de Kasiski y
el índice de coincidencia (IC). Veamos a continuación más detalles sobre ellos.
El método de Kasiski
patrones es mayor o igual que 3, es probable que esas palabras sean también
Esto significa que han sido cifrados con la misma sustitución, por lo que la distancia
entre las posiciones de comienzo de las palabras iguales será un múltiplo del periodo
periodo que se usó para cifrar el texto debe ser divisor de 9 y 6, lo que sólo deja al 3
como opción. En nuestro caso la clave es «RUN» que es, efectivamente, de tres
Podemos inferir aún más datos: como la clave es de longitud 3, sabemos que las
letras en primera, cuarta, séptima,... posición están cifradas bajo el mismo carácter
de la clave, aunque aún no sepamos cuál es. Lo mismo aplica para las posiciones
segunda, quinta, octava, etc. y tercera, sexta, novena, etc., cifradas cada una de
estas series con otra letra diferente. De esta forma, podemos separar el cifrado
longitud de la clave. En cada uno de ellos podemos aplicar las técnicas de análisis de
múltiplo de la clave o, incluso, que sea un número primo. En estos casos, este
En la práctica, para evitar en lo posible estas pistas falsas, se debe procurar contar
buscar coincidencias largas, de una longitud mayor o igual a 3 y que se repitan más
de una vez.
Índice de Coincidencia
Guerra Mundial.
puede definirse como la probabilidad de que dos letras de un texto cifrado elegidas al
azar sean la misma, y se calcula como:
Donde n es la longitud del texto cifrado y fi la cantidad de veces que aparece la letra
como la siguiente:
Con esta tabla, sólo falta calcular el IC del texto cifrado que queremos romper y
buscar el valor obtenido en la tabla. Si está, por ejemplo, alrededor del valor IC =
periodo 3. Por otro lado, si obtenemos un valor IC = 0,072 este método nos dice
periodo 1), por lo que el IC sirve, en primer lugar, para determinar si se trata de un
cifrado mono o polialfabético y, en segundo lugar, para estimar el periodo del mismo
Ejemplo:
C = GUVQA EQORN GVCOG PVGUG IWTQF GSWGG NRTKO GTCNW OPQSW GFGUE
KHTGG UVGOG PUCLG ANQRW DNKSW GGPGN HQTQF GNCCU KIPCV WTCVG PFTCO
2.Aplicación del método de Kasiski para corroborar que el criptograma fue obtenido
con un cifrador polialfabético y en ese caso, obtener una primera estimación del
periodo del cifrador.
3.Tanto si el método anterior falla como si no, conviene calcular en cualquier caso
también el índice de coincidencia del texto para comprobar si se obtienen los
mismos resultados.
mecánicos de cifrado, que hacían uso de rotores o ruedas para realizar un cifrado
polialfabético. Esto daba lugar a un número muy alto, varios millones, de posibles
alfabetos.
ataques disponibles eran totalmente manuales y poco más sofisticadas que las que
varios años.
De estas máquinas, que se utilizaron sobre todo para enviar mensajes cifrados
De aspecto físico era muy similar al de la Figura 4, esta máquina fue inventada por
rotores (o ruedas dentadas) montados sobre un eje, alrededor del que había 26
contactos eléctricos, uno por cada letra del alfabeto inglés. Disponía además de un
teclado similar al de la máquina de escribir, por lo que, al pulsar cada letra, aparecía
otra en una consola y que simultáneamente, y según las versiones, iba escribiendo
rotor avanzaba una posición y sólo cuando éste había realizado una rotación
además, que existieron versiones especiales de la máquina con 10 rotores, para uso
Para descifrar el mensaje, era necesario que el receptor dispusiera de otra máquina
Enigma y una copia del libro de códigos que contenía la posición inicial de los
rotores para ese día. Obviamente una regla de oro para cualquier militar alemán en
este periodo era que nunca debe permitirse que la máquina y el libro de códigos
Enigma y el libro de códigos era el material más valioso que iba a bordo del
elegir entre salvar sus vidas o la máquina Enigma, la máquina era prioritaria.
Inglaterra. Al frente del dicho grupo se encontraba el famoso Alan Turing, brillante
Este equipo de élite consiguió, por fin, tras varios años de trabajo, romper el cifrado
Enigma. Por supuesto, éste hecho se mantuvo en secreto, pues los alemanes
Así pues, los aliados esperaron una ocasión propicia para tratar de dar un golpe
Alto Mando esperaban un ataque aliado masivo en Calais. Este conocimiento fue
multiplicar, así, el efecto del ataque sobre el ejército alemán. Este hecho supuso,
Proyecto M4
(M4, de ahí el nombre del proyecto), que fueron interceptados en el Atlántico Norte
del proyecto pueden descargarse clientes open source para Unix y Windows.
Accede al vídeo:
https://www.youtube.com/embed/g5LZvytKrys
Enigma
Año: 2001
Accede al vídeo:
https://www.youtube.com/embed/O9jqjbp1nxg
Hinsley, F.H. & Stripp, A. (1993). Codebreakers: The Inside Story of Bletchley Park.
Este libro narra, en primera persona, la historia de Bletchley Park, el lugar en que se
clave que los británicos dieron a todas las transmisiones de inteligencia de los
enemigos del bando aliado, cuentan cuál fue su importancia y cómo se descifraron
único objetivo de romper códigos secretos. Como vino a decir Winston Churchill
sobre Bletchley Park, «esas instalaciones y la gente que allí trabajó fueron el arma
secreta aliada que permitió ganar la guerra». Nada más y nada menos.
Este interesante enlace dispone de simulador online de una máquina Enigma de tres
rotores. Permite configurar las claves, los rotores y sus posiciones iniciales y teclear
qué camino recorre con cada letra. Además incluye opciones para enviar el texto
A. De sustitución y transposición
B. Mono y polialfabéticos
C. Mono y poligrámicos
correspondiente?
monoalfábeticos es:
A. Índice de coincidencia
B. Método de Kasiski
C. Análisis de frecuencia
D. Análisis de digramas
A. La A y la S
B. La A y la O
C. La A y la E
D. La E y la O
A. Polialfabético
B. Monoalfabético
D. De transposición
método de Vigenère, que puede ser calculado fácilmente a mano, con la clave K =
A. OHBATIPLNYBWSMNFPAJLMBRAEHWQTOJXVCGA
B. OHBITIPLNYBWSMNFPHBLMBRAEHWQTOJXVCGA
C. AEHWQTOJXVCGAJKFPHBLMBRAEHWQTOJXVCGA
D. FPHBLMBRAEHWMNFPHBLMBRAEHWQTOJXVCGA
método de cifrado pero no la clave con la que fue cifrado. ¿Qué procedimiento
A. Índice de coincidencia
B. Método de Kasiski
C. Análisis de frecuencia
D. Fuerza bruta
tienes más datos, por lo que decides calcular el índice de coincidencia del texto. El
monoalfabético
que sabes a ciencia cierta que fue cifrado con un esquema clásico. De acuerdo al
método de Kasiski, ¿cuáles son los posibles valores para el periodo (número de
A. 1, 2, 4, 8
B. 1, 2, 3, 4, 6, 12
C. 1, 2, 8, 16
D. 1, 2, 8
10. El criptoanálisis por parte del bando aliado de la máquina Enigma jugó un papel
importante en el desenlace de la Segunda Guerra Mundial. ¿Qué matemático inglés
A. Winston Churchill
B. Arthur Scherbius
C. Alan Turing
D. Kurt Gödel