¿Se creará una línea de comando para verificar la cantidad de monedas después de construir la billetera?

¿Se creará una línea de comando para verificar la cantidad de monedas después de construir la billetera?

acabo de clonar bitcoin y cambié la cantidad de monedas a 10 millones

MAX_MONEY = 10000000

así que me gustaría saber si hay algún comando para verificar este valor que inserté.

sé que puedo consultar la cantidad en circulación usando la llamada RPCgettxoutsetinfo

Respuestas (2)

En primer lugar, cambiar MAX_MONEYno cambiará la oferta monetaria total. Consulte ¿Por qué cambiar MAX_MONEY no cambia la cantidad máxima de monedas? En su lugar, deberá especificar una nueva recompensa de bloque inicial y un intervalo de reducción a la mitad.

No hay una opción de línea de comando para mostrar el número total de monedas que se crearán. Pero hay una prueba unitaria en el código fuente, llamada subsidy_limit_testque calcula este valor y lo compara con el número correcto de Bitcoin. Puede adaptar este código para hacer el cálculo e imprimir el resultado, y luego cambiar la prueba para que su código pase.

muchas gracias por compartir su tiempo y conocimiento

No, no hay forma de mostrar el valor de esta constante. Sin embargo, no estoy seguro de que esta constante esté realmente haciendo lo que quieres hacer, así que déjame explicarte su significado.

La constante MAX_MONEY es la cantidad máxima que puede aparecer en una transacción de bitcoin individual , por ejemplo, en tx_verify.cpp en CheckTransaction. Aquí, en realidad se realizan dos comprobaciones:

  1. El monto en cada salida de transacción se compara con este valor
  2. Se comprueba el total de todas las salidas de transacciones.

Por lo tanto, en teoría, podría verificar que su nuevo valor se use después de una recompilación al enviar una transacción que viole estas restricciones y esperar el mensaje de error.

Sin embargo, lo que realmente quiere hacer (si leí su pregunta correctamente) es aumentar la cantidad total de bitcoin que se puede extraer . Este número no está codificado directamente, pero el límite resulta del hecho de que cada 210000 bloques, el subsidio, es decir, la cantidad de BTC que gana un minero además de las tarifas de transacción por minar un bloque, se reduce a la mitad. Esto se hace en GetBlockSubsidy en validation.cpp, usando el parámetro nSubsidyHalvingInterval en chainparams.cpp. Por lo tanto, si desea cambiar ese valor (destruyendo el consenso), deberá realizar cambios en estas ubicaciones en el código fuente.