la versión original de esta historia apareció en Revista Quanta.
Durante miles de años, si querías enviar un mensaje secreto, básicamente había una manera de hacerlo. Codificaría el mensaje utilizando una regla especial, que sólo usted y su público objetivo conocen. Esta regla actuó como la llave de una cerradura. Si tuvieras la clave, podrías descifrar el mensaje; de lo contrario, tendrás que forzar la cerradura. Algunas cerraduras son tan efectivos que nunca se pueden seleccionar, incluso con tiempo y recursos infinitos. Pero incluso esos esquemas sufren del mismo talón de Aquiles que afecta a todos los sistemas de encriptación: ¿Cómo hacer que esa clave llegue a las manos correctas y al mismo tiempo mantenerla fuera de las manos equivocadas?
La solución contraintuitiva, conocida como criptografía de clave públicano se basa en mantener una clave en secreto sino en hacerla ampliamente disponible. El truco consiste en utilizar también una segunda clave que nunca compartas con nadie, ni siquiera con la persona con la que te estás comunicando. Sólo mediante el uso de esta combinación de dos claves (una pública y otra privada) alguien puede codificar y descifrar un mensaje.
Para entender cómo funciona esto, es más fácil pensar en las “llaves” no como objetos que caben en una cerradura, sino como dos ingredientes complementarios en una tinta invisible. El primer ingrediente hace que los mensajes desaparezcan y el segundo los hace reaparecer. Si un espía llamado Boris quiere enviarle un mensaje secreto a su homóloga Natasha, escribe un mensaje y luego utiliza el primer ingrediente para hacerlo invisible en la página. (Esto es fácil para él: Natasha ha publicado una fórmula fácil y conocida para hacer desaparecer la tinta.) Cuando Natasha recibe el papel por correo, aplica el segundo ingrediente que hace que el mensaje de Boris reaparezca.
En este esquema, cualquiera puede hacer que los mensajes sean invisibles, pero sólo Natasha puede volver a hacerlos visibles. Y como nunca comparte la fórmula del segundo ingrediente con nadie (ni siquiera con Boris), puede estar segura de que el mensaje no ha sido descifrado en el camino. Cuando Boris quiere recibir mensajes secretos, simplemente adopta el mismo procedimiento: publica una receta fácil para hacer desaparecer los mensajes (que Natasha o cualquier otra persona puede usar), mientras guarda otra solo para él que los hace reaparecer.
En la criptografía de clave pública, las claves “pública” y “privada” funcionan igual que el primer y segundo ingrediente de esta tinta invisible especial: una cifra los mensajes y la otra los descifra. Pero en lugar de utilizar productos químicos, la criptografía de clave pública utiliza acertijos matemáticos llamados funciones de trampilla. Estas funciones son fáciles de calcular en una dirección y extremadamente difíciles de revertir. Pero también contienen “trampillas”, fragmentos de información que, si se conocen, hacen que las funciones sean trivialmente fáciles de calcular en ambas direcciones.
Una función de trampilla común implica multiplicar dos números primos grandes, una operación fácil de realizar. Pero revertirlo (es decir, comenzar con el producto y encontrar cada factor primo) es computacionalmente poco práctico. Para crear una clave pública, comience con dos números primos grandes. Estas son tus trampillas. Multiplica los dos números y luego realiza algunas operaciones adicionales. operaciones matemáticas. Esta clave pública ahora puede cifrar mensajes. Para descifrarlos, necesitará la clave privada correspondiente, que contiene los factores primos: las trampillas necesarias. Con esos números, es fácil descifrar el mensaje. Mantenga en secreto esos dos factores primos y el mensaje permanecerá secreto.