wie man das gesamte Guthaben eines Privatekey oder Publickey BTC erhält

Da es einige Bitcoin-Adresstypen mit einem privaten Schlüssel oder einem öffentlichen Schlüssel gibt. Ich kann das Guthaben einer Adresse abrufen, aber wie kann ich das gesamte Guthaben des privaten oder öffentlichen Schlüssels abrufen? Wie können alle Adressen von einem privaten oder öffentlichen Schlüssel aufgelistet werden. Darüber hinaus können Sie Multisig-Adressen verarbeiten, die nicht aus demselben privaten Schlüssel wie dem öffentlichen Schlüssel generiert wurden.

Möchten Sie wissen, wie Sie dies für Bitcoins mit dem Bitcoin-Client oder einem anderen Wallet tun können, oder suchen Sie ein Programm (in welcher Sprache), um diese Daten für Sie zu extrahieren? Eine allgemeine Richtlinie finden Sie hier: bitcoin.stackexchange.com/questions/10090/…
@pebwindkraft In meiner Frage sagte ich, ich weiß, wie man das Gleichgewicht einer Adresse erhält. Hier möchte ich das gesamte Gleichgewicht aus den Adressen erhalten, die aus einem öffentlichen Schlüssel oder einem privaten Schlüssel generiert wurden.
@pebwindkraft jede Sprache ist in Ordnung. Ich möchte nur die Idee wissen, es zu machen.

Antworten (2)

Sie müssen alle Adressen generieren, die dem öffentlichen oder privaten Schlüssel entsprechen, den Sie überprüfen möchten, und dann alle im UTXO-Set suchen. Beispielsweise möchten Sie vielleicht nach P2PK, P2PKH, P2WPKH, 1-von-1-Multisig-Adresse mit nur diesem öffentlichen Schlüssel usw. suchen. Es gibt keine "eine Suche für alle".

Sollte außer 1-of-1 noch andere Multisig enthalten sein, wie 1-of-2, 2-of-3.
@KrisRoofe, es gibt technisch gesehen eine nahezu unendliche Anzahl von ihnen, es macht keinen Sinn, Adressen zu überprüfen, es sei denn, Sie glauben, dass jemand ihnen etwas geschickt hat

Neben der Antwort von MeshCollider möchte ich noch ein bisschen skizzieren, was geht/nicht geht...

  1. Wie kann ich das gesamte Guthaben des privaten oder öffentlichen Schlüssels erhalten?

ein priv/pubkey-Paar kann mehrere Adressen generieren. Ein Privatschlüssel ist der am häufigsten verwendete Standard für P2PKH-Adressen (beginnend mit „1“ im Bitcoin-Netzwerk). Sie können von einem komprimierten oder einem unkomprimierten Pubkey abgeleitet werden. Ein guter Spielplatz ist hier. Dann können Sie mit diesem Schlüssel P2SH-Adressen aller Art erstellen. Sie würden mit einer "3" beginnen. Und ja, Multisig-Adressen wären nur eine der Möglichkeiten. Es sind viele Kombinationen möglich (1-von-1, 1-von-2, 1-von-3, 2-von-3, 2-von-4 ...), die jeweils zu einer anderen „Typ 3“-Adresse führen . Wenn Sie also die Adressen im Bitcoin-Client erstellt haben, können Sie den Befehl "getbalance" verwenden. Dieser Befehl ist mit Konten verknüpft, und sobald die Adressen in Konten gruppiert sind, kann man den Gesamtsaldo in der Brieftasche oder in bestimmten Konten anzeigen. Verwendete Adressen in Accounts können mit "getaddressesbyaccount" eingesehen werden, und anschließend können die Adressen mit "listunspent" ausgewertet werden, greifend zur gewünschten Adresse. Es gibt auch den Befehl, den Gesamtbetrag zu sehen, der pro Adresse empfangen wurde (getreceivedbyaddress).

Zusammenfassend: Möglicherweise möchten Sie eine Programmierlogik erstellen, um die API-Aufrufe zu verwenden. Die API-Aufrufliste ist im Quellcode oder im Wiki verfügbar .

  1. Wie kann ich alle Adressen von einem privaten oder öffentlichen Schlüssel auflisten?

Wie MeshCollider erklärte, erfordert dies eine manuelle Einrichtung, nichts im Bitcoin-Client, das der Anforderung entspricht.

  1. Was ist mehr, wie man Multisig-Adressen verarbeitet, die nicht aus demselben privaten Schlüssel oder öffentlichen Schlüssel generiert wurden?

Wenn Sie die Multisig-Adresse mit dem Bitcoin-Core-Client ("addmultisigaddress") erstellt haben, sollte der Client die Werte für diese Adresse anzeigen. Wenn die Multisig "außerhalb" des Clients erstellt wurde, werden keine Werte für das Konto angezeigt, selbst wenn Sie die Adresse als "Nur beobachten"-Adresse hinzufügen (setaccount ist jetzt veraltet, und impogrtaddress ist offensichtlich der richtige Weg). Jedenfalls konnte ich meine Brieftasche nicht dazu bringen, einen Kontostand für diese importierten Adressen zu sehen (obwohl ich auf Regtest bin und txindex=1 in bitcoin.conf verwendet habe). Wenn die Adresse „nur“ bekannt ist und nicht in der Blockchain verwendet wurde, werden die P2SH-Multisig-Adressen sogar hinter einem Hash verborgen, was eine Einwegfunktion ist. Sie kennen also nie die Details der Schlüssel oder der Logik, die im Inneren verwendet werden ...