¿Cómo encuentro una clave pública y el valor de nbits para generar un bloque de génesis?

Espero crear una nueva criptomoneda a partir de una bifurcación de Bitcoin, principalmente para aprender y un poco de diversión. Seguí aproximadamente esta respuesta para llegar hasta donde estoy, pero el generador de génesis requiere un pubkeyy un nBitsparámetro, y no tengo idea de cómo obtenerlos.

Cualquier consejo o recurso relacionado con esos parámetros o la creación de criptomonedas en general sería excelente.

¿Intentaste buscar en Google los términos? Por ejemplo, primer golpe para nbits . pubkeyes una clave pública correspondiente a cualquier clave privada bajo su control.

Respuestas (3)

Explicación detallada de la codificación nBits https://bitcoin.org/en/developer-reference#target-nbits

En un sentido muy real, la elección exacta de la clave pública no importa . ¿Cómo calculo la raíz de Merkle para el bloque de génesis?

La base de monedas del bloque Génesis no se puede gastar ¿Por qué no se puede gastar la base de monedas del bloque Génesis?

La clave pública no importa, no se crean monedas en el bloque de génesis.

nBits decide la dificultad de los bloques, lo que afecta el tiempo que tardará en minar. También tienes que modificar el código de tus demonios para permitir esta dificultad.

¿Podría ampliar más sobre nBits, tal vez dar un poco de información sobre cómo seleccionarlo, también explicar qué quiere decir cuando dice modificar el código de mis demonios?
@karimkorun: Todavía es útil tener la clave privada correspondiente en caso de que alguna vez quieras firmar un mensaje para demostrar que lo creaste. ;)
Las monedas están en la base de monedas de Genesis Block, las 50. Pero no se pueden gastar, como se documenta en otro lugar.

Puede ver los números reales que están codificados en el código fuente del núcleo de bitcoin

CreateGenesisBlock(1231006505, 2083236893, 0x1d00ffff, 1, 50 * COIN)

donde está la firma de la función

static CBlock CreateGenesisBlock(uint32_t nTime, uint32_t nNonce, uint32_t nBits, int32_t nVersion, const CAmount& genesisReward)