Cifrado del César con clave

Cifrado del César con clave

El cifrado del César con clave surge para aumentar la seguridad del cifrado del César, es decir, la distancia de unicidad, incluimos en el alfabeto de cifrado una clave k que consiste en una palabra o frase que se escribe a partir de una posición p_0 del alfabeto en claro

Los caracteres repetidos de la clave no se utilizan. Una vez posicionada la clave en la posición indicada, se añaden las demás letras del alfabeto en orden y de forma modular, para obtener así el alfabeto de cifrado

En este tipo de cifrado se deja de cumplir la condición de desplazamiento constante

Ejemplo de cifrado del César con clave

Tomamos p_0 = 3 y la clave va a ser:

k = ESTOY ABURRIDO

Para cifrar usaremos:

C_i\equiv(M_i+b)\pmod{n}

Para descifrar usaremos:

M_i\equiv(C_i+n-b)\pmod{n}

En el alfabeto castellano, como hay 27 letras, n será 27

Tenemos el siguiente mensaje que queremos cifrar:

C=MENSAJE ENVIADO AYER

Sus caracteres en claro corresponden a la siguiente matriz:

\tiny\begin{pmatrix} 0& 1& 2& 3& 4& 5& 6& 7& 8& 9& 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20& 21& 22& 23& 24& 25& 26 \\ A& B& C& D& E& F& G& H& I& J& K& L& M& N& \tilde{N}& O& P& Q& R& S& T& U& V& W& X& Y& Z \\ \end{pmatrix}

A la matriz anterior le añadimos la clave, teniendo en cuenta que hay que eliminar los repetidos

\tiny\begin{pmatrix} 0& 1& 2& 3& 4& 5& 6& 7& 8& 9& 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20& 21& 22& 23& 24& 25& 26 \\ A& B& C& D& E& F& G& H& I& J& K& L& M& N& \tilde{N}& O& P& Q& R& S& T& U& V& W& X& Y& Z \\ & & & E& S& T& O& Y& A& B& U& R& I& D& \\ \end{pmatrix}

Ahora le añadimos las demás letras del alfabeto en orden y de forma modular, para obtener así el alfabeto de cifrado completo

\tiny\begin{pmatrix} 0& 1& 2& 3& 4& 5& 6& 7& 8& 9& 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20& 21& 22& 23& 24& 25& 26 \\ A& B& C& D& E& F& G& H& I& J& K& L& M& N& \tilde{N}& O& P& Q& R& S& T& U& V& W& X& Y& Z \\ W& X& Z& E& S& T& O& Y& A& B& U& R& I& D& C& F& G& H& J& K& L& M& N& \tilde{N}& P& Q& V \\ \end{pmatrix}

Obtenemos los siguientes resultados:

\begin{array}{l} (12+3)\pmod{27}\equiv 15 \\ (4+3)\pmod{27}\equiv 7 \\ (13+3)\pmod{27}\equiv 16 \\ (19+3)\pmod{27}\equiv 22 \\ (0+3)\pmod{27}\equiv 3 \\ (9+3)\pmod{27}\equiv 12 \\ (4+3)\pmod{27}\equiv 7 \\ (4+3)\pmod{27}\equiv 7 \\ (13+3)\pmod{27}\equiv 16 \\ (22+3)\pmod{27}\equiv 25 \\ (8+3)\pmod{27}\equiv 11 \\ (0+3)\pmod{27}\equiv 3 \\ (3+3)\pmod{27}\equiv 6 \\ (15+3)\pmod{27}\equiv 18 \\ (0+3)\pmod{27}\equiv 3 \\ (25+3)\pmod{27}\equiv 1 \\ (4+3)\pmod{27}\equiv 7 \\ (18+3)\pmod{27}\equiv 21 \end{array}

aplicando la transformación P+3\pmod{27} y consultando la segunda parte de la matriz se convierten en

\tiny\begin{pmatrix} 15& 7& 16& 22& 3& 12& 7& 7& 16& 25& 11& 3& 6& 18& 3& 1& 7& 21 \\ F& Y& G& N& E& I& Y& Y& G& Q& R& E& O& J& E& X& Y& M \\ \end{pmatrix}

Así nos queda que el mensaje cifrado es:

