paint-brush
Proyecciones del análisis de la tasa de hash: por qué Bitcoin debería adoptar la ciencia de la información cuánticapor@maken8
1,045 lecturas
1,045 lecturas

Proyecciones del análisis de la tasa de hash: por qué Bitcoin debería adoptar la ciencia de la información cuántica

por M-Marvin Ken13m2024/01/28
Read on Terminal Reader

Demasiado Largo; Para Leer

Los científicos de la información cuántica actualmente luchan por conseguir financiación para su trabajo, al igual que los científicos de antaño. Pero una vez que tengan suficientes qubits en la bolsa, serán imparables y ni ASICS ni las GPU podrán competir con sus QPU.
featured image - Proyecciones del análisis de la tasa de hash: por qué Bitcoin debería adoptar la ciencia de la información cuántica
M-Marvin Ken HackerNoon profile picture
0-item
1-item


***

La historia de la financiación de la ciencia

El científico siempre ha sido un empleado arriesgado en términos de retorno de la inversión. Están tratando de descubrir verdades sobre el universo y, a menudo, el universo les entrega el pájaro. Debido a que experimentar significa arriesgar mucho dinero y tiempo en una idea posiblemente sin valor, un científico es un pasante permanente, hasta que logra un gran avance y luego se convierte en asociado senior.

Dicho esto, el científico ha estado intentando ganar su propio dinero.


Para los alquimistas esto era literal. Si bien inventaron la química y catalizaron el nacimiento de la fiebre del oro en todo el mundo, convertir el plomo en oro fue, lamentablemente, una idea errónea en la que se creyó durante siglos. La búsqueda consumió la vida de una persona tras otra, con sólo sueños de riqueza para salir adelante.


Pero su tenacidad fue un testimonio de su resiliencia y paciencia.


Paciencia significaba, por el momento, permanecer al servicio de alguien que pudiera permitirse el riesgo de respaldar la ciencia en el pasado. Y eso significaba un Rey porque tenían oro/dinero recaudado de los impuestos.


Los magos y adivinos no tenían mucho sentido, y eran comediantes que venían a hacer pasar un rato agradable al Rey antes de que fuera a la guerra. Sin embargo, aunque arrojar tripas a una pared puede ser una estupidez, era misterioso y, si tenían razón, doblemente impresionante.


Y aquí estaba este científico (en quiebra), insistiendo en que conocían una estrategia REAL para ayudar al Rey a ganar.

¿Cuál fue su credibilidad?


Alrededor del año 200 a. C., el científico es Arquímedes y el rey es el jefe político de Siracusa. Ser un líder en aquellos tiempos significaba en gran medida que era necesario ganar guerras y como la historia le había enseñado a Kings la total inutilidad de los charlatanes, el científico tuvo la oportunidad de defender su caso.


Arquímedes explicó bien su caso. Se cuenta que hundió los barcos de los romanos con ingeniosas grúas y catapultas que arrojaban pesadas piedras.


Desde su época, el patrocinio de reyes, príncipes, banqueros y presidentes hacia los científicos ha sido inmenso. El científico es respetado, y todos los grandes científicos, incluso Leonardo da Vinci, que fue adulado principalmente por sus impresionantes obras de arte, se tomaron algún tiempo para diseñar armas.


Las armas ayudan al Rey a ganar y, por lo tanto, mantienen al científico con un trabajo. Los científicos pronto se volvieron cada vez más fundamentales en los esfuerzos bélicos. Especialmente físicos y químicos, que hasta la fecha han diseñado innumerables formas de hardware militar.


Sin embargo, el surgimiento de métodos científicos en economía, sociología, psicología y biología, todos basados en el poder del análisis estadístico y la inferencia lógica, rápidamente hizo que el científico fuera importante en todos los campos del quehacer humano. Sin embargo, el problema persistió. Para obtener un préstamo, el científico normalmente tenía, y todavía tiene, que depender de la financiación del gobierno, porque el gobierno sigue siendo el pez más grande capaz de asumir suficiente riesgo en los mercados financieros.


Odialo todo lo que quieras, pero sin el crédito del gobierno, ya sea deuda o dinero real, muchos trabajos científicos se habrían estancado. El mejor ejemplo: SpaceX.


