¿Cómo se relaciona esto con la tecnología financiera que dio origen a la blockchain y que hoy tiene tantos usos?¿Y qué pasa con la seguridad?
Recientemente, Google comunicó a la prensa los resultados de los experimentos que está llevando a cabo con su computadora cuántica de 20 qubits. Más allá del momento en que efectivamente vea la luz esta computadora, la noticia nos sirve para reflexionar acerca del impacto que esto puede tener en el análisis matemático.
Un poco de contexto
Una computadora cuántica está basada en la existencia de los llamados qubits (por quantum bits, o bits cuánticos): las computadoras normales funcionan con bits, las cuánticas, con qubits. Pero la gran diferencia que tienen los bits y los qubits es que estos últimos, en un momento dado, no solo pueden tener el estado 0 o 1 como los bits «de siempre», sino que también pueden tener una combinación de estos estados, es decir que pueden tener el estado 0 y el estado 1 simultáneamente. ¡Pueden ser las dos cosas a la vez!
Esta capacidad nos permitiría crear algoritmos que puedan realizar diversas pruebas en paralelo con distintos estados de qubits. De esta manera, muchos problemas de la llamada «clase NP» (ver recuadro) podrían ser resueltos millones de veces más rápido que en una computadora clásica. De hecho, ya existe un algoritmo (solamente teórico) conocido como el algoritmo de Shor, que permitiría romper en cuestión de minutos encriptaciones de clave pública o asimétrica (el algoritmo RSA, en el cual se basan gran parte de las comunicaciones en Internet ) en comparación a los siglos o milenios que podría tardar una computadora clásica. Debido a la eventual fragilidad del algoritmo RSA ante un ataque con una computadora cuántica, ya existe un activo campo de investigación teórica llamado «criptografía postcuántica», que se está encargando de producir algoritmos de encriptación resistentes a futuros ataques de este tipo.
La computadora cuántica no es tan mágica
Recién nombramos el algoritmo de Shor. Este algoritmo logra obtener de manera eficiente los factores primos de un número entero extremadamente grande. Hoy, con computadoras clásicas, esta misma tarea lleva un tiempo exponencial. Los algoritmos de encriptación de clave pública, o asimétrica, se han basado históricamente en la dificultad de factorizar números primos. Sin embargo, el «creador» de la clave simplemente elige dos números primos muy grandes y los multiplica entre sí para obtener un resultado que usará como clave. Ahora bien, existe otra gran área en el mundo de la criptografía que involucra los algoritmos de clave simétrica. Estos algoritmos se basan en la elección de un número específico por parte de dos individuos que quieren comunicarse en secreto. No hay forma de averiguar por un método matemático cuál es este número por ningún método, simplemente porque ese número no es el resultado de una operación matemática, sino que, simplemente, fue elegido de común acuerdo por los dos individuos. En otras palabras: aún con computadoras cuánticas, los algoritmos de clave simétrica seguirán siendo seguros dado que, por más veloces que sean, no son adivinas. Pero, hecha la ley, hecha la trampa: una computadora cuántica no puede ser programada para ser adivina, pero sí para ser «tozuda». Existe un algoritmo de búsqueda conocido como algoritmo de Grover que podría tratar de encontrar la clave simétrica probando todas las posibilidades, empezando con el 1, luego el 2, luego el 3…. Este ataque por «fuerza bruta», sin duda tomaría muchísimo menos tiempo con computadoras cuánticas que con computadoras clásicas. Sin embargo, esa reducción de complejidad no llega a ser una reducción exponencial, sino que lo reduce a la raíz cuadrada. En otras palabras, sigue teniendo complejidad exponencial, pero su exponente queda reducido a la mitad. Entonces –y una vez más, hecha la ley, hecha la trampa pero para el otro lado– podemos lograr mantener el nivel de seguridad de la clave simétrica, simplemente duplicando la cantidad de bits de la clave.
¿La computación cuántica amenaza al blockchain?
La cadena de bloques (blockchain) es una tecnología relativamente novedosa que se puso muy de moda últimamente por ser utilizada en la criptomoneda bitcoin. Pero blockchain tiene además aplicación en muchas otras criptomonedas: contratos inteligentes y todo lo que requiera una base de datos que nadie pueda alterar subrepticiamente. Una de las tecnologías de base que utiliza blockchain son los algoritmos de encriptación de clave asimétrica, ya que con la clave pública se puede especificar a quién enviarle las monedas, y el dueño de ellas puede gastarlas utilizando la clave privada que se relaciona con la clave pública anterior. En un futuro donde las computadoras cuánticas estuvieran funcionando como todos los días, gracias al algoritmo de Shor, un usuario podría llegar a gastar una moneda que no necesariamente tenía en su billetera.
Pero blockchain tiene una capa de protección adicional para las claves públicas, que además, nos permite establecer los mecanismos de consenso tan necesarios en esta tecnología incipiente: los algoritmos de hashing criptográficos, por ejemplo, el SHA256.
A no preocuparse… por ahora.
La computadora cuántica supone muchos avances en la tecnología actual. Como con todo avance tecnológico, devienen también grandes desafíos y riesgos para quienes no logran adaptarse. La gran oportunidad que presenta este campo es que están emergiendo a su vez diversas áreas de investigación que estudian, entre otras cosas, sus implicancias, sus dificultades y sus derivaciones. Así es que hoy ya se conocen algunos de los problemas que este avance de la tecnología puede traernos, y se conocen también algunas. Si se quiere, hay cierta poesía cuántica: dos estados simultáneos, de gente discutiendo sobre los problemas que podrían ser pero que no lo son.
Como con todo avance tecnológico, las computadoras cuánticas se enfrentan a otros grandes avances recientes, como por ejemplo, la tecnología de blockchain. Desde su nacimiento blockchain se encumbró como una gran alternativa al internet actual, y no precisamente por su aplicación más popularmente conocida (bitcoin) sino por su gran poder de mantener un consenso en la integridad de los datos almacenados, lo que trajo grandes progresos a las tecnologías de almacenamiento y distribución de datos.
En síntesis: según el estado del arte de la investigación actual y lo que pudimos ver en este artículo, no pareciera que, en un futuro cercano, la computación cuántica represente un peligro.