Imagine que quiere enviar una carta a un amigo que se encuentra a una gran distancia, evitando que otras personas puedan acceder a ella. Hace tiempo que no hablan, por lo que no disponen de ningún secreto en común ni de un canal de comunicación seguro. ¿Cómo podría hacerse?
La solución se conoce desde hace miles de años: su amigo podría comprar un candado clásico (de los que se cierran sin llave, pero se abren con una). A continuación, le enviaría el candado abierto y se quedaría la llave. Para enviar la carta de manera segura, usted podría meterla en un cofre y cerrarlo con el candado de su amigo. Dado que solo él dispone de la llave, solo él podría abrir el cofre y leer la carta.
¿Y qué pasaría si, en lugar de enviar una carta, quisiera enviar un correo electrónico?
Sorprendentemente, algo que parece tan sencillo de hacer físicamente, se complica mucho al pasar al mundo digital. Hasta hace unas pocas décadas, para encriptar un mensaje era necesario que tanto el emisor como el receptor compartieran una clave secreta. Por tanto, era imposible realizar una comunicación segura salvo que el emisor y el receptor hubieran quedado de antemano o se hubieran comunicado mediante un canal seguro para compartir la clave.
RSA: la clave para mantener sus datos seguros en línea
La solución más conocida a este problema llegó en 1977 de la mano de Ron Rivest, Adi Shamir y Leonard Adleman. Estos propusieron un algoritmo en el que existe una clave pública que cualquiera puede utilizar para cifrar mensajes y una clave secreta que sirve para descifrarlos. El algoritmo se llamó RSA por las iniciales de sus apellidos. Su funcionamiento, como no podría ser de otra manera, se basa en las matemáticas.
La idea general consiste en plantear un problema imposible de resolver salvo que se disponga de alguna pista (la clave secreta). En concreto, el algoritmo RSA genera dos números primos muy grandes y los multiplica para obtener un número aún más grande, que se hace público. Cualquier persona puede usar este gran número público para cifrar el mensaje, pero para descifrarlo es necesario conocer los dos números primos originales.
Dado que es imposible conocer los números primos de los que está formado un número tan grande, solo la persona que generó estos números originales será capaz de descifrar el mensaje.
Hoy en día una inmensa cantidad de las comunicaciones tienen lugar a distancia a través de canales no seguros, por lo que es necesario utilizar en algún momento el algoritmo RSA. Esto incluye las aplicaciones relacionadas con la banca, el comercio y las finanzas.
Si alguien lograra acceder a toda esa información sensible podría causar daños inimaginables. Afortunadamente, RSA es un algoritmo seguro.
¿O no?
Cómo los ordenadores del futuro amenazan la seguridad digital
La seguridad del RSA se basa en la premisa de que es imposible descomponer un número grande en factores primos. Sin embargo, eso no es del todo correcto. Actualmente no se conoce ninguna forma de resolver este problema de manera rápida en un ordenador convencional, pero sí con uno cuántico.
En el mundo de la computación estamos acostumbrados a pensar en bits como los ladrillos básicos que componen la información. Estos son como una moneda que puede estar en cara o en cruz, o como una bombilla que puede estar encendida o apagada. Estos son los "0" y "1" que un ordenador convencional utiliza para almacenar y procesar datos.
Pero hay una nueva forma de pensar en bits y aquí es donde entra en juego la computación cuántica. En lugar de tratar con simples ceros y unos, la computación cuántica opera con algo llamado "cúbits". Un cúbit puede existir en dos estados al mismo tiempo, gracias al fenómeno de superposición cuántica. Es como si una bombilla estuviera encendida y apagada simultáneamente hasta que la observamos y se decide su estado.
A medida que añadimos más cúbits, la diferencia se vuelve aún más pronunciada, hasta el punto de que es posible que el sistema se encuentre en múltiples estados al mismo tiempo. Esto supone un crecimiento exponencial en términos de la cantidad de información que pueden contener y procesar. En las últimas décadas, diversos científicos han propuesto métodos para aprovechar esta capacidad de manejar una gran cantidad de información simultáneamente para resolver algunos problemas matemáticos de manera eficaz.
Un ejemplo destacado es el algoritmo desarrollado por el matemático Peter Shor , que tiene la capacidad de desentrañar el cifrado RSA con un ordenador cuántico. Esto significaría que, de disponer de un ordenador así, gobiernos, empresas e incluso particulares podrían acceder fácilmente a nuestros datos más sensibles. Esto podría llevar a situaciones como robo de identidad, fraude bancario y acceso no autorizado a cuentas en línea.
¿Estamos cerca de romper el RSA?
Para ser capaz de romper el RSA sería suficiente con unos pocos miles de cúbits perfectos. Sin embargo, los cúbits que se han conseguido hasta ahora no son perfectos, lo que implica la necesidad de usar cúbits adicionales para actuar como información redundante.
En 2012 se estimó que sería necesario usar 1 000 millones de cúbits para descifrar el RSA. Desde entonces, ese número se ha ido reduciendo hasta unos pocos millones, y se estima que se continuará reduciendo conforme se vayan consiguiendo cúbits cada vez más perfectos.
Al mismo tiempo, aunque de momento solo se hayan conseguido procesadores cuánticos de algo más de 1 000 cúbits (IBM), los avances parecen ser exponenciales. Por ello es esperable que, en algún momento, ambas curvas se crucen.
Criptografía basada en redes frente a la amenaza cuántica
Para hacer frente a la amenaza de los ordenadores cuánticos, el Instituto Nacional de Estándares y Tecnología (NIST) de Estados Unidos puso en marcha un concurso para encontrar un algoritmo de criptografía postcuántica. Es decir, un algoritmo que sea seguro frente a ordenadores cuánticos.
Actualmente, existen tres candidatos finalistas y se espera que se decida el ganador a lo largo de 2024.
Dos de los finalistas se basan en las matemáticas de redes, las cuales están muy presentes en la naturaleza. Las redes son objetos matemáticos que sirven, entre otras cosas, para describir las estructuras de los cristales como el diamante, el cuarzo y la sal. Al tratarse de objetos matemáticos, es posible proponer estructuras muy complejas e ir mucho más allá de lo que se observa en la naturaleza. En estas estructuras complejas se puede definir un problema matemático complejo de resolver excepto que se disponga de alguna pista, de manera análoga al RSA.
No hay duda de que el panorama de la seguridad digital enfrenta una transformación sin precedentes con la llegada de los ordenadores cuánticos. Si bien el algoritmo RSA ha sido una piedra angular en la protección de datos en línea, su vulnerabilidad ante las capacidades cuánticas representa un desafío significativo. Afortunadamente, la criptografía postcuántica ofrece esperanza para preservar la privacidad y la integridad de nuestros datos en el futuro digital.