En el video principal sobre criptomonedas, hice dos referencias a situaciones en las que, para romper una determinada pieza de seguridad, tendrías que adivinar una cadena específica de 256 bits. Uno de ellos fue en el contexto de las firmas digitales y el otro en el contexto de una función hash criptográfica. Por ejemplo, si desea encontrar un mensaje cuyo hash SHA-256 es una cadena específica de 256 bits, no tiene mejor método que simplemente adivinar y verificar mensajes aleatorios, y esto requeriría, en promedio, 2^256 intentos. Ahora bien, este es un número tan alejado de cualquier cosa con la que nos hayamos enfrentado que puede ser difícil apreciar su tamaño.
Pero vamos a darle una oportunidad. 2^256 es lo mismo que 2^32, multiplicado por sí mismo 8 veces. Ahora, lo bueno de esa división es que 2^32 son 4 mil millones. ¿Cuál es al menos un número en el que podemos pensar, verdad? Es el tipo de cosas que podrías ver en un titular. Entonces, lo que debemos hacer es apreciar cómo se siente realmente multiplicar 4 mil millones por sí mismo 8 veces sucesivas. Como muchos de ustedes saben, la GPU en su computadora puede permitirle ejecutar una gran cantidad de cálculos en paralelo increíblemente rápido. Entonces, si tuviera que programar especialmente una GPU para ejecutar una función hash criptográfica una y otra vez, una realmente buena podría hacer un poco menos de mil millones de hash por segundo.
Digamos que solo toma un montón de ellos y llena su computadora con GPU adicionales para que su computadora pueda ejecutar 4 mil millones de hashes por segundo. Entonces, los primeros 4 mil millones aquí representarán la cantidad de hashes por segundo por computadora. Ahora, imagine cuatro mil millones de estas computadoras repletas de GPU. A modo de comparación, a pesar de que Google no hace público su número de servidores, las estimaciones lo sitúan en millones de un solo dígito.
En realidad, la mayoría de esos servidores van a ser mucho menos potentes que nuestra máquina imaginada repleta de GPU. Pero digamos que Google reemplazó todos sus millones de servidores con una máquina como esta. Entonces, cuatro mil millones de máquinas significarían unas mil copias de este Google mejorado. Llamemos a eso un valor de KiloGoogle de poder de cómputo. Hay alrededor de 7.300 millones de personas en la Tierra, así que ahora imagina darle a un poco más de la mitad de cada individuo en la Tierra su propio KiloGoogle personal. Ahora, imagina cuatro mil millones de copias de esta Tierra. A modo de comparación, la Vía Láctea tiene entre 100 y 400 mil millones de estrellas. Realmente no lo sabemos, pero las estimaciones tienden a estar en ese rango. Así que esto sería similar a un 1% completo de cada estrella en la galaxia, teniendo una copia de la Tierra, donde la mitad de las personas en esa Tierra tienen su propio KiloGoogle personal.
A continuación, trate de imaginar 4 mil millones de copias de la Vía Láctea. Y vamos a llamar a esto su Súper Computadora GigaGaláctica, ejecutando alrededor de 2^160 conjeturas por segundo. ¿Ahora cuatro mil millones de segundos? Eso es alrededor de 126,8 años. ¿Cuatro mil millones de esos? Bueno, eso es 507 mil millones de años, que es aproximadamente 37 veces la edad del universo. Entonces, incluso si tuviera su computadora GigaGalactic multiplanetaria KiloGoogle por persona repleta de GPU adivinando números para 37 veces la edad del universo, solo tendría una probabilidad de 1 en 4 mil millones de encontrar la conjetura correcta.
Por cierto, el estado del hashing de Bitcoin en estos días es que todos los mineros juntan adivinar y verificar a una velocidad de alrededor de cinco billones de billones de hashes por segundo. Eso corresponde a un tercio de lo que acabo de describir como un KiloGoogle. Esto no se debe a que en realidad haya miles de millones de máquinas empaquetadas con GPU, sino a que los mineros en realidad usan algo que es mil veces mejor que una GPU: circuitos integrados específicos de la aplicación. Estas son piezas de hardware diseñadas específicamente para la minería de Bitcoin, para ejecutar un montón de hashes SHA-256 y nada más. Resulta que se pueden obtener muchas ganancias de eficiencia cuando descarta la necesidad de computación general y diseña sus circuitos integrados para una y solo una tarea. Además, sobre el tema de las grandes potencias de dos que personalmente me resulta difícil entender, este canal recientemente superó los 2^18 suscriptores, y para involucrarme un poco más con una parte secundaria de esas 2^18 personas, yo Voy a hacer una sesión de preguntas y respuestas.
Dejé un enlace en la descripción a un hilo de Reddit donde puedes publicar preguntas y subir las que quieras escuchar respuestas, y probablemente en el próximo video o en Twitter o algo así , anunciaré el formato en que me gustaría dar respuestas. Hasta entonces..