Cómo funciona realmente la criptografía de clave pública | Revista Quanta

Como
Gustó

Fecha:

Durante miles de años, si querías enviar un mensaje secreto, básicamente había una forma de hacerlo: codificabas el mensaje utilizando una regla especial, conocida solo por ti y tu público objetivo. Esta regla actuaba como la llave de una cerradura. Si tenías la llave, podías descifrar el mensaje; de ​​lo contrario, tenías que abrir la cerradura. Algunas cerraduras Son tan eficaces que nunca se pueden descubrir, ni siquiera con tiempo y recursos infinitos. Pero incluso esos esquemas sufren el mismo talón de Aquiles que afecta a todos los sistemas de cifrado de ese tipo: ¿cómo hacer llegar esa clave a las manos adecuadas y mantenerla alejada de las manos equivocadas?

La solución contraintuitiva, conocida como criptografía de clave pública, no se basa en mantener una clave en secreto, sino en hacerla ampliamente disponible. El truco es utilizar también una segunda clave que nunca compartas con nadie, ni siquiera con la persona con la que te estás comunicando. Solo utilizando esta combinación de dos claves (una pública y otra privada) alguien puede codificar y descodificar un mensaje.

Para entender cómo funciona esto, es más fácil pensar en las “llaves” no como objetos que encajan en una cerradura, sino como dos ingredientes complementarios de una tinta invisible. El primer ingrediente hace que los mensajes desaparezcan, y el segundo los hace reaparecer. Si un espía llamado Boris quiere enviar 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 le resulta fácil: Natasha ha publicado una fórmula fácil y bien 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 invisibles los mensajes, pero sólo Natasha puede hacerlos visibles de nuevo. Y como ella 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 que se reserva otra sólo 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 el segundo ingrediente de esta tinta invisible especial: una cifra los mensajes y la otra los descifra. Pero en lugar de utilizar sustancias químicas, la criptografía de clave pública utiliza acertijos matemáticos llamados funciones de trampillaEstas funciones son fáciles de calcular en una dirección y extremadamente difíciles de revertir. Pero también contienen “trampillas”, datos que, si se conocen, hacen que las funciones sean trivialmente fáciles de calcular en ambas direcciones.

Una función trampa común implica multiplicar dos números primos grandes, una operación fácil de realizar. Pero invertirla (es decir, comenzar con el producto y encontrar cada factor primo) es computacionalmente impráctico. Para crear una clave pública, comience con dos números primos grandes. Estas son sus trampas. Multiplique los dos números juntos, luego realice algunas operaciones adicionales. Operaciones matemáticasEsta clave pública ahora puede cifrar mensajes. Para descifrarlos, necesitará la clave privada correspondiente, que contiene los factores primos (las trampas necesarias). Con esos números, es fácil descifrar el mensaje. Mantenga esos dos factores primos en secreto y el mensaje seguirá siendo secreto.

Marcos Belan/Quanta revista

Los fundamentos de la criptografía de clave pública fueron descubiertos por primera vez entre 1970 y 1974 por matemáticos británicos que trabajaban para la Sede de Comunicaciones del Gobierno del Reino Unido, la misma agencia gubernamental que descifró el código nazi Enigma durante la Segunda Guerra Mundial. Su trabajo (que permaneció clasificado hasta 1997) fue compartido con la Agencia de Seguridad Nacional de los Estados Unidos, pero debido a la limitada y costosa capacidad de procesamiento, ninguno de los dos gobiernos implementó el sistema. En 1976, los investigadores estadounidenses Whitfield Diffie y Martin Hellman descubrieron el primer código conocido públicamente. esquema de criptografía de clave pública, influenciado por el criptógrafo Ralph Merkle. Apenas un año después, el algoritmo RSA, llamado así por sus inventores Ron Rivest, Adi Shamir y Leonard Adleman, estableció una forma práctica de utilizar la criptografía de clave pública. Todavía se utiliza ampliamente en la actualidad, un componente fundamental de la Internet moderna, que permite todo, desde las compras hasta el correo electrónico basado en la web.

Este sistema de dos claves también permite la creación de “firmas digitales”, es decir, pruebas matemáticas de que un mensaje fue generado por el poseedor de una clave privada. Esto funciona porque las claves privadas también se pueden utilizar para cifrar mensajes, no solo para descifrarlos. Por supuesto, esto es inútil para mantener los mensajes en secreto: si utilizaste tu clave privada para cifrar un mensaje, cualquiera podría utilizar la clave pública correspondiente para descifrarlo. Pero sí demuestra que tú, y solo tú, creaste el mensaje, ya que, como poseedor de la clave privada, solo tú podrías haber cifrado el mensaje. Las criptomonedas como el bitcoin no podrían existir sin esta idea.

Si dos claves criptográficas en lugar de una son tan efectivas, ¿por qué se tardó milenios en descubrirlas? russell impagliazzo, un científico informático y teórico de la criptografía de la Universidad de California en San Diego, el concepto de función trampa simplemente no era lo suficientemente útil antes de la invención de las computadoras.

“Es una cuestión de tecnología”, dijo. “Una persona del siglo XIX pensaba que el cifrado era algo que se producía entre agentes individuales con inteligencia militar en el campo, literalmente, en un campo con armas disparando. Así que si el primer paso es ‘elegir dos números primos de 19 dígitos para multiplicarlos’, la batalla terminará antes de que lo hagas”. Si reduces el problema a algo que un humano puede hacer rápidamente, no va a ser demasiado seguro.

Pero si bien las computadoras ayudaron a hacer posible la criptografía de clave pública, también crearon grietas en su armadura. En 1994, el matemático Peter Shor descubrió una forma de computadoras cuánticas para revertir de manera eficiente las funciones de trampa que subyacen a la mayoría de los sistemas actuales de criptografía de clave pública, incluida la factorización prima. Este algoritmo, si se implementa, actuaría como una “tinta reaparecedora” multiuso, capaz de hacer que cualquier mensaje invisible reaparezca. Adiós, seguridad en Internet.

Afortunadamente, las computadoras cuánticas en sí mismas están “todavía en la fase ENIAC”, dijo Impagliazzo, refiriéndose a la máquina del tamaño de una habitación construida para el Ejército de los EE. UU. en 1945. Para cuando las computadoras cuánticas se vuelvan lo suficientemente sofisticadas como para representar una amenaza real para la criptografía de clave pública, sus funciones originales de trampilla podrían ser reemplazadas por versiones “cuánticas seguras” llamadas problemas de celosíaPor supuesto, esta nueva “tinta” computacional también puede volverse susceptible a ataques en el futuro. Pero eso es lo bueno de la criptografía de clave pública: mientras podamos encontrar nuevas funciones para usar, podemos seguir reinventando la rueda. O, en este caso, la clave.

Artículos relacionados

punto_img

Artículos Recientes

punto_img