Contenido principal
Principios de ciencias de la computación avanzados (AP Computer Science Principles)
Curso: Principios de ciencias de la computación avanzados (AP Computer Science Principles) > Unidad 7
Lección 5: Técnicas de cifrado de datosCifrado, descifrado y cracking
Una de las técnicas de cifrado más antiguas es el Cifrado César, inventado por Julio César hace más de dos mil años para comunicar mensajes a sus aliados.
El cifrado César es una excelente introducción al cifrado, descifrado y "cracking" por lo simple que es.
Cifrar un mensaje
Imagina que César quiere enviar este mensaje:
SECRET MEETING AT THE PALACE
Así se vería esto cifrado:
YKIXKZ SKKZOTM GZ ZNK VGRGIK
Esto parece jerigonza a primera vista, pero este mensaje cifrado en realidad está muy relacionado con el texto original.
El cifrado Cesar es un cifrado de sustitución simple que reemplaza cada letra original por una letra diferente del alfabeto, desplazando el alfabeto por una cierta cantidad.
Para crear el mensaje cifrado arriba, desplacé el alfabeto 6 posiciones y usé la siguiente tabla de sustitución:
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 |
S se desplaza 6 letras a Y, E se desplaza 6 letras a K, etc. Aqui tienes la primera palabra y sus desplazamientos:
S | E | C | R | E | T |
---|---|---|---|---|---|
Y | K | I | X | K | Z |
Descifrar un mensaje
Según los registros históricos, César siempre usó un desplazamiento de 3. Si el destinatario de su mensaje sabía el desplazamiento, le era trivial descifrar el mensaje.
Imagina que César envía este mensaje a un camarada:
EHZDUH EUXWXV
El camarada usa la tabla de sustitución, donde el alfabeto se desplaza 3 posiciones:
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |
Ahora puede descifrar el mensaje con certeza. La primera letra "E" se desplazó 3 de "B", la segunda letra "H" se desplazó 3 de "E", etc. El resultado es este mensaje ominoso:
BEWARE BRUTUS
Quebrar el cifrado
Imagina que un enemigo muy educado y hábil intercepta uno de los mensajes de César.
RZ VMZ WMDIBDIB VGG AJMXZN OJ EJDI RDOC XGZJKVOMV OJ YZAZVO OCZ ZIZHT LPZZI VO OCZ IDGZ YZGOV
Ese enemigo no sabe que César siempre usa un desplazamiento de 3, así que tiene que intentar "quebrar" el cifrado sin saberlo.
Hay tres técnicas principales que podría usar: análisis de frecuencia, texto simple conocido y fuerza bruta.
Análisis de frecuencia
Los idiomas humanos tienden a usar algunas letras más que otras; por ejemplo, "E" es la letra más popular en inglés. Podemos analizar la frecuencia de los caracteres en el mensaje e identificar cual es más probable que sea "E" y con base en eso reducir los posibles desplazamientos usados.
¡Pruébalo tú! Pega el mensaje en el área de texto abajo y analiza el gráfico de frecuencia para identificar cual es posible que sea "E":
Texto simple conocido
Otro término para el mensaje original sin cifrar es texto simple. Si el enemigo ya conocía alguna parte del texto, le resultará más fácil descifrar el resto de la versión cifrada.
Por ejemplo, los mensajes tienden a comenzar de manera similar. En la Segunda Guerra Mundial, los mensajes alemanes cifrados siempre comenzaban con una predicción meteorológica, lo que finalmente facilitó que el matemático británico Alan Turing quebrara el cifrado.
¿Crees que Julio comenzó este mensaje de una manera común?
Fuerza bruta
Sólo hay 25 desplazamientos posibles (no 26, ¿por qué no?). El enemigo podría tomar algún tiempo para probar cada uno de ellos y encontrar uno que produzca un mensaje con sentido. Ni siquiera necesitaría probar los desplazamientos con todo el mensaje, sólo las primeras una o dos palabras.
Inténtalo a continuación:
El enemigo de César no tendría una computadora para ayudarle, pero probablemente tardaría menos de una hora si entendiera la idea del cifrado César.
¿Has logrado quebrar el código y descifrar el mensaje?
¡Haz clic abajo para ver la gran revelación!
Cifrado, descifrado y quebrado
Gracias a esta exploración del cifrado César, ahora entendemos los tres aspectos clave del cifrado de datos:
- Cifrado: mezclar los datos según una clave secreta (en este caso, el desplazamiento del alfabeto).
- Descifrado: recuperar los datos originales a partir de los datos cifrados usando la llave secreta.
- Quebrado del código: descubrir los datos originales sin conocer el secreto, usando una variedad de técnicas astutas.
Cuando consideramos una posible técnica de cifrado, tenemos que pensar en todos esos aspectos: ¿qué tan fácil es cifrar? ¿qué tan fácil es descifrar? Y lo más importante, ¿qué tan fácil es para un individuo malintencionado quebrar el código?
Ya no podemos usar el cifrado César para proteger nuestros datos, ya que es demasiado fácil de quebrar, pero entender este cifrado nos prepara para entender las técnicas modernas de cifrado.
Si quieres, puedes profundizar en el cifrado César en nuestro tutorial de Khan Academy sobre Criptografía Antigua.
🙋🏽🙋🏻♀️🙋🏿♂️¿TIenes alguna pregunta sobre este tema? ¡Nos encantaría responderte; tan solo pregunta en el área de preguntas más abajo!
¿Quieres unirte a la conversación?
Sin publicaciones aún.