viernes, 24 de noviembre de 2017

Criptografía (LXXIII): Solución Reto 6

El  enunciado del sexto reto que puse en este post era el siguiente: "Allá por el siglo IX, Al-Kindi, un filósofo árabe, fue el primero que se dio cuenta, o al menos que lo documentó, de que se podía atacar un texto cifrado mediante la estadística del lenguaje en el que estuviera escrito el texto en claro, ya que ciertas características del mismo se trasladaban al criptograma. Por ello, entiendo que podría ser considerado como el padre del criptoanálisis e incluso como el primer "hacker" de la historia. El análisis de frecuencias consiste, básicamente, en estudiar la frecuencia de aparición en el criptograma de caracteres o símbolos y de grupos de ellos (de ahí el título de este reto) con relación a la frecuencia de las letras y grupos de éstas en el lenguaje en el que esté escrito el texto en claro. ¿Puedes descifrar el criptograma asociado al reto utilizando el análisis de frecuencias?".

Este reto es de criptografía y su solución es:

1.- La frecuencia de aparición (número y porcentaje) de los símbolos que se observa en el criptograma y, por otra parte, la frecuencia de aparición de las letras (porcentaje) en el idioma español son las siguientes:
Esto nos da una pista muy importante sobre qué símbolos del criptograma pueden corresponderse con las letras del texto en claro:

1.1.- Los candidatos a ser las dos letras más frecuentes en español ("E" y "A") son fácilmente reconocibles con un análisis de frecuencias de los símbolos, ya que son las que presentan una significativa mayor frecuencia de aparición en dicho idioma, por lo que vamos a establecer la hipótesis inicial de que los dos primeros símbolos con mayor frecuencia de aparición en el criptograma son los candidatos a ser la "E" y la "A", respectivamente, en el texto en claro.

1.2.- A partir de ahí, la tabla de frecuencias anterior nos puede indicar qué símbolos del criptograma son candidatos a ser el resto de letras en el texto en claro, pero en criptogramas no muy largos (el del reto tiene una longitud de 132 símbolos), aunque constituye una muy buena base de partida, esto no es fácil de determinar únicamente con el análisis de frecuencias de los caracteres o símbolos (monogramas), por lo que tendremos que acudir al análisis de bigramas, trigramas, etc. (grupos de dos caracteres o símbolos, de tres, etc.) e incluso de aquellos grupos que podrían formar palabras, por lo que ahora le toca el turno a eso que da título a este reto: "Dime con quién andas y te diré quién eres".

2.- Una vez que hemos establecido los candidatos más probables a ser la "E" y la "A" en el texto en claro y antes de realizar un análisis de frecuencias de los bigramas y trigramas, nos fijamos en que el criptograma comienza con el candidato a ser la "E", por lo que el segundo símbolo (frecuencia de aparición del 8,33%) es muy probable que se corresponda con una de las consonantes de mayor frecuencia ("S", "R" o "N", más probable por su frecuencia de aparición que sea la "S"), y muy poco probable que se corresponda con la "O" (la otra vocal con mayor frecuencia de aparición en español). Por tanto, completamos nuestra hipótesis inicial de la siguiente manera:
Con esta hipótesis una primera aproximación al texto en claro sería:
A la vista del resultado obtenido hasta ahora, podríamos pensar que el tercer símbolo del criptograma se corresponde con la letra "T" (el criptograma empezaría por "ESTE") y que los dos símbolos que se repiten consecutivamente en la undécima fila se corresponden con la "L" (podría leerse "ELLOS").

El tercer símbolo presenta una frecuencia de aparición del 5,30%, mientras que los dos símbolos que se repiten consecutivamente también aparecen con una frecuencia del 5,30%. En ambos casos esta frecuencia podría ser coherente con las de la letra "T" (4,63%) y "L"(4,97%) en español, respectivamente.

Incluyendo estos dos símbolos en nuestra hipótesis, una segunda aproximación al texto en claro sería:
3.- Y ahora realizamos el análisis de frecuencias de bigramas y trigramas:

Hay doce bigramas que se repiten 3 o más veces cada uno de ellos en el criptograma, los siguientes:

- "OS" (según nuestra hipótesis) en 5 ocasiones. Bigrama muy frecuente en español.

"LO" (según nuestra hipótesis) en 4 ocasiones. Bigrama frecuente en español.

"TE" (según nuestra hipótesis) en 4 ocasiones. Bigrama frecuente en español.

"ES" (según nuestra hipótesis) en 3 ocasiones. Quizás el bigrama más frecuente en español. 

"EL" (según nuestra hipótesis) en 3 ocasiones. Bigrama muy frecuente en español.

- Tres que terminarían según nuestra hipótesis con la letra "E", los siguientes: 
El símbolo que precede a la "E" en el bigrama enmarcado en color rojo en la figura anterior y que aparece en 4 ocasiones bien podría corresponderse con la letra "D", ya que: el bigrama "DE" es posiblemente el más frecuente en español que termina en "E", en la fila undécima podría leerse "DE ELLOS", la frecuencia de aparición de dicho símbolo en el criptograma es del 4,55% (lo que no estaría muy alejado de la frecuencia de aparición de la "D" en el idioma español: 5,86%) y el trigrama "ADO" que formaría en la fila cuarta es muy común en español.

El símbolo que precede a la "E" en el bigrama enmarcado en color verde en la figura anterior y que aparece en 3 ocasiones podría ser la "U", pero me surgen dudas porque, aunque el bigrama "UE" es frecuente en español (detrás de "DE" posiblemente el segundo más frecuente terminado en "E"), su frecuencia de aparición en el criptograma es muy superior (6,06%) a la que se espera encontrar para la "U" en un texto escrito en español (3,93%).

El símbolo que precede a la "E" en el bigrama enmarcado en color azul en la figura anterior y que aparece en 3 ocasiones no me dice gran cosa considerado individualmente, sólo que por su frecuencia de aparición (6,06%) podría ser "R", "N" o "I". No obstante, como este bigrama aparece de forma consecutiva en la duodécima fila yo diría que hay que descartar la "I" y, por tanto, ese símbolo es candidato a ser "R" o "N".

- Un bigrama que involucra a los dos últimos de los símbolos analizados, que aparece en 3 ocasiones (enmarcado en color naranja en la figura siguiente), y que parece indicar que estos se corresponderían con "U" y "N", respectivamente, leyéndose "UN" en el texto en claro.
- Los otros tres bigramas que se repiten en tres ocasiones, de momento, no me dicen gran cosa, pero creo que con lo obtenido hasta el momento estamos ya en disposición de intentar descifrar casi completamente el criptograma.

Recapitulamos:
Por tanto, una tercera aproximación al texto en claro sería la siguiente;
Podríamos seguir con el análisis de frecuencias de bigramas y trigramas, ya que hay algunos que serían muy fáciles de obtener (por ejemplo, el trigrama "QUE" es el más frecuente en español y hay un símbolo que lo formaría dos veces), pero es que a simple vista se pueden leer ya palabras: "ATAQUE", "TEXTO", "ANALISIS",..., y estableciendo el candidato a ser la "I" el único símbolo que queda con frecuencia de aparición de  6,06% es más que probable que sea la "R". Además, considerando todo lo anterior y la frecuencia de aparición de los símbolos que quedan creo que es fácil establecer otros candidatos, por ejemplo el que se correspondería con la "C", y con todo ello proceder ya a descifrar completamente el criptograma:
Por tanto, la solución al reto 6 es:

"ESTE ES UN EJEMPLO DE ATAQUE A UN TEXTO CIFRADO MEDIANTE UN ANALISIS DE FRECUENCIAS DE LOS CARACTERES O SIMBOLOS Y GRUPOS DE ELLOS QUE FIGURAN EN EL CRIPTOGRAMA".

******** PRÓXIMO RETO
Reto 7:     "Descifrando Enigma".

No hay comentarios:

Publicar un comentario