Computación cuántica: ¿el final de la cadena de bloques?

¡Buen sábado, Habr!

La traducción de hoy se ajusta más directamente a nuestras búsquedas relacionadas con la literatura sobre computación cuántica , y puede considerarse el material básico sobre los peligros o, por el contrario, las posibilidades que una computadora cuántica aporta a la tecnología blockchain. ¿Caerán bajo la avalancha de nuevas posibilidades cuánticas o, por el contrario, se volverán aún más invulnerables?

Mientras tanto, ten cuidado con el anuncio (el libro de Vladimir Silva está en camino) y recuerda votar.

Veamos qué es blockchain.

Descargo de responsabilidad: intenté hacer este artículo lo más simple posible, y para esto tuve que ignorar un poco los matices técnicos. Además, lamento que todos los dibujos estén firmados a mano. Decidí que las imágenes que yo mismo ilustrarían los conceptos necesarios mejor que lo que encuentro en Internet.



La cadena de bloques extremadamente simple se puede describir de la siguiente manera: este es un registro en el que se registran transacciones de cierto tipo. La cadena de bloques usa funciones matemáticas, por ejemplo, factorizar un número entero; tales funciones pueden resolverse fácilmente en una dirección, pero difíciles en el contrario: así es como se garantiza la seguridad.

Las transacciones de blockchain se agregan a una base de datos llamada bloque, y el bloque se cifra con una herramienta matemática llamada "función hash". Luego, el hash se incluye en el siguiente bloque con el siguiente conjunto de transacciones, que en el siguiente paso es nuevamente encriptado por la función de hash y da el siguiente hash. Se agrega un nuevo hash al siguiente bloque. De esta manera, se forma una cadena de bloques, y todos parecen estar anidados secuencialmente entre sí, de ahí el nombre de "blockchain".

Aquí hay un ejemplo de hash generado por el algoritmo MD5 en Python. MD5 es una función hash ampliamente utilizada que proporciona un hash de 128 bits.

>>> import hashlib >>> def hash(mystring): ... hash_object=hashlib.md5(mystring.encode()) ... print(hash_object.hexdigest()) ... >>> >>> hash("Kellogg first block") 10a4826ea290595ef96e945b31054254 

Restaurar el valor original ("el primer bloque Kellogg" en este caso) para una computadora clásica es extremadamente difícil. Esto solo se puede hacer con fuerza bruta: buscando sistemáticamente una solución clasificando todas las opciones posibles y verificando si cada próximo candidato satisface la declaración del problema. Del mismo modo, una solución hash para un bloque de bitcoin, que comienza con muchos ceros, requiere una cantidad extremadamente grande de cálculo. Es por eso que, incluso cuando se usa el poder de cómputo agregado de todas las computadoras en la red de bitcoin, se tarda aproximadamente 7 minutos en resolver el bloqueo.

Sin embargo, todo puede cambiar con el advenimiento de una computadora cuántica, que potencialmente representa una amenaza para blockchain y las criptomonedas. Como? Te lo diré ahora.

¿Qué es una computadora cuántica?


Una de las bases de la mayoría de los avances en potencia informática es el proceso de reducción continua del tamaño de los transistores. La esencia de cualquier factor de forma de los cálculos está en un transistor, ya que los transistores forman puertas lógicas que procesan la información en una computadora.



Durante las últimas décadas, los fabricantes de chips, en particular Intel, han aumentado constantemente el número de transistores en la CPU, reduciendo su tamaño. En una CPU moderna, cada transistor es incluso más pequeño que el virus VIH. De hecho, estamos cerca del límite donde los transistores se comparan en tamaño con los átomos. Es por eso que se cree ampliamente que en el futuro, la ley de Moore dejará de existir, y la potencia informática dejará de crecer al ritmo al que estamos acostumbrados.

Una solución a este problema es la computación cuántica.

En una computadora clásica, donde la información se procesa en base a transistores, un bit puede ser igual a solo 0 y 1. Sin embargo, los cálculos cuánticos se basan en una secuencia de qubits, cada uno de los cuales puede representar una, cero o cualquier superposición cuántica de estados de dos qubits. En general, una computadora cuántica con n qubits puede estar en cualquier superposición con hasta 2 ^ n estados simultáneamente.

Una computadora clásica en un momento dado solo puede estar en uno de los 2 ^ n estados. Por lo tanto, una computadora cuántica es exponencialmente más rápida que una clásica.

¿Cómo es posible tal superposición? El hecho es que el mundo cuántico es, por definición, paralelo. En el famoso experimento con dos rendijas, establecido por Thomas Young, una partícula podría penetrar simultáneamente a través de dos rendijas. La mejor computadora cuántica podría realizar una gran cantidad de cómputo, y mucho más rápido que una computadora clásica.

Principios de la computación cuántica


La mayoría de nosotros conocimos la mecánica clásica en la escuela, y el fenómeno de la computación cuántica, por el contrario, no puede llamarse intuitivo. Trataré de demostrar uno de los ejemplos más simples que conozco de un curso universitario.



¿Adivina cuál de las caras del cubo es el frente? Quizás no estés seguro. Sin embargo, tan pronto como decidas por ti mismo, la confusión terminará. La incertidumbre de los posibles estados describe uno de los principios más profundos de la mecánica cuántica: el principio de superposición.
Gracias a este principio, n qubits pueden representar cualquier superposición, que incluye hasta 2 ^ n estados diferentes al mismo tiempo.
Ahora considere esta imagen. ¿Qué cara es el frente?



Esto es interesante Aquí, nuevamente, es posible que no esté seguro de la respuesta, pero cuando decida el primer cubo, determinará inmediatamente el segundo. De alguna manera, estos dos cubos separados en el espacio están conectados.

El entrelazamiento cuántico es un fenómeno en el que los estados cuánticos de dos o más objetos deben describirse uno con respecto al otro, incluso si los objetos individuales se eliminan entre sí en el espacio.

El entrelazamiento cuántico es el detalle supercrítico de trabajar con una computadora cuántica. Una computadora cuántica establece el enredo y luego mide la salida, colapsando la superposición a 0 o 1 (estado clásico). Muchos algoritmos en el mundo cuántico dan la respuesta correcta con una cierta probabilidad. Sin embargo, al iniciar, ejecutar y medir repetidamente los resultados de una computadora cuántica, se puede aumentar la probabilidad de obtener la respuesta correcta.

Amenaza de blockchain


Como se mencionó anteriormente, la tecnología blockchain se basa en el uso de técnicas criptográficas, que se cree que son casi invulnerables a la piratería, excepto con la fuerza bruta que utiliza una gran potencia informática. Conceptualmente, dicha criptografía es similar a la tecnología por la cual se proporciona comunicación en Internet.

Sin embargo, una computadora cuántica, debido a su enorme poder de cómputo, teóricamente debería descifrar la criptografía de clave pública y, por lo tanto, representar una amenaza para la cadena de bloques.

Es cierto que hay problemas asociados con la escala de la computación cuántica.
Los qubits son extremadamente frágiles. Incluso el ruido de fondo puede conducir a la decoherencia e interrumpir la naturaleza cuántica de la partícula.
Para cada qubit útil, se necesitan otros 10 a 100 qubits para corregir errores. La investigación en esta área está en curso, una de las soluciones propuestas es una computadora cuántica topológica .

¿Cuál es el futuro de blockchain en el mundo de la computación cuántica?


Cuando Mark Anderson, cofundador Andreessen Horowitz, le preguntó sobre el tema de la cadena de bloques, dijo:
Cuando le dice al capital de riesgo que hay un gran problema, solo se mete en un escándalo. Entonces, necesitas encontrar a un hombre sabio que resuelva este problema.

Sin embargo, a pesar de su optimismo, este es un problema complejo.

Una posible solución es una cadena de bloques cuántica basada en la criptografía cuántica. Fue propuesto por Del Rajan y Matt Visser de la Universidad de Victoria en Wellington, Nueva Zelanda. La idea es simple: si las computadoras comenzaron a contar demasiado rápido, entonces debe complicar la tarea. Crea una cadena de bloques basada en partículas cuánticas enredadas en el tiempo. Por lo tanto, solo una partícula cuántica es suficiente para codificar la historia de todos sus predecesores, y será imposible descifrar esta cadena sin destruirla.
Sin embargo, aquí tendrá que enfrentar nuevos problemas en el campo del escalado de blockchain, que ya es limitado.

El futuro de la cadena de bloques parece incierto, pero ciertamente muy interesante.

Source: https://habr.com/ru/post/479136/


All Articles