In der Wallet befindet sich auf einigen Adressen ein Bruchteil von Bitcoin. Nun bin ich nicht sicher, ob beim Empfang diese Adressen tatsächlich mit meinem Private Key bestätigt sind. Es könnte durch einen Angriff auf die BitBox App die Adresse zu einem Schlüssel von einem bösen Angreifer gehören.
Ich verstehe die Frage zwar nicht wirklich, aber du könntest folgendes machen.
Gehe in der BitBox App oben auf Konto Informationen und lasse dir den Erweiterten Public Key anzeigen. Diesen lässt du mit dem Button unten rechts auf der BitBox bestätigen. Ist das erfolgreich kontrollierst du auch die Adressen.
Danke, das habe ich gemacht. Der erweiterte Public Key stimmt überein. Kann ich jetzt davon ausgehen, dass ich in der Lage bin, den gesamten Bestand von alle Adressen erfolgreich zu versenden oder könnten einzelne Adressen davon, die ich nicht genau geprüft hatte, einem anderen gehören?
Siehe bitte hier: ab Minute 15:45
DIE UNBEKANNTE GEFAHR VON HARDWARE WALLETS | Bitcoin im Ländle - Vortrag von Thomas
Dort wird u. a. der Fall geschildert, dass die Companion App böse ist. In dem geschilderten Fall wird beim Generieren einer Empfangsadresse nicht mein XPUB verwendet, weil sie böse ist. Sie verwendet ihren eigenen Export der den zum privaten Schlüssel vom Bösen Unbekannten gehört. Die App gibt deshalb diese Adresse des Bösen hier aus. Wenn ich diese nicht prüfe und Bitcoin dorthin sende, gehören sie technisch nicht mehr mir. Es ist sogar möglich, die App so zu manipulieren, dass sie die empfangenen BTC anzeigt und mich in dem Glauben lässt, es wären meine Bitcoins. Dass diese mir nicht gehören, stelle ich erst dann fest, wenn ich sie versenden will. Das ist dann nicht möglich, weil mein Schlüssel nicht dazu passt. Daher ist es für mich wichtig zu wissen, ob mein Schlüssel zu diesen Adressen passt. Ich hatte nur beim Generieren der Adressen die Chance, diese zu verifizieren. Gerade stehen mir die Schweißperlen auf der Stirn, da ich nicht sicher bin, ob ich noch über alle Adressen die Verfügungsmacht habe.
Du kannst dir auch auf dem Handy die Bluewallet App installieren und den XPUB der BitBox dort als Watch Only Wallet importieren (QR Code scannen). Wohlgemerkt den XPUB, NICHT den Seed dort eingeben!
Dort kannst du dann oben rechts auf die 3 Punkte gehen, Werkzeuge auswählen und dann unter „Ist dies meine Adresse?“ prüfen ob die Adresse zu deiner Wallet gehört.
Da du ja aber versenden willst könntest du Coins die auf Adressen liegen die dein Private Key nicht kontrolliert eh nicht versenden.
Wenn du der BitBox App nicht vertraust verwende doch eine Alternative. Sparrow ist das Schweizer Taschenmesser. Importiere dort deinen XPUB und wenn der Bestand der Gleiche ist wie in der BitBox App ist alle gut. ;)
Würde das auch so mit BlueWallet machen. Ich lass mit BlueWallet via der Watch only Wallet der Bitbox Empfangsadressen für die Bitbox generieren. Klappt einwandfrei.
Angenommen, die ersten drei Adressen in der BitBox App sind korrekt. Dann mache ich ein update mit einer kompromittierten Version. Danach erzeugt mir die App eine falsche Adresse, die ich in der App sehe und wohin ich BTC gesendet habe. Also ich verstehe das folgendermaßen. Ich Installiere eine andere App und importiere dort meinen XPUB. Danach sehe ich nur noch meine drei korrekten Adressen. Die vierte Adresse fehlt, weil sie mit einem anderen XPUB erzeugt wurde. Dann weiß ich, wie viele BTC ich verloren habe und was ich noch im Zugriff habe. Habe ich das so richtig verstanden?
So ungefähr. Das Problem sollte eigentlich gar nicht existieren wenn du jede Adresse auf die du Zahlungen empfangen willst auch auf der BitBox überprüfen lässt. Genau dafür ist die BitBox nämlich da! Eine kompromittierte App hätte da gar keine Chance. Es sei denn HW und App sind beide kompromittiert. Das Szenario ist aber mehr als unwahrscheinlich.
Ja, danke. In Ordnung. In dieser Beziehung bin ich eben paranoid. Ich bin jetzt nicht sicher, ob ich alle Adressen vor Verwendung verifiziert hatte. Daher möchte ich eben noch mal prüfen.
Hilfe, da ist alles leer!!!
Ich habe Sparrow als Watch only installiert und den erweiterten Public Key hineinkopiert.
Folgende Einstellungen sehe ich in den Konto Informationen in der BitBoxApp:
Konto Name: Bitcoin
Keypath: m/84’ /0’ /0’
Root Fingerprint …
Coin: Bitcoin (BTC)
Darunter steht der erweiterte Publik Key.
Diesen habe ich mit der Bitbox verglichen. Er stimmt überein.
In Sparrow stehen folgende Einstellungen:
Police Type: Single Signature
Script Type: Native Segwit (P2WPKH)
Script Policy der Eintrag war vorbesetzt, hier habe ich nichts geändert:
Descriptor: wpkh (Keystore1)
Darunter gibt es eine Registerkarte Keystore 1 mit folgendem Inhalt:
Type: Watch Only Wallet
Label: Keystore 1
Master fingerprint: Die Zeichenfolge habe ich hier so eingetragen, wie es in der BitboxApp steht
Derivation: m/84’ /0’ /0’
Xpub / zpub: zpub… ist hier krrekt drin.
Aber in Tranactions und UTXOs ist alles leer?
Was ist hier falsch?
Fehler ist wahrscheinlich, weil unten steht Disconnected. Bei der Installation wurden drei Varianten angeboten, um Sparrow mit einem Server zu verbinden. Dies habe ich nicht richtig verstanden, kann es bitte jemand so erklären, dass die maximale Privatshäre gewahrt wird und wie es eingestellt wird?
Neben Disconnected gab es einen Schalter, der beim Betätigen auf die gelbe Farbe gewechselt ist. Was dann bedeutet, dass es der öffentliche Sever ist. Davor wird in der Anleitung gewarnt, man soll es nicht tun? Wo ist die Einstellung für den Server zu finden und wie kann man die Angaben vom Public Server wieder entfernen?
Gibts diese Funktion auch beim ledger ???
Für maximale Privatsphäre musst du Sparrow mit deiner eigenen Fullnode verbinden! Ansonsten bleibt dir wohl oder übel nur der Public Server. Das selbe gilt auch für die BitBox App. Dort vertraust du ja aber offenbar auch den Shift Crypto Servern. Der Root Fingerprint muss in Sparrow identisch sein.