Sin embargo, los gobiernos y su capacidad para degradar el dinero y financiar cosas con deuda hicieron que las guerras mundiales duraran más para destruir el mundo con mucha más fuerza. También condujo a depresiones económicas y, después de la crisis financiera de 2008, Satoshi Nakamoto, un genio informático, decidió crear Bitcoin, una herramienta monetaria fuera del ámbito de la devaluación de la moneda gubernamental.


Nacimiento de un modelo financiero divorciado del Rey

Bitcoin ha sido controvertido desde sus inicios. Por supuesto, los reyes y los gobiernos lo odian. Está afectando sus negocios. Una gran parte del sector privado también detesta su naturaleza de enorgullecerse de la exclusividad tecnológica, por lo que seis años después, se implementó una bifurcación dura para crear Ethereum, una criptomoneda creada para proporcionar servicios adicionales de blockchain, como contratos inteligentes.

Muchas otras bifurcaciones duras surgieron rápidamente de los infieles.


Sin embargo, Bitcoin sigue siendo popular y recientemente se ha vuelto interesante para las grandes finanzas. El ETF de Bitcoin lo demuestra. Después de 15 años de reírnos de algo que sigue creciendo y mejorando, incluso el crítico más duro se callará y comenzará a escuchar con más intimidad. Porque ahora saben que les falta algo.


Los científicos energéticos también están empezando a prestar atención, y algunos afirman que la minería de Bitcoin puede ser nuestra vía rápida hacia una transición energética . A los ingenieros de energía les está yendo bien vendiendo paquetes de electricidad más baratos que han sido subsidiados adicionalmente por la minería de Bitcoin.


Pero estos llegan tarde a la fiesta. Los informáticos han ganado buenos ingresos en Bitcoin, Ethereum y Doge durante décadas. Y si algún científico ha vivido cómodamente fuera de la necesidad de obtener grandes fondos presupuestarios de los gobiernos, ese ha sido el científico informático, desde el siglo XX. Si bien el campo de la informática es mucho más joven que el de la física, la astronomía y la biología, muchos informáticos aprendieron rápidamente a ganar mucho dinero con la empresa privada y el trabajo individualizado, sin suplicar un préstamo a los Reyes y a sus grandes banqueros.


La ciencia futurista se financia a través de Bitcoin

Bitcoin es dinero para la gente, y la ciencia ha evolucionado para convertirse también en algo hecho como un bien público, en un plan de código abierto, por personas dedicadas que dedican su propio tiempo y dinero para hacer que algo bueno suceda.


Como mencioné, ahora existen científicos informáticos en Internet que están mejorando con entusiasmo el ecosistema de Bitcoin utilizando el poder de la colaboración y sus esfuerzos serios. En su mayoría provienen de la tierra del desarrollo de software y, después de recibir una píldora naranja, deciden quedarse en Bitcoiner-land y construir el ecosistema de Bitcoin.


Sin embargo, no ha habido mucha vía de acceso para otros tipos de científicos y esta es la oportunidad que existe, abierta de par en par, para que cualquiera la aproveche.


Actualmente, muchos científicos en el mundo de Bitcoin son informáticos del tipo que construye pruebas de conocimiento cero, resúmenes y más capas de la cadena de bloques de Bitcoin. Pero se necesitan muchos más científicos.


Para reiterar, creo que más científicos en ingeniería eléctrica y energética deberían estar a la vanguardia de cómo los equipos de minería de Bitcoin pueden proporcionar acceso a la electricidad a quienes no la tienen, haciendo que las inversiones en fuentes de energía limpias y abandonadas sean mucho más fáciles de gestionar. ¿Qué mejor trabajo que ser el ingeniero eléctrico que diseña su propio trabajo llevando electricidad a tu gente?


Todo estudiante universitario de ingeniería eléctrica, sea cual sea el país en desarrollo, debería aprender sobre esto. Porque los países en desarrollo de África, Asia y América Latina están luchando por aumentar el uso de electricidad a partir de fuentes de energía que de otro modo serían baratas, debido a las altas primas que los locales simplemente no pueden pagar. El conocimiento del uso de Bitcoin para subsidiar el acceso a la electricidad a partir de fuentes de energía abandonadas debe difundirse lo más ampliamente posible.