M=FYGNEIYYGQREOJEXYM

Desciframos el M anterior:

\begin{array}{l} (15+27-3)\pmod{27}\equiv 12 \\ (7+27-3)\pmod{27}\equiv 4 \\ (16+27-3)\pmod{27}\equiv 13 \\ (22+27-3)\pmod{27}\equiv 19 \\ (3+27-3)\pmod{27}\equiv 0 \\ (12+27-3)\pmod{27}\equiv 9 \\ (7+27-3)\pmod{27}\equiv 4 \\ (7+27-3)\pmod{27}\equiv 4 \\ (16+27-3)\pmod{27}\equiv 13 \\ (25+27-3)\pmod{27}\equiv 22 \\ (11+27-3)\pmod{27}\equiv 8 \\ (3+27-3)\pmod{27}\equiv 0 \\ (6+27-3)\pmod{27}\equiv 3 \\ (18+27-3)\pmod{27}\equiv 15 \\ (3+27-3)\pmod{27}\equiv 0 \\ (1+27-3)\pmod{27}\equiv 25 \\ (7+27-3)\pmod{27}\equiv 4 \\ (21+27-3)\pmod{27}\equiv 18 \end{array}

Consultamos la primera parte de la matriz

\tiny\begin{pmatrix} 12& 4& 13& 19& 0& 9& 4& 4& 13& 22& 8& 0& 3& 15& 0& 25& 4& 18 \\ M& E& N& S& A& J& E& E& N& V& I& A& D& O& A& Y& E& R \\ \end{pmatrix}

Obteniendo el C original:

C=MENSAJEENVIADOAYER

Al tener un mayor número de combinaciones de alfabetos, existe una mayor incertidumbre respecto de la clave. La distancia de unicidad de este cifrador será mayor y, por consiguiente, el sistema presentará una mayor fortaleza

Criptoanálisis del cifrado del César con clave

Es imposible establecer una relación matemática única y directa entre el alfabeto en claro y el alfabeto de cifrado. El único camino que nos queda consiste en llevar las estadísticas del lenguaje al criptograma, observando por ejemplo la frecuencia relativa de aparición de los caracteres en el texto cifrado

Este tipo de ataque estadístico será válido tanto para los cifrados de tipo monoalfabético con clave como para aquellos que no la tienen. Ahora bien, en la gran mayoría de los casos será necesario contar con una cantidad de criptograma bastante mayor que la del ejemplo anterior, una pizca de intuición y un poco de suerte

La distancia de unicidad viene dada por la relación entre la entropía de la clave H(K) y la redundancia del lenguaje D. Por tanto, si el alfabeto tiene n caracteres, existirán n! combinaciones de elementos de n, por tanto N=\frac{H(K)}{D}=\frac{\log_2{n!}}{D}

Si utilizamos la aproximación de Sterling tenemos que \log_2{n!}\approx n\cdot\log_2{\frac{n}{e}} por lo tanto, la distancia de unicidad será N=\frac{n\cdot\log_2{\frac{n}{e}}}{D}. Como la redundancia D era igual a 3,4 y n = 27 se tiene que N=\frac{27\cdot\log_2{\frac{27}{e}}}{3,4}\approx 26,3. Por lo tanto, necesitamos como mínimo 27 caracteres

Al establecerse en la operación de cifrado una correspondencia directa entre los caracteres del texto en claro y del alfabeto de cifrado, se mantiene la misma relación de frecuencia relativa característica del lenguaje. Por lo tanto, es muy probable que la letra C_i del texto cifrado con mayor frecuencia relativa se corresponda con la letra M_i de mayor frecuencia relativa del lenguaje.

Por tanto, si la letra W es la de mayor frecuencia en el criptograma, podemos suponer con muy buenas expectativas de éxito, que sea la letra E del texto en claro y que, por lo tanto, el desplazamiento aplicado haya sido igual a 19, la distancia que separa ambas letras en el alfabeto

Estas suposiciones sólo tendrán cierta validez si la cantidad de texto cifrado es grande y por tanto se cumplen las propiedades estadísticas del lenguaje. En el fondo se está realizando una comparación de la distribución de frecuencias de todos los elementos del criptograma con la característica del lenguaje, con el objeto de encontrar ese desplazamiento constante