Wie kann der Kontostand für andere Adressen als die Verwendung von importAddress überwacht werden?

Gibt es eine andere Möglichkeit als importaddress, die Salden bestimmter Adressen zu sehen?

Wenn nicht, wie ist es für Wallets und Explorer möglich, Informationen (Guthaben, Transaktionen) über bestimmte Adressen zu geben, obwohl dies importaddresseinige Zeit in Anspruch nimmt? Weil wir früher oder später neu scannen müssen.

Antworten (3)

Gibt es eine andere Möglichkeit als importaddress, die Salden bestimmter Adressen zu sehen?

Sie können eine Brieftasche, die im dumpwalletFormat exportiert wurde, mit dem importwalletBefehl importieren. Sie können Adressen auch mit importmultiund importieren importpubkey. Aber im Allgemeinen, nein, es gibt keine Möglichkeit, Salden bestimmter Adressen in Bitcoin Core zu sehen, ohne einen import*Befehl zu verwenden.

Mit Bitcoin Core 0.17 können Sie den scantxoutsetBefehl verwenden, der den UTXO-Satz nach UTXOs durchsucht, die zu einem Ausgabeskript gehören (auf verschiedene Weise definiert).

Wenn nicht, wie ist es möglich, dass Wallets und Explorer Informationen (Guthaben, Transaktionen) über bestimmte Adressen geben, obwohl der Import von Adressen einige Zeit in Anspruch nimmt? Weil wir früher oder später neu scannen müssen.

Wallets verfolgen diese Informationen selbst. Sie tun dies auf die gleiche Weise wie die import*Befehle. import*Befehle sind Brieftaschenbefehle, die einer Brieftasche mitteilen, bestimmte Ausgabeskripte zu verfolgen. Sie verfolgen diese auf die gleiche Weise: Scannen Sie eingehende Blöcke und Transaktionen nach Ausgaben, die dem entsprechen, wonach sie suchen.

Blockchain-Explorer verwenden weder Bitcoin Core noch die Brieftasche für diese Art von Dingen. Sie unterhalten ihre eigenen Datenbanken, in denen die Informationen für alle Transaktionen und ihre Ausgaben gespeichert sind. Sie tun dies ähnlich wie Wallets, aber anstatt nach bestimmten Ausgabeskripten zu suchen, speichern sie einfach alle Ausgabeskripte.

Wie verfolgt Wallets diese Informationen?
einen Open-Source-Block-Explorer, auf den Sie verweisen können?
Wallets verfolgen diese Informationen, indem sie alle Transaktionen (sowohl in Blöcken als auch nicht) empfangen und dann die Ausgaben dieser Transaktionen nach bestimmten Skripten durchsuchen, nach denen sie suchen. Wenn die Skripte übereinstimmen, wird die Transaktion gespeichert und alle internen Datenbanken werden aktualisiert. Was Open-Source-Block-Explorer betrifft, werfen Sie einen Blick auf Insight: github.com/bitpay/insight
Ich weiß nicht was, aber mir fehlt etwas. Könntest du mir bitte helfen @Andrew ??? Nehmen wir an, ich habe eine Brieftasche erstellt und einen vollständig synchronisierten Knoten. Ein Benutzer mit einer Adresse, die auch einige Münzen hat, kommt zu meiner Brieftasche und meldet sich an. Jetzt muss die Brieftasche den Kontostand seiner Adresse anzeigen, aber in meinem Fall konnte ich ihn ohne erneutes Scannen nicht anzeigen - was einige Zeit in Anspruch nimmt. Wie machen es dann die bereits laufenden Wallets?
Benutzer haben in der Regel noch keine Adresse mit Coins, wenn sie ein Konto bei einem Online-Wallet-Service erstellen. Oder wenn sie es tun, bringen sie diese nicht zu diesem Online-Dienst mit. Viele Online-Dienste indizieren die Blockchain ohnehin schon für alle Adressen. Daher können sie diesen Index sehr schnell durchsuchen, anstatt die Blockchain erneut zu scannen, wenn ein Benutzer seine eigenen Adressen importiert.

Gibt es eine andere Möglichkeit als importaddress, die Salden bestimmter Adressen zu überwachen?

Nein, das Erstellen einer Watch-Only-Adresse ist der Weg, dies mit einer Brieftasche wie Bitcoin-Core zu tun.

wie es Portemonnaies und Entdeckern möglich ist, Auskunft zu geben ... obwohl importaddress einige Zeit in Anspruch nimmt?

Sobald die Blockchain anfänglich nach Transaktionen mit einer importierten Adresse gescannt wurde, muss die Brieftasche nur neue Blöcke auf Erwähnungen dieser Adresse prüfen, wenn sie die neuen Blöcke erhält , es sollte keine Notwendigkeit bestehen, die Blockchain erneut zu scannen.

Blockchain-Explorer können einen Index pro Adresse führen und die Salden für alle Adressen kontinuierlich verfolgen. Sie müssen diese nicht für jede neue Anfrage neu berechnen.

Ich habe ein Programm in Python3 geschrieben, mit dem Sie nach jeder Adresse im Bitcoin-Kern suchen können, unabhängig davon, ob sie zu Ihrer Brieftasche gehört oder nicht.

Hier ist der Github-Link:

https://github.com/ORP967/Bitcoin_Core_RPC_par_address

Lassen Sie mich wissen, was Sie denken und welche Verbesserungen Sie dafür haben könnten,