Ahora, como aspirante a científico de la información cuántica, siento que también hay un lugar para mí en el ecosistema de Bitcoin.


Si bien el público podría saber cómo la ciencia de la información cuántica amenaza con deshacer el bien que Bitcoin ha hecho al potencialmente hackearlo, encuentro que construir algoritmos resistentes a lo cuántico está lejos de arañar la superficie de las capacidades cuánticas.


Por ejemplo, las tecnologías cuánticas podrían proporcionar mejores sensores de señal para los nodos de Bitcoin, permitiendo que incluso las señales débiles se transmitan con éxito y garanticen la extracción de bloques.


Las soluciones de computación cuántica en logística podrían ayudar a orientar mejor cómo se podría configurar mejor la infraestructura de Bitcoin en todas las naciones y continentes para un uso óptimo.


Las redes cuánticas podrían proporcionar mejores formas de transmitir información de Bitcoin de forma segura.


Algunos problemas en el ecosistema de Bitcoin podrían ser problemas BQP (polinomio cuántico de error acotado), que son competencia de la ciencia de la información cuántica y deberían descubrirse y trabajarse utilizando computadoras cuánticas.


Lo más importante es que las computadoras cuánticas serán mucho mejores en la extracción de criptomonedas de prueba de trabajo que las computadoras clásicas.


Cuando Bitcoin se hace amigo de la mecánica cuántica

La ley de Moore está llegando a su fin. IBM ya ha construido transistores con sólo 5 átomos. Al hacerse más pequeños, resulta más difícil gestionar el ruido térmico y otros problemas a nanoescala. Para gestionar el ruido térmico, se enfriará aún más, como se hace con los qubits. Además, un transistor de 1 átomo es efectivamente un qubit.


Este es el reino cuántico y, nos guste o no, más personas estudiarán la mecánica cuántica en un futuro no muy lejano y, por extensión, la computación cuántica. El mundo de la informática clásica sólo puede escalar mediante una multiplicidad de la misma tecnología, lo que consumirá aún más energía. Se necesitarán las ganancias de eficiencia de las tecnologías cuánticas, como las computadoras cuánticas.


Si bien he dicho que la computación cuántica es muy costosa , la ciencia de construir qubits está avanzando y los sistemas se están volviendo más poderosos. Puede que no haya un crecimiento exponencial de qubits con su propia ley de Moore, pero un crecimiento lineal de qubits conduce a una potencia computacional exponencial. ¡Qué tipo de ley es la de Moore!


Recuerdas este gráfico;


Si aproximadamente 14 mil millones de dólares en 2023 pueden generar 48 qubits lógicos (los qubits lógicos son los qubits reales tal como se manipulan en la teoría matemática), por extrapolación lineal, 125 mil millones de dólares para 2030, como se vio arriba, generarán 428 qubits lógicos.


Pero dentro de 7 años, el propio Bitcoin podría haberse disparado a 200.000 dólares por bitcoin, lo que supone una capitalización de mercado de 4,2 billones de dólares. Por extrapolación lineal, se necesitan 3 billones de dólares en inversiones globales para llegar a 10.000 qubits lógicos.


Como podemos ver, Bitcoin por sí solo puede pagarlo en un lapso de 7 años.


¿Por qué 10.000 qubits?


Mi proyecto de investigación

https://qworld.net/qcourse551-1/


Durante los últimos tres meses, he estado estudiando QCourse551-1, que se ofreció en colaboración entre QWorld y Classiq Technologies. Mi proyecto de investigación fue el Proyecto 11: Minería de Bitcoin utilizando el algoritmo de búsqueda de Grover.


La motivación para mi proyecto provino de un trabajo de investigación que muestra que solo 10.000 qubits lógicos pueden minar Bitcoin más rápido que cualquier sistema clásico que utilice el mismo consumo de energía.


