Tengo una pregunta sobre bitcoin, digamos que la salida es uniformemente aleatoria y que tiene una longitud de 256 bits. La salida de la función hash y=H(t) comienza con 25 ceros. ¿Cuántas veces habría que llamar a la función hash para obtener algo que comience con 25 ceros?
En segundo lugar, ¿cómo se verifica la solución y cuántos hashes se intentarían para resolverla?
Es bastante simple. Dado que los valores hash se distribuyen uniformemente, 25 ceros es tan probable como cualquier otro valor posible para los primeros 25 dígitos hexadecimales. Hay 16 valores posibles para cada dígito hexadecimal, por lo que el número de combinaciones posibles es 16^25, o aproximadamente 1,2676506×10 30 . Esto también significa que, en promedio, uno de cada 1,2676506 × 10 30 hashes comenzará con 25 dígitos cero hexadecimales.
Para verificar la solución, solo calcula el hash una vez y verifica si comienza con la cantidad requerida de ceros. Entonces, es 10 30 veces más fácil verificar el hash que encontrarlo.
Nate Eldredge
mcdoomington