Contenido principal
Ciencias de la computación
Cifrado por desplazamiento
Matemática modular y el cifrado por desplazamiento
El cifrado César es un tipo de cifrado por desplazamiento. Los cifrados por desplazamiento funcionan al usar el operador módulo para cifrar y descifrar mensajes. El cifrado por desplazamiento tiene una llave K, que es un entero entre 0 y 25. Solo compartiremos esta llave con la gente que queremos que vea nuestro mensaje.
Cómo cifrar:
Para cada letra en el mensaje M:
1. Convierte la letra en el número que le corresponda según su lugar en el alfabeto al empezar desde 0, y llama a este número X.
( A=0, B=1, C=2, ...,Y=24, Z=25)
( A=0, B=1, C=2, ...,Y=24, Z=25)
2. Calcula: Y=(X+K) mod 26
3. Convierte el número Y en la letra que le corresponda según su lugar en el alfabeto, al empezar desde 0.
(A=0, B=1, C=2, ...,Y=24, Z=25)
Por ejemplo: nos ponemos de acuerdo con nuestro amigo para utilizar el cifrado por desplazamiento con la llave K=19 para nuestro mensaje.
Ciframos el mensaje "KHAN" como sigue:
Ciframos el mensaje "KHAN" como sigue:
Así que después de aplicarle el cifrado por desplazamiento con la llave K=19, nuestro mensaje de texto "KHAN" nos dio el texto cifrado "DATG".
Le damos el mensaje "DATG" a nuestro amigo.
Cómo descifrar:
Para cada letra en el texto cifrado C:
1. Convierte la letra en el número que le corresponde según su lugar en el alfabeto, iniciando desde 0, y llama a este número Y.
(A=0, B=1, C=2, ..., Y=24, Z=25)
(A=0, B=1, C=2, ..., Y=24, Z=25)
2. Calcula: X= (Y - K) mod 26
3. Convierte el número X en la letra que le corresponda según su lugar en el alfabeto, al empezar desde 0.
(A=0, B=1, C=2, ..., Y=24, Z=25)
(A=0, B=1, C=2, ..., Y=24, Z=25)
Nuestro amigo ahora decodifica el mensaje al usar la llave K=19 que habíamos acordado anteriormente. Como sigue:
Así que después de descifrar el cifrado por desplazamiento con llave K=19, nuestro amigo descifra el texto cifrado "DATG" en el mensaje de texto "KHAN".
¿Por qué el cifrado por desplazamiento es inseguro?
Un cifrado debería prevenir que un atacante, alguien que tenga una copia del texto cifrado pero que no conozca la llave, descubra el contenido del mensaje. Como solo tenemos 26 opciones para la llave, cualquiera puede fácilmente probar las 26 llaves, una por una, hasta recuperar el mensaje. Este tipo de ataque se llama ataque de fuerza bruta.
¿Quieres unirte a la conversación?
- No entiendo esto: 2. Calculate: Y = (X + K) mod 26
3. Convert the number Y into a letter that matches its order in the alphabet starting from 0.
(A=0, B=1, C=2, ...,Y=24, Z=25)(6 votos)- Ponte el ejemplo sencillo, donde todavía no necesitas utilizar el modulo. Las letras tienen una relación (equivalencia) con los números (A=0, B=1, C=2, ...,Y=24, Z=25) . Así sí A=0 y si utilizamos la llave K=1 , la letra codificada será A+K = 0 + 1 = 1 y según la relación B=1. (que es desplazarnos un letra en el abecedario). Ahora "¿Qué ocurre" si la llave es mayor de 25 o sí a la Z que es 25 le sumamos uno ? En este caso Z=25 y seguimos con K=1 sería, Z+K=25+1=26 pero 26 en principio no tiene asignada ninguna letra puesto que hemos asignado números a letras del 0 al 25, por este motivo aparece el módulo. Al hacer módulo lo que hacemos es que la 26 sería 0 por lo cual Z sería A, como volver al principio. Lo que estás haciendo es quedarte con el resto de tu número 26 entre el número que haces modulo (mod 26), 26 entre 26, resto 0. Espero te haya servido! :)(11 votos)
- El mod entiendo que es el residuo y su utilizacion aprox pero como saco el mod 26 de dicho ejercicio osea sigo sin entender como saco el mod 26 y como sacar dichas letras en el cifrado?(4 votos)
- lo podemos usar en cualquier ocasion?(2 votos)
- Me gustaria podre leerlo en español(1 voto)
- lo podemos usar en cualquier ocasion?(1 voto)
- existen programa como gobuster q son de esa fuerza bruta ante ya mencionada?(1 voto)
- son en latam son 27 y los gringos no la pueden colocar y es la *Ñ*(1 voto)
- ¿Dónde vamos a practicar este cifrado? y ... ganar puntos ?? :S :)(1 voto)