Ist es eine Befehlszeile, um zu überprüfen, wie viele Münzen nach dem Erstellen der Brieftasche erstellt werden?

Ist es eine Befehlszeile, um zu überprüfen, wie viele Münzen nach dem Erstellen der Brieftasche erstellt werden?

Ich habe gerade Bitcoin geklont und die Anzahl der Münzen auf 10 Millionen geändert

MAX_MONEY = 10000000

Daher würde ich gerne wissen, ob es sich um einen Befehl handelt, um diesen von mir eingefügten Wert zu überprüfen.

Ich weiß, dass ich die im Umlauf befindliche Menge mit dem RPC-Aufruf überprüfen kanngettxoutsetinfo

Antworten (2)

Zunächst einmal MAX_MONEYändert das Wechseln nicht die gesamte Geldmenge. Siehe Warum ändert MAX_MONEY nicht die maximale Anzahl an Coins? Sie müssen stattdessen eine neue anfängliche Blockbelohnung und ein Halbierungsintervall angeben.

Es gibt keine Befehlszeilenoption, um die Gesamtzahl der zu erstellenden Coins anzuzeigen. Dafür gibt es im Quellcode einen Unit-Testsubsidy_limit_test , der diesen Wert berechnet und mit der korrekten Zahl für Bitcoin vergleicht. Sie könnten diesen Code anpassen, um die Berechnung durchzuführen und das Ergebnis auszudrucken, und dann den Test so ändern, dass Ihr Code besteht.

vielen Dank, dass Sie Ihre Zeit und Ihr Wissen teilen

Nein, es gibt keine Möglichkeit, den Wert dieser Konstante anzuzeigen. Ich bin mir jedoch nicht sicher, ob diese Konstante wirklich das tut, was Sie tun möchten, also lassen Sie mich ihre Bedeutung erklären.

Die Konstante MAX_MONEY ist der maximale Betrag, der in einer einzelnen Bitcoin-Transaktion erscheinen kann, beispielsweise in tx_verify.cpp in CheckTransaction. Hier werden eigentlich zwei Prüfungen durchgeführt:

  1. Der Betrag in jeder Transaktionsausgabe wird gegen diesen Wert geprüft
  2. Es wird die Summe über alle Transaktionsausgaben geprüft

Sie könnten also theoretisch überprüfen, ob Ihr neuer Wert nach einer Neukompilierung verwendet wird, indem Sie eine Transaktion senden, die diese Einschränkungen verletzt, und auf die Fehlermeldung warten.

Was Sie jedoch eigentlich tun möchten (wenn ich Ihre Frage richtig gelesen habe), ist, die Gesamtmenge an Bitcoin zu erhöhen, die abgebaut werden kann . Diese Zahl ist nicht direkt fest codiert, sondern das Limit ergibt sich daraus, dass alle 210000 Blöcke die Subvention, also die Menge an BTC, die ein Miner zusätzlich zu den Transaktionsgebühren für das Schürfen eines Blocks verdient, halbiert wird. Dies geschieht in GetBlockSubsidy in der Validation.cpp unter Verwendung des Parameters nSubsidyHalvingInterval in der Chainparams.cpp. Wenn Sie also diesen Wert ändern wollen (Konsens zerstören), müssten Sie an diesen Stellen im Quellcode Änderungen vornehmen.