En criptografía, el cifrado César, también conocido como cifrado por desplazamiento, código de César o desplazamiento de César, es una de las técnicas de cifrado más simples y más usadas. Es un tipo de cifrado por sustitución 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 César muchas veces puede formar parte de sistemas más complejos de codificación, 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
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: A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z
Texto codificado: G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C D E F
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 contrario.
Texto original: TUTORIALES EN LINEA
Texto codificado: ZAZUXÑGQKY KS QÑSKG
La codificación también se puede representar usando aritmética modular, transformando las letras en números, de acuerdo al esquema A = 0, B = 1,..., Z = 26.1 La codificación de la letra x con un desplazamiento n puede ser descrita matemáticamente como:
La decodificación se hace de manera similar:
La operación de sustitución se conserva siempre a lo largo de todo el mensaje, por lo que el cifrado se clasifica como un cifrado de tipo sustitución monoalfabética, en oposición a la sustitución polialfabética.
Descifrado
Desplazamiento | Posible mensaje original |
0 | Ep exeuyi |
1 | Do dwdtxh |
2 | Cn cvcswg |
3 | Bm bubrvf |
4 | Al ataque |
5 | Zk zszptd |
...... | |
24 | Gr gzgwak |
25 | Fq fyfvzj |
El descifrado del cifrado César puede hacerse fácilmente, incluso si sólo se dispone de un texto cifrado corto. Se pueden considerar dos situaciones:
Un atacante conoce (o adivina) que se puede utilizar alguna forma simple de sustitución de letras, pero no sabe que se usa el cifrado César.
Un atacante sabe que se ha empleado el cifrado César, pero no conoce el valor del desplazamiento.
En la primera situación se pueden aplicar dos métodos. El primero se basa en un ataque de fuerza bruta: como sólo existe un determinado número de valores de desplazamiento, en español, se pueden probar todos y cada uno hasta encontrar un mensaje coherente. Una forma de hacer esto es usar una tabla y en cada renglón escribir el texto con un desplazamiento diferente. El ejemplo de texto cifrado dado en la tabla de la derecha es "Ep exeuyi"; se puede reconocer el mensaje original a simple vista con un desplazamiento de cuatro.
En la segunda situación, el proceso de descifrado es aún más directo. Como sólo hay un número limitado de posibles desplazamientos, se pueden probar todos por orden, en un ataque por fuerza bruta. Una forma de hacerlo es escribir una tabla en la que se descifra un pedazo del texto con todos los desplazamientos posibles — esta técnica a veces se conoce como «completando el componente claro». En el ejemplo de la tabla de la derecha se intenta decodificar el texto cifrado «Ep exeuyi»; en este caso, el texto coherente se reconoce instantáneamente a simple vista, encontrándose codificado por un desfase de cinco letras hacia la izquierda. Otra forma de obtener la solución mediante este método es escribiendo debajo de cada letra el alfabeto en orden inverso y empezando por esa letra. Este proceso se puede acelerar usando cintas verticales con el alfabeto escrito en orden inverso y alineado, de modo que formen el texto cifrado en una fila. Así, el texto coherente debe aparecer en alguna de las filas.
Distribución de las letras en un texto común en español.
El segundo método de descifrado consiste en comparar las distribuciones de frecuencias de las letras (análisis de frecuencia). Representando las frecuencias de las letras en el texto cifrado y conociendo la distribución de letras en el idioma original del mensaje original, una persona puede determinar fácilmente el valor del desplazamiento. Por ejemplo, en español, las frecuencias de las letras E y A (las más frecuentes) y las de la K y la W (las menos frecuentes) son particularmente distinguibles. Los ordenadores también pueden hacerlo a base de mediciones, haciendo que la distribución actual coincida con la distribución esperada (se puede utilizar por ejemplo un análisis de distribución chi cuadrado).
La mayoría de las veces sólo se encontrará un mensaje descifrado. Sin embargo, cuando el mensaje es muy corto pueden aparecer varias palabras descifradas. Por ejemplo, "ezaz" puede ser descifrado como "topo" o "jefe"; de manera similar "xzyz" puede ser descifrado como "cede" o "mono".
Repetir el proceso de cifrado varias veces no mejora la seguridad. Esto se debe a que usar dos desplazamientos, por ejemplo el desplazamiento A y el desplazamiento B, sería equivalente a usar un desplazamiento de A + B. En terminología matemática, el cifrado repetido con diferentes claves forma un grupo.
Comentarios