Introducción a la Criptografía

un perro lleva un mensaje

 

La criptografía tiene que ver con mensajes secretos.

¿Cómo podemos enviar un mensaje a alguien que solo esa persona pueda entender?

Un método sencillo consiste en cambiar cada letra del mensaje.

dona

Ejemplo: "rosquillas debajo del fregadero" (solo para tu hermana)

Si alguien más lee tu mensaje, encontrará y se comerá las donas antes de que tu hermana llegue a casa.

Probemos un método simple para sustituir cada letra una en el alfabeto, así codificamos:

d→e, o→p, n→o etc y obtenemos: epobt efcbkp bmbdfob

A todos les parecerá una tontería sin sentido, excepto a tu hermana, que conoce el truco y lo decodifica:

e→d, p→o, o→n etc y obtiene: donas debajo alacena

¡Puedes usar mensajes secretos en el enlace si lo deseas!

Este es un tipo de "cifrado de sustitución".

Más avanzado

Pero si alguien conoce este método, podrá decodificar fácilmente tu mensaje.

Así que seamos más inteligentes y subamos 2 o 3 o más lugares en el alfabeto.

O incluso más inteligentes y con un número variable de lugares. Tal vez elija el número "3142" para que signifique "mover la primera letra 3 lugares, la siguiente letra solo 1 lugar, etc.". Entonces, incluso alguien que conozca su método tendrá dificultades si no conoce la clave "3142".

Máquina Enigma

Máquina enigma de Kriegsmarine
Máquina Enigma de la Kriegsmarine
por el usuario de Wikipedia LukaszKatlewa

La máquina Enigma, desarrollada por el ejército alemán en la década de 1930 para una comunicación segura, utiliza un método avanzado como ese.

Cuenta con una serie de ruedas giratorias, conocidas como rotores, que asignan cada letra de entrada a una letra codificada diferente. Los rotores se pueden colocar en diferentes posiciones, creando un proceso de cifrado complejo.

Lo que hace que sea aún más difícil de romper es la configuración del rotor. Los ajustes se cambiaban a diario y los alemanes tenían un gran número de combinaciones posibles para elegir. Además, a medida que se codifica cada letra, las posiciones del rotor giran, lo que complica aún más el cifrado.

Las primeras versiones fueron descifradas por los polacos que transmitieron su trabajo a los británicos durante la Segunda Guerra Mundial.

Algunas personas muy inteligentes, lideradas por el famoso Alan Turing, descifraron la versión más reciente y de repente pudieron leer mensajes en alemán y saber, por ejemplo, hacia dónde se dirigían los submarinos y evitarlos o posiblemente hundirlos.

Se cree que esto acortó la guerra en dos años y salvó millones de vidas.

¡La criptografía es poderosa!

Descifradores de códigos

Entonces, ¿cómo se pueden descifrar esos códigos?

Los descifradores de códigos tienen muchas cosas que pueden usar:

Lee nuestra página sobre palabras aleatorias para ver con qué frecuencia aparecen letras y combinaciones de letras en español.

También pueden esperar a que sucedan noticias importantes y luego buscar cualquiera de sus palabras clave en los mensajes.

Más allá de la sustitución

La criptografía moderna ha superado todo eso.

¡Ahora usamos números primos!

Se basa en la idea de que multiplicar números primos es mucho más fácil que averiguar qué primos se multiplicaron para formar un número.

papel y lápiz

Ejemplo: ¿Cuánto es 101 × 131?

Con lápiz y papel podemos obtener la respuesta de 13231 en poco tiempo.

Pero ¿qué pasaría si la pregunta fuera "¿Cuáles son los factores primos de 13231?"?

¡Podríamos estar trabajando mucho tiempo en resolver esa pregunta!

Ok, la calculadora de factorización de primos puede hacerlo fácilmente, pero no cuando los números son enormes (como cientos de dígitos), lo cual podría llevar años o siglos.

RSA

Lo anterior nos lleva a conocer el algoritmo RSA (Rivest-Shamir-Adleman).

Es un algoritmo de cifrado de clave pública/clave privada que utiliza dos números primos p y q.

La clave pública (que incluye p×q) codifica el mensaje por lo que es muy difícil de leer para otros.

Pero la clave privada tiene información extra que nos permite decodificar el mensaje fácilmente.

Puedes probar nuestro RSA interactivo (para números pequeños)

Este tipo de cifrado se denomina "asimétrico" porque utiliza dos claves (clave pública para el cifrado y clave privada para el descifrado).

Otros cifrados

La criptografía también incluye:

 

La criptografía es un campo rico y variado en el que alguien con buen sentido común y comprensión de los números puede ser muy bueno.

 

¡Refuerza tu aprendizaje resolviendo los siguientes retos sobre este tema! (Nota: están en inglés).

25388, 25389, 25390, 25391, 25392, 25393, 25394, 25395, 25396, 25397