Esto se debe a que 10.000 qubits pueden codificar el proceso de hash SHA256 doble completo que se utiliza para extraer Bitcoin, pero dado que utilizan el algoritmo de búsqueda de Grover, logran efectivamente una aceleración cuadrática mediante raíz_cuadrada(N), donde N es el número de elementos para verificar en un Base de datos no estructurada. Los ASIC que extraen bitcoins también verifican una base de datos no estructurada de hashes aleatorios para determinar el valor nonce.


La pregunta es ¿cuál es más rápido?


La mayoría de los mineros ASIC hoy en día verifican terahashes o 1 millón de hashes por segundo. Por ejemplo , este minero comprueba 120TH/s. Eso es 120 millones de hashes por segundo.


¿Puede una computadora cuántica superar eso?


Por supuesto.


raíz_cuadrada(120 millones) = sólo 10954 comprobaciones por segundo. Un aumento de eficiencia del 1.095.400 %.

Y cuanto mayor es la competencia, más avanza la computadora cuántica en la carrera.


La tasa de hash actual se está disparando a más de 600 millones de millones de hash por segundo. Esto está generando suficiente calor como para preocupar a los científicos del clima. Pero, ¿qué pasaría si reemplazáramos todos esos ASIC torpes con QPU de última generación del año 2032? ¿Cuántos hashes comparativos por segundo registrarían? raíz_cuadrada(600 millones de millones) = 24 millones de cheques por segundo. Un aumento de la eficiencia del 2.400 millones % .


Si lo anterior no es una propuesta atractiva, no sé qué lo es.


Bitcoin debería financiar la investigación en computación cuántica. Tomará un tiempo, pero cuando suceda, será glorioso. Será un evento más canónico que el alunizaje.


En nuestra investigación, estábamos comprobando un sistema muy simplificado con sólo entradas y salidas de 8 bits, modelado a partir de un operador de Grover que trabaja con menos de 25 qubits.


Dado nuestro poder de hash realmente bajo, las ventajas de la búsqueda de Grover no se pudieron vislumbrar de primera mano, y solo se pudieron inferir con un análisis de complejidad relevante de las ejecuciones/profundidad de la computadora clásica (mi computadora portátil) versus la profundidad del circuito de Grover ejecutado. en el simulador Classiq Aer.


Si bien hubiera sido bueno modelar la energía y el gráfico de complejidad de lo que esto significa, desafortunadamente se nos acabó el tiempo. Sin embargo, teníamos algunos resultados que mostrar por nuestro trabajo.


A continuación se muestra lo que teníamos, incluida la profundidad de cada circuito.


a) El algoritmo clásico MD5 simplificado

Modelamos una versión simplificada del MD5 (un primo más primitivo de SHA256) que procesa 95 caracteres ASCII imprimibles para encontrar el nonce para valores hexadecimales con dificultad = 1.

Nota: Nuestros valores hexadecimales eran solo de 2 dígitos porque estamos trabajando con valores de 8 bits. Entonces, nuestros posibles valores de dificultad 1 están solo en 16 posibilidades, es decir, 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 0a, 0b, 0c, 0d, 0e, 0f.


00 también es un elemento de dificultad 2. Por lo tanto, la función de búsqueda/hash se llama simplificada_MD5_8bit_difficulty_1or2.


 def simplified_MD5_8bit_difficulty_1or2(): printables_list = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~' for i in printables_list: x2 = ord(i) x3 = bin(x2)[2:] if len(str(x3))==7: x4 = x3+'0' if len(str(x3))==6: x4 = x3+'00' x5 = list(x4) a0 = 2*int((x5[0])) a1 = int(x5[1]) b0 = 2*int((x5[2])) b1 = int(x5[3]) c0 = 2*int((x5[4])) c1 = int(x5[5]) d0 = 2*int((x5[6])) d1 = int(x5[7]) a = a0 + a1 b = b0 + b1 c = c0 + c1 d = d0 + d1 a = ((d ^ (b & (c ^ d))) + (c ^ (d & (b ^ c))) + (b ^ c ^ d) + (c ^ (b | ~(d))) + b) print() d1 = d//2 d0 = d%2 d = d1*(2**7) + d0*(2**6) a1 = a//2 a0 = a%2 a = a1*(2**5) + a0*(2**4) b1 = b//2 b0 = b%2 b = b1*(2**3) + b0*(2**2) c1 = c//2 c0 = c%2 c = c1*(2**1) + c0*(2**0) decimal_result = d + a + b + c binary_result = bin(decimal_result)[2:] print(binary_result) hex_result = hex(decimal_result) print(hex_result) if hex_result == '0x0': difficulty_2.append(hex_result) collisions_difficulty_2.append(i) if hex_result == ('0x1' or '0x2' or '0x3' or '0x4' or '0x5' or '0x6' or '0x7' or '0x8' or '0x9' or '0xa' or '0xb' or '0xc' or '0xd' or '0xe' or '0xf'): difficulty_1.append(hex_result) collisions_difficulty_1.append(i) print('Difficulty_1 list = ',difficulty_1) print('Difficulty_2 list = ',difficulty_2) print('Colliding inputs for difficulty 1 = ',collisions_difficulty_1) print('Colliding inputs for difficulty 2 = ',collisions_difficulty_2) difficulty_2 = [] difficulty_1 = [] collisions_difficulty_1 = [] collisions_difficulty_2 = [] import numpy as np simplified_MD5_8bit_difficulty_1or2()

Como puede verse, para encontrar los elementos de dificultad 1 (y por extensión los de dificultad 2), tenemos que reiterar 40 líneas de código (ignorando espacios e imprimiendo en el bucle for).

Hay 96 caracteres ASCII imprimibles para hacer hash y verificar, por lo tanto 96 * 40, lo que nos da una profundidad de circuito de 3840.

Sin embargo, mi computadora portátil ejecuta esto rápidamente. Menos de unos segundos.

b) El algoritmo cuántico MD5 simplificado

Modelamos una versión cuántica de nuestro algoritmo MD5 simplificado para simular la búsqueda de los valores de dificultad 1 nonce sin importar cuál fuera el carácter ASCII de entrada al circuito.

Esto es posible porque todo lo que necesitamos es un cero al comienzo de nuestro valor hexadecimal. Dado que nuestro conjunto de hash era pequeño (solo 96 caracteres ASCII), ajustamos el sistema para ignorar el valor ASCII de entrada para que sea redundante y para intentar capturar todos los ceros posibles dada la expresión aritmética;


a == ((d ^ (b & (c ^ d))) + (c ^ (d & (b ^ c))) + (b ^ c ^ d) + (c ^ (b | ~(d) )) + b)

que también está en el algoritmo clásico de Python.


Observe que las 4 funciones que se suman se derivan del algoritmo MD5 original .


Como queremos valores de dificultad 1, agregamos d = 0 y a = 0 a la función anterior y luego la sintetizamos en la plataforma Classiq.


(Nota: Este es un atajo gracias al trabajo incansable del equipo de Classiq. El código Python también se creó en el SDK de Python de Classiq, pero tuvo un error de último momento. Por lo tanto, solo tenemos código del SDK de Python funcional para el operador de Grover. pero no para el operador de Grover con dificultad: 1 hash/búsqueda, que es lo que tenías que ver aquí )


Por lo tanto, nuestra expresión aritmética de entrada es;


a == ((d ^ (b & (c ^ d))) + (c ^ (d & (b ^ c))) + (b ^ c ^ d) + (c ^ (b | ~(d) )) + b) y d == 0 y a == 0



El circuito resultante tiene una profundidad de sólo 913

¡El circuito cuántico gana!


Nota final

Si bien el tiempo del proyecto terminó, nuestro trabajo aún está en progreso, y continuaremos hasta que construyamos un minero cuántico de bitcoin funcional de 10,000 qubit.


Los esfuerzos voluntarios para apoyarnos técnicamente son muy bienvenidos. Parte de nuestro código todavía tiene fallas y solo hemos arañado la superficie de las capacidades de la plataforma Classiq. Una ingeniosa herramienta de software que elimina los engorrosos retoques con las puertas, como habría sido necesario para cualquiera que construyera el mismo proyecto utilizando Qiskit.


Un agradecimiento especial a Classiq y QWorld por la oportunidad. Y a nuestro mentor, el Dr. Eyal Cornfeld, por su orientación.


***