RSS

Archivo de la categoría: Lectoescritura

La codificación de César

La encriptación1 es el proceso para convertir en ilegible la codificación de texto de una información considerada importante y que debe protegerse de miradas indiscretas o no autorizadas. La información, una vez encriptada, sólo puede ser leída aplicándole una clave o contraseña de desencriptación (operación opuesta a la codificación de encriptación).

En esencia, la criptografía trata de enmascarar las representaciones caligráficas de una lengua, de forma discreta. Si bien, el área de estudio científico que se encarga de ello es la Criptología.

Para ello existen distintos métodos, en donde el más común es el cifrado. Esta técnica enmascara las referencias originales de la lengua por un método de conversión gobernado por un algoritmo que permita el proceso inverso o descifrado de la información.

Un ejemplo de encriptación muy simple es la que exponemos en este mismo texto que ahora está completamente oculto a tus ojos. Para desvelarlo tienes que pasar con el mouse sobre el texto como si estuvieras seleccionándolo.

Un ejemplo de encriptación muy simple es la que exponemos en este mismo texto que ahora está completamente oculto a tus ojos. Para desvelarlo tienes que pasar con el mouse sobre el texto como si estuvieras seleccionándolo. Éste es el párrafo que se menciona en el párrafo siguiente, que aparece oculto porque se lo escribión don el color de la tinta igual al del papel (blanco).

Por ejemplo, en el párrafo inmediato anterior, existe un texto completamente oculto que podrá ser visto (desvelado), si se arrastra el puntero del mouse sobre toda o una parte de ésta área.

El uso de esta u otras técnicas, permite un intercambio de mensajes que sólo puedan ser leídos por los destinatarios designados como coherentes. Un destinatario coherente es la persona a la que el mensaje se le dirige con intención por parte del remitente. Así pues, el destinatario coherente conoce el discretismo (propiedad de discreto) usado para el enmascaramiento del mensaje. Por lo que, o bien posee los medios para someter el mensaje criptográfico al proceso inverso, o puede razonar e inferir el proceso que lo convierta en un mensaje de acceso público. En ambos casos, no necesita usar técnicas criptoanalíticas.

En criptografía2, el cifrado César, también conocido como Cifrado por desplazamiento, Clave de César o Desplazamiento de César, es una de las técnicas de encriptación más simples y más usadas.

Es un tipo de cifrado por sustitución de letras en el que una letra en el texto original es reemplazada por otra letra que se encuentra un número fijo de posiciones más adelante en el alfabeto. Por ejemplo, con un desplazamiento de 3, la A sería sustituida por la D (situada 3 lugares a la derecha de la A), la B sería reemplazada por la E, etc.

Este método debe su nombre a Julio César, que lo usaba para comunicarse con sus generales. El Cifrado de César muchas veces puede formar parte de sistemas más complejos de codificación encriptada, como el Cifrado Vigenère, e incluso tiene aplicación en el sistema ROT13.

Como todos los cifrados de sustitución alfabética simple, el Cifrado César se descifra con facilidad y, en la práctica, no ofrece mucha seguridad en la comunicación.

Ejemplo de codificación/decodificación

La transformación se puede representar alineando dos alfabetos; el alfabeto cifrado es un alfabeto normal que está desplazado un número determinado de posiciones hacia la izquierda o la derecha. Por ejemplo, aquí el cifrado César está usando un desplazamiento de seis espacios hacia la derecha:

Texto original:   ABCDEFGHIJKLMNÑOPQRSTUVWXYZ

Texto codificado: GHIJKLMNÑOPQRSTUVWXYZABCDEF

Para codificar un mensaje, simplemente se debe buscar cada letra de la línea del texto original y escribir la letra correspondiente en la línea codificada. Para decodificarlo se debe hacer lo opuesto.

Texto original:   WIKIPEDIA, LA ENCICLOPEDIA LIBRE

Texto codificado: CÑPÑVKJÑG, QG KSIÑIQUVKJÑG QÑHXK

La codificación también se puede representar usando aritmética modular, transformando las letras en números, de acuerdo con el esquema A=1, B=2, C=3, … , X=24, Y=25, Z=26.3

El algoritmo de César

Es un algoritmo tremendamente simple: se realiza siempre la misma sustitución: letra por ; letra por ; letra por … Es decir, la A en el mensaje original pasaría a ser la D, en el mensaje cifrado.

La expresión matemática de este algoritmo es:  C = (m + 3) mod L donde C es el mensaje cifrado, m es el menaje en claro, 3 sería la contraseña (que no es tal), L es el número de letras del alfabeto en cuestión. Esta expresión supone que cada letra esta asociado a un número (A=1, B=2, C=3, …). L=26 en el inglés y L=27 en el español.

Se puede generalizar este algoritmo en el que el cifrado dependerá de dos números que determinarán la transformación afín. La expresión sería: E (a,b) (m) = (am + b) mod L donde los números a y b, son enteros y menores que L y además cumplen la condición mcd(a, N) = 1. La clave de cifrado es, pues, la formada por la pareja (a,b). Para el algoritmo de César la clave vale: k = (1,3).

Breve historia y uso práctico

El cifrado César recibe su nombre en honor a Julio César, que, según Suetonio, lo usó con un desplazamiento de 3 (tres).

Si tenía que decir algo confidencial, lo escribía usando el cifrado, esto es, cambiando el orden de las letras del alfabeto, para que ni una palabra pudiera entenderse. Si alguien quiere decodificarlo y entender su significado, debe sustituir la cuarta letra del alfabeto, es decir, la D por la A, y así con las demás.

Aunque César es la primera persona de la que se sabe documentalmente que haya usado este sistema, anteriormente ya se utilizaron otros cifrados por sustitución. El sobrino de Julio César, Augusto, también empleó el cifrado pero con un desplazamiento de uno:

Cuando escribía un texto cifrado, sustituía la B por la A, la C por la B y el resto de las letras de ese mismo modo, usando AA para la X.
Suetonio, Vida de Augusto 88

Hay indicios de que Julio César usaba también sistemas más complicados, y un escritor, Aulus Gellius, hace referencia a un tratado (ahora perdido) sobre el cifrado.

Hay incluso un tratado ingeniosamente escrito del gramático Probus referente al significado secreto de las letras en la composición de las  epístolas de César.
Aulus Gellius, 17.9.1–5

No se sabe cuán efectivo resultaba realmente el cifrado César en esa época, pero debió ser razonablemente seguro, ya que pocos enemigos de César habrían sabido leer, y mucho menos podrían haber llevado a cabo el criptoanálisis necesario. Asumiendo que el atacante pudiera leer el mensaje, no existen pruebas de la existencia de técnicas para solucionar este tipo de codificación.

Los textos que se presentan en esta nota han sido inspirados en notas escritas por sus autores en la Wikipedia en Español.

____________________

  1. Se prefiere el uso de la palabra cifrado en lugar de encriptación, debido a que esta última es una mala traducción del inglés encrypt.
  2. La criptografía (del griego κρύπτω krypto, «oculto», y γράφως graphos, «escribir», literalmente «escritura oculta».) es la técnica que altera las representaciones lingüísticas de un mensaje. Wikipedia.
  3. Luciano, Dennis; Gordon Prichett (January 1987). «Cryptology: From Caesar Ciphers to Public-Key Cryptosystems». The College Mathematics Journal 18 (1):  pp. 3. doi:10.2307/2686311.
 
3 comentarios

Publicado por en 9 abril, 2011 en Lectoescritura