Computación cuántica y su relación con lo algoritmos de cifrado

Desde el siglo XX, la tecnología que integra a las computadoras ha sido mejorada de acuerdo a la Ley de Moore, que trata de lo siguiente:
"Cada dos años, las computadoras serán el doble de poderosas y se reducierá su tamaño a la mitad."
 Esto se ha mantenido de manera casi constante durante varias décadas, sin embargo, la teconología actual se acerca cada vez más al nivel de la física cuántica, esto representa un problema pues, en términos simples, no funciona como la física de talla grande.

Siendo simples, la computación convencional consiste en la representación de valores binarios (0 y 1), y como estos pueden representar distintas potencias de 2. Esto se logra usando transistores, que básicamente son un canal de electricidad bloqueado o desbloqueado por un interruptor accionado por una pequeña carga eléctrica, claro que a una escala muy, muy pequeña, imperceptible al ojo humano.
Estos transistores conforman elementos más grandes, como las compuertas lógicas, y estas a su vez permiten realizar operaciones aritméticas (la suma y la multiplicación son las más importantes).

¿Cómo se ve afectado él flujo de electricidad por trabajar una escala aún más pequeña? Es necesario recordar que la electricidad es en sí, el flujo de electrones por un medio conductor, (semejante al paso del agua por una tubería). Sin embargo, cuando se ha llegado a la escala de la física cuántica, se ha observado que los electrones pueden "atravesar" las paredes de los transistores, de modo que estos no cumplen su propósito, a modo de comparación, es como si contuviera agua dentro de una bolsa de plástico, pero el agua atraviesa el plástico aunque la bolsa no tenga orificios.

Esto ha llevado a la comunidad científica a buscar formas de poder aprovechar la física cuántica en la computación, teniendo que modificar los fundamentos mismos de la computación convencional.

Aunque se han planteado diseños sobre mecanismos que permitan aprovechar la física cuántica, este artículo se enfocará en la teoría más elemntal sobre esta y como podría representar un grandísimo incremento en el poder computacional de la humanidad.

La teoría de la computación cuántica considera que cada bit, esto es, cada cifra que puede ser un valor de 0 o 1 en la computación convencional, en realidad no está definida en un momento dado si no que podría ser tanto 0 como 1, y es solo hasta que este bit es evaluado que su valor es definido como 0 o como 1. ¿Cómo afecta esto a la computación? Bueno pues tomando un ejemplo, si uno considera un número compuesto por 4 bits, esto es, cualquier número entre el 0 y el 15 se tiene que:

0000 = 0
0001 = 1
0010 = 2
0011 = 3
0100 = 4
0101 = 5
0110 = 6
0111 = 7
1000 = 8
1001 = 9
1010 = 10
1011 = 11
1100 = 12
1101 = 13
1110 = 14
1111 = 15

Ahora, si necesitaramos obtener un número en particular entre el 0 y el 15, digamos por ejemplo el 9 (1001), en la computación convencional, en la que cada bit solo vale 0 o 1, tendríamos que recorrer los bits comenzando con la permutación 0 (0000), después la permutación 1 (0001), y así consecutivamente hasta por fin llegar a la permutación 9 (1001) .

Pero en la computación cuántica, en la que cada bit puede valer 0 o 1 al mismo tiempo, estos 4 bits representan al mismo tiempo los 16 valores posibles (0 a 15), y solo hasta que se evalúan estos bits es que se determina el valor del número. Esto significa que se tiene la posibilidad de que al evaluarse estos cuatro bits se obtenga la combinación 9 (1001) en un solo paso.

Este ha sido un ejemplo muy simple del potencial que representa la computación cuántica, pues a una mayor escala, podría reducir enormemente los tiempos de cómputo y permitir realizar cálculos muy complejos de forma aparentemente simplificada.

Pero, ¿Qué tiene esto que ver con los algoritmos de cifrado?

Pues los algoritmos de cifrado están fundamentados en teorías matemáticas, un ejemplo viendolo de forma simplificada podría ser que, de un número muy, muy grande, como de 2048 cifras de grande, determinar dos números diferentes que al multiplicarse uno con otro, se obtenga dicho número.

No es imposible calcular que números podrían cumplir dicha condición, aun considerando que cada algoritmo posee reglas que condicionan la relación entre cada uno de esos múltiplos de tal modo que no basta con que sean múltiplos, si no que al pasar por un proceso estos sean congruentes entre sí.

Lo que estamos omitiendo es que el tiempo requerido para poder calcular uno de estos múltiplos va más allá de la cantidad de segundos estimados que ha existido el universo, y quizás aún más.

Esto es porque cuando se intenta descifrar por fuerza bruta alguno de estos múltiplos, se debe probar con cada uno de ellos, y muy difícilmente ocurriría dentro de un margen de tiempo razonable (es posible que el atacante muera por vejez antes de que termine el cálculo).

Pero con la computación cuántica, como podemos suponer básandonos en el ejemplo de los 4 bits, el tiempo para realizar un cálculo de tal magnitud se reduce exponencialmente.

Y si eso llegase a ocurrir, absolutamente todos los mecanismos de cifrado deberán ser reemplazados por unos más complejos que se sobrepongan al increíble poder computacional cúantico (suena como algún tipo de arma de destrucción masiva).

Referencias:

Comentarios

Entradas populares