Leyendo los documentos en el objetivo :
El objetivo máximo utilizado por los dispositivos de minería SHA256 es:
0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Debido a que Bitcoin almacena el objetivo como un tipo de punto flotante , esto se trunca:
0x00000000FFFF00000000000000000000000000000000000000000000000000000
Sé que el propósito es obligar a los mineros a generar hashes con un valor inferior al objetivo. Pero los documentos son vagos, ¿por qué se requiere este truncamiento? Y entonces, ¿por qué truncar después de las primeras cuatro F?
El objetivo se almacena en el encabezado del bloque (se llama Bits) y solo ocupa 4 bytes. Obtenemos el valor objetivo de 256 bits de estos 32 bits. Por eso se trunca.
No es necesario almacenar los 256 bits, o incluso los 224 bits (si suponemos que los primeros 4 bytes son cero). No necesitamos tanta precisión.
Puede leer en wiki cómo se calcula el objetivo a partir de Bits.
También puede consultar mi respuesta aquí, con un ejemplo: ¿ Cómo se define la dificultad para el bloque '55798'?
Pablo Razvan Berg
Zergatul