La mayoría de cifrados referentes a trabajos históricos o de ficción, pertenecen a una misma familia – los cifrados monoalfabéticos. Alguna vez hablamos de la vulnerabilidad principal de este método de cifrado, el cual es una posibilidad de crackeo para el cifrado, analizando el patrón de frecuencia del símbolo. Esto es algo se planeó incluso mucho antes de que existieran las computadoras.
Uno de los cifrados más famosos e interesantes diseñado para eliminar este fallo, es el cifrado Vigenere. El cual fue atribuido a un diplomático francés del siglo XVII, pero en realidad fue creado por dos individuos independientes. Curiosamente, Blaise Vigenere no fue uno de ellos, él solo le propuso este cifrado a Enrique III, y el cifrado recibió su nombre actual en el siglo XIX.
La primera referencia del cifrado se puede encontrar en el libro de Leon Battista, Tractate on Ciphers (Tratado de cifrados, en español). Es famoso por ser el primero en proponer la teoría, que más adelante, se convertiría en la perspectiva linear de las pinturas. En sí, la idea de éste era muy sencilla, pero llevó al cifrado a un nivel completamente nuevo, marcando el comienzo de los cifrados polialfabéticos.
Historia de la seguridad #informática: Cómo un cifrado del siglo XVII se convirtió en la base de un cifrado irrompible del siglo XX
Tweet
En un cifrado monoalfabético, cada símbolo del texto se sustituye por un símbolo constante del texto cifrado – es como utilizar otro alfabeto. No importa si los reemplazos son aleatorios o basados en ciertos valores del alfabeto (como el cifrado César), o si son letras, números o símbolos.
Está descrito claramente en el libro de “Los Bailarines”, de Arthur Conan Doyle, los símbolos sustitutivos pueden ser incluso pictogramas, pero eso no salva al cifrado de la vulnerabilidad común: alguien puede adivinar las palabras claves utilizadas en el texto cifrado, o analizar la frecuencia de ciertos símbolos del mensaje, o seguir adivinando.
Una vez, tu humilde servidor utilizó este método– solo por diversión – para descifrar un correo electrónico que recibió en un esquema de cifrado alternativo. Y no fue tan difícil de descifrar, incluso sin tener una alguna habilidad especial o poderes informáticos específicos.
Un cifrado polialfabético utiliza un número de diferentes alfabetos sustitutivos en ciclos. Toma el cifrado de Vigenère, y aquí está el patrón: usamos el cifrado César como la base y una tabla que incluye todos los valores posibles:
En consecuencia, tenemos 26 alfabetos diferentes sustitutivos y ahora necesitamos decidir el principio de sustitución. Un simple cambio al siguiente alfabeto por cada letra nueva, sería un elemento de sofisticación adecuado, pero una vez que utilicemos la frase clave, el cifrado se vuelve muy complicado de romper.
Y ya que empezamos con historias antiguas, vamos a utilizar la palabra VINTAGE como palabra clave. Para poder cifrar una frase como THINK ABOUT (PIENSA EN), necesitamos repetir la frase clave hasta que coincida con el número de caracteres del texto:
Ahora, por cada uno de los símbolos de la fuente de texto, empleamos el sustituto, el cual está localizado en la fila empezando con la letra de la palabra clave y en la columna empezando con la letra del texto. Por ejemplo, la primera letra es reemplazada por el símbolo, el cual está localizado en el cruce de la columna T y la fila V, el cual es “0”.
Entonces, para hacer el descifrado el proceso es completamente al revés: buscamos las filas que corresponden a las letras de la palabra clave, buscamos las letras de cifrado y luego escribimos las letras que marcan las columnas, así obteniendo el texto.
Es fascinante que la idea original diseñada por Alberti, presuponía un disco especial con anillos rotadores con el alfabeto, y la tabla que describimos antes, fue propuesta después por otro contribuidor. El disco descrito en el tratado de 1446 fue utilizado por los Estados Confederados durante la guerra civil en Estados Unidos. Ya viste el disco en la imagen que está al principio del texto.
Fuente de imagen: wikipediaEn general, el cifrado fue renombrado como fiable, incluso fue dictado como “irrompible” por el matemático Charles Lutwidge Dodgson (también conocido como Lewis Carrol), y alabado por la revista “Scientific American Magazine” (Revista Científica Americana, en español). Aunque su nombre más famoso fue introducido después como “The Gronsfeld Cipher” (en español, el cifrado gronsfeld). La gran diferencia a su predecesor es la limitación del reemplazo de alfabetos a 10 dígitos, y por el hecho de que la palabra clave era un número.
Lo interesante es que el cifrado Vigenere era susceptible a un análisis críptico con ciertas condiciones previstas. Al evaluar algunas características, era posible definir la longitud de la clave, y luego, al analizar las filas de letras, cifradas por la misma fila de la tabla, uno podía emplear un método estándar basado en la frecuencia de ciertas letras del lenguaje.
El primero en efectuar un ataque exitoso en la modificación del cifrado Vigenere en 1854, fue Charles Babbage, un pionero de la informática, pero el análisis fue publicado nueve meses después por otro investigador, Friedrich Kasiski.
Por más raro que parezca, esto ayudó a fortalecer el cifrado. Una de las mejoras fue el uso de la palabra clave, el cual es igual a la longitud del propio mensaje, eliminando de este modo, la posibilidad de un análisis de frecuencia.
Sin embargo, esta actualización trajo consigo otra vulnerabilidad: el uso de texto sensible como frase clave, aportaba al criptoanalista información estadística sobre la clave, sirviendo como una pista al momento de querer descifrar el texto.
Pero esta idea aceleró el proceso para la siguiente mejora – el uso de secuencias de símbolos aleatorios como palabra clave.
Como resultado, esta idea fue lanzada con el concepto de contraseña de un solo uso (en inglés, OTP One-Time Password). Este tipo de cifrados llegaron a volverse irrompibles y eran utilizados en la esfera de la criptografía civil y militar. Pero esta historia se las contaré otro día.