Kitab al Muamma | |
---|---|
Kitab al Muamma | |
Los autores | Khalil ibn Ahmad al-Farahidi |
fecha de escritura | siglo VIII |
Idioma original | árabe |
País | |
Contenido | sobre el método de cifrado criptográfico |
Original | no conservado |
"Kitab al-Muamma" ( árabe كتاب المُعَمَّى - "El libro del lenguaje secreto" ) es un libro árabe compilado en el siglo VIII por Khalil ibn Ahmad al-Farahidi basado en su propio método de encriptación .
Desde el siglo VIII d.C. mi. El desarrollo de la criptografía tiene lugar principalmente en los países árabes: fueron los árabes quienes primero comenzaron a utilizar la estadística y la teoría de la probabilidad de una forma u otra. Se cree que el famoso filólogo árabe del siglo VIII, Khalil ibn Ahmad al-Farahidi, fue el primero en llamar la atención sobre la posibilidad de utilizar frases de texto plano estándar para descifrar textos.
Basado en el método de descifrado que descubrió, escribió el libro "Kitab al-Muamma".
Un día, Khalil ibn Ahmad necesitaba descifrar un criptograma griego que le había sido enviado por el emperador bizantino . Explicó su método de descifrado así:
Me dije a mí mismo que la carta debería comenzar con las palabras "En el nombre de Alá" o algo así. Entonces, inventé las primeras letras sobre la base de esto, y todo resultó ser correcto.
En otras palabras, su decisión se basó en el texto sin formato conocido (correctamente adivinado) en el mensaje que comenzaba : ).
Este método de ataque se utilizó en la Segunda Guerra Mundial.[ aclarar ] para hackear las comunicaciones alemanas. [una]
El método de cifrado inventado por al-Farahidi es la parte sonora de un idioma ya conocido (en el original, el árabe ). El diccionario incluye algunos componentes del idioma de origen. Se aplica la regla de selección de palabras y letras, según la cual lo anterior no debe estar sujeto a las reglas de los estudios fonológicos, que al-Farahidi recibió anteriormente en sus escritos. Para ello, utilizó sus conocimientos de música.
Al distinguir entre signos y significados, pudo crear un lenguaje de signos por su cuenta. Esta diferenciación permitió proponer lo siguiente: hay sonidos regulares ( musicales ) y sonidos irregulares (aperiódicos), es decir, vocales y consonantes. Las consonantes fueron luego clasificadas según su punto de articulación, comenzando con los sonidos laríngeos y terminando con los labiales , mientras que las vocales permanecieron en el mismo grupo de sonidos. En el futuro, esta separación facilitó enormemente el proceso de encriptación. [2]
Más tarde, los criptógrafos árabes recurrieron al análisis de frecuencia de texto de al-Farahidi para calcular la frecuencia de las palabras en sus obras. [3]
Desafortunadamente, "Kitab al-Muamma" no se ha conservado, lo sabemos por referencias en los trabajos de otros científicos. El trabajo más famoso basado en el método de descifrado de Khalil ibn Ahmad es el trabajo de Abu Yusuf Yaqub ibn Ishaq ibn Sabba al-Kindi , un famoso filósofo, matemático y astrónomo, que se llama " Tratado sobre el descifrado de mensajes criptográficos ".
El método propuesto por Khalil ibn Ahmad contiene muchas innovaciones, incluido el uso de permutaciones y combinaciones de diferentes palabras (para enumerar todas las palabras árabes posibles sin usar vocales en ellas). [cuatro]
Pero todo el revolucionario y refinado sistema de criptoanálisis propuesto por al-Kindi cabe en dos breves párrafos:
“Una forma de leer un mensaje encriptado, si conocemos el idioma en el que está escrito, es tomar otro texto no encriptado en el mismo idioma, de aproximadamente una página, y luego contar la aparición de cada letra en él. Llamemos a la letra que ocurre con mayor frecuencia "primera", a la letra que se encuentra en segundo lugar en frecuencia de ocurrencia, la llamaremos "segunda", a la letra que se encuentra en tercer lugar en frecuencia de ocurrencia, la llamaremos "tercera", y así sucesivamente, hasta todas las letras diferentes en texto plano. Luego miramos el texto cifrado que queremos leer y ordenamos sus caracteres de la misma manera. Encuentre el carácter más frecuente y reemplácelo con la "primera" letra del texto sin formato, reemplace el segundo carácter más frecuente con la "segunda" letra, reemplace el tercer carácter más frecuente con la "tercera" letra, y así sucesivamente, hasta que se reemplazan todos los caracteres del mensaje cifrado, que queremos descifrar".
Además del tratado Al-Kindi , hay una obra no menos famosa: esta es una enciclopedia de 14 volúmenes " Shauba al-Ash " ("Una lámpara para ciegos en el oficio de un empleado"), que fue escrita por el erudito Shihab ad-Din Abu-l-Abbas Ahmad ibn Ali al-Qalqashandi en 1412. Todos los trabajos posteriores sobre criptoanálisis en los países árabes hasta el siglo X se basaron en uno de estos dos tratados: " Tratado sobre el desciframiento de mensajes criptográficos " o "Shaub al-Ash", ya que el trabajo de Khalil ibn Ahmad no ha sobrevivido. El autor describió todos los criptosistemas que conocía en ese momento. El trabajo proponía siete sistemas de cifrado que se hacían eco de las ideas inéditas de su predecesor , Ibn al-Duraihim , pionero en el análisis de frecuencia de letras. Estos son los sistemas de encriptación:
Estas son solo algunas de las formas de cifrar el texto de origen para que sea más difícil de descifrarlo, pero ya está cifrado. Pero había que especificar el sistema de cifrado (es decir, la clave ) para que la persona a la que iba destinado el mensaje pudiera descifrarlo rápidamente.
Por primera vez en la historia de los cifrados, esta enciclopedia proporcionó una lista de sistemas de permutación y sistemas de sustitución. Pero lo más importante es que por primera vez se presentó una descripción del estudio criptoanalítico del texto cifrado. Aparentemente, fue compilado después de un estudio intensivo y escrupuloso del Corán por gramáticos árabes. Contaron la frecuencia de aparición de las palabras, estudiaron la fonética de las palabras (para establecer el origen morfológico de una palabra: árabe o prestado de otro idioma). Al compilar los diccionarios, los autores tuvieron que tener en cuenta la frecuencia de aparición de las letras, así como qué letras pueden estar una al lado de la otra y cuáles nunca aparecen en el vecindario. Reuniendo toda la información acumulada y partiendo de la idea de Khalil ibn Ahmad, Kalkashandi describió en su libro una forma de descifrar el mensaje:
Si desea leer un mensaje que recibió en forma encriptada, comience a contar las letras y luego cuente cuántas veces se repite cada carácter. Si el inventor del cifrado fue muy cuidadoso y escondió todos los límites entre las palabras en el mensaje, entonces la primera tarea es encontrar el signo que separa las palabras. Se hace así: se toma una letra y se trabaja en ella, asumiendo que la siguiente letra es un signo de división de palabras. Así es como se estudia todo el mensaje, teniendo en cuenta las diversas combinaciones de letras a partir de las cuales se pueden componer palabras. Si funciona, entonces está bien; si no, entonces tomas la siguiente letra, y así sucesivamente, hasta que puedas colocar una marca de división entre las palabras.
Luego, debe encontrar qué letras aparecen con mayor frecuencia en el mensaje y compararlas con un patrón de frecuencia de letras. Cuando ve que una letra aparece con más frecuencia que otras en un mensaje dado, asume que esta es la letra " Alif ".
Luego asume que la siguiente letra más común será " Lam ". La exactitud de su suposición debe ser confirmada por el hecho de que en la mayoría de los contextos la letra "Lam" sigue a la letra "Alif".
Las primeras palabras que intente adivinar en el mensaje deben tener dos letras. Esto se hace evaluando las combinaciones de letras más probables. Escribe sus equivalentes cada vez que aparecen en un mensaje. Debe aplicar exactamente el mismo principio en relación con las palabras de tres letras. Escribe los equivalentes de todo el mensaje. El mismo principio se aplica a las palabras que constan de cuatro y cinco letras. Siempre que surja alguna duda, se deben hacer dos o tres conjeturas, o más, y escribir cada una de ellas hasta que se confirme con otra palabra.
En otras palabras, Kalkashandi comienza diciendo que el criptoanalista debe conocer el idioma en el que está escrito el criptograma. Además, se compila una descripción detallada de sus características lingüísticas (Kalkashandi usa el árabe como "el más noble y hermoso de todos los idiomas"). A esto le sigue una lista de letras que nunca pueden estar juntas en una palabra y letras que rara vez aparecen en el vecindario. También se consideran las combinaciones de letras que no se pueden encontrar en las palabras. Las letras se enumeran en último lugar en orden de "la frecuencia de su uso en el idioma árabe a la luz de los resultados del estudio del Sagrado Corán". El autor incluso señala que "en obras no relacionadas con el Corán, la frecuencia de uso puede ser diferente". [7]
Kalkashandi dio un ejemplo de cómo descifrar un cifrado: un criptograma descifrado consta de dos líneas poéticas cifradas con símbolos convencionales. En conclusión, Kalkashandi señaló que no se utilizaron ocho letras y que estas son las letras que se encuentran al final de la lista compilada por frecuencia de aparición. Enfatizó: “Sin embargo, esto es un mero accidente: una carta puede estar colocada en el lugar equivocado, que debería ocupar en la lista anterior”. Entonces, Kalkashandi dio un buen ejemplo del uso del análisis estadístico de texto en el cifrado de mensajes. Cabe señalar que este método se ha utilizado con éxito para descifrar mensajes cifrados mediante un método alfabético único (método monoalfabético) hasta el día de hoy, pero no es criptográficamente seguro . [ocho]