Bitcoin Account Höhe checken

Liebe alle,

ich bin absoluter Neuling was Crypto angeht und arbeite mich gerade etwas ein. Hierzu spiele ich etwas mit dem praktischen Umgang mit BC rum. Ich habe mir dazu ein paar BC über Bison gekauft und diese dann erfolgreich in mein BRD-Wallet geschickt. So weit so gut. Nun würde ich aber gerne (nur um das ganze System zu verstehen und zu kennen) auf der Blockchain nachsehen, ob meine BC dort auch auf meine Wallet laufen. Dabei ist mir aufgefallen, dass sich anscheinend mein public key im BRD Wallet verändert hat. Die BC, welche ich auf meinen „alten“ public key gesendet habe, sind aber in BRD noch da. Kann sich das jemand erklären? Unter dem neuen public key ist laut https://www.blockchain.com/ -explorer kein BC hinterlegt, dort liegt er unter der alten Wallet.

Vermutlich sind das ziemlich dumme Fragen aber ich steige da einfach nicht mehr durch. Danke euch vorab!

Liebe Grüße,

Chrisser

Ich nehme an mit BC meinst du Bitcoin?

Mit public key meinst du wahrscheinlich Adresse. Das ist nicht das gleiche, und die public keys sollten dein Wallet nicht unbeabsichtigt verlassen.

Wenn du eine Transaktion tätigst, dann dauert es je nach Transaktionsgebühr ein Weilchen, bis deine Transaktion in einen Block aufgenommen wird und gemined wird. Erst dann ist sie auch in der Blockchain sichtbar.

Außerdem musst du im Blockchain Explorer genau die Adresse eintragen, auf die du die Bitcoin gesendet hast. Soweit ich weiß erzeugt dir die BRD Wallet (wie alle besseren Wallets) für jedes Empfangen eine neue Adresse.
Wenn du also in BRD auf Empfangen gehst, um eine Adresse anzuzeigen, dann ist das nicht die, die du beim letzten Mal verwendest hast. Dein Account, also dein „Konto“, umfasst sehr viele Adressen. Die Wallet addiert die Balance auf den Adressen auf, um dir deinen Kontostand anzuzeigen.

Das ist interessant und wusste ich noch nicht, danke. Wie kann ich dann mein „Konto“ aus der BRD Wallet auslesen oder muss ich damit leben, dass meine Bitcoin so auf Dauer auf verschiedenen Konten „liegen“?

Deine Adressen gehören alle zum gleichen Account/Konto. Jede einzelne Adresse wird aus genau einem Public Key berechnet. Alle diese Public Keys, die zu einem einzelnen Account gehören, werden wiederum von einem übergeordneten Extended Public Key abgeleitet (xpub).

Im Blockchain Explorer kann man auch den xpub eingeben, dann würdest du deinen gesamten Kontostand sehen. Dass würde ich aber auf keinem Fall machen, da du dann eine gewisse Privacy aufgibst und deine Wallet bei Bekanntgabe der Public Keys auchein kleines bisschen unsicherer wird.

Darüber kann man sich natürlich streiten. Deine Wallet muss zur Ermittlung deines Kontostands auch alle Adressen bei einer fremden Node abfragen. Aber die manuelle Eingabe im Browser ist vielleicht nochmal was anderes.

1 „Gefällt mir“

Ah okay, danke! Das bedeutet dann aber auch, dass mein Seed bzw. private key für alle unter dem dem xpub zusammengefassten Adressen derselbe ist?

Beim Private Key ist es genauso.

Ein Account hat einen übergeordneten Extended Private Key (xprv). Aus diesem kann der xpub berechnet werden.

Die Private Keys für die einzelnen Adressen werden dann vom xprv abgeleitet.

Die Public Keys für die einzelnen Adressen können entweder von den Private Keys, oder vom xpub abgeleitet werden.

Wow, das ist ganz schön kompliziert. Vielen lieben Dank für die Erklärung.

Noch eine letzte Frage, kann ich mit meinem BRD-Seed dann auch in einer anderen Wallet (bspw. Exodus) meine Accounts wiederherstellen oder bin ich für immer von BRD abhängig?

Auf jeden Fall brauchst du die 12 Wörter, die dir BRD generiert hat (siehe hier: https://brd.com/support/articles/115009772648).

Dafür sind zwei Dinge wichtig:

  1. BRD Wallet muss sich bei Erzeugung deiner Seed Phrase und deines Seeds an den BIP39 Standard halten. Nach kurzer Recherche sieht es so aus, als würde BRD das machen.

  2. Von deinem Seed können viele verschiedene Accounts für verschiedene Coins abgeleitet werden. Der spezielle Derivation Path, der von deinem Seed zu dem von BRD verwendeten Account führt. muss dir bekannt sein.

Dann kannst du später deine Recovery Phrase und den entsprechenden Derivation Path in einer anderen Wallet eingeben und hast deine Coins wieder. Allerdings kann man nicht in allen Wallets einen spezifischen Derivation Path vorgeben. Exodus kann das glaube ich nicht, bin mir aber nicht sicher. Das Schweizer Taschenmesser für Bitcoin wäre in diesem Fall die Electrum Wallet.

Es sieht z.B. so aus, als würde BRD folgenden Derivation Path verwenden, und der Import scheint zu funktionieren (ohne Gewähr meinerseits :slight_smile:):

Recover BRD Wallet (BreadWallet) in Electrum

Diese Thematik nennt sich coin control. Viele Wallets wählen für dich aus, von welchem Konto (Adresse) du eine Zahlung tätigst. Das kann dazu führen, dass dein Guthaben sich nach und nach zerstückelt, was später beim Zusammenführen zu höheren Transaktionskosten führen kann.

Gibt es irgendeine Möglichkeit dies zu vermeiden?

Man kann Adressen wiederverwenden. Damit verlierst du aber Privatsphäre, weil dann alle deine Transaktionen miteinander verknüpft werden.

Für den alltäglichen Zahlungsverkehr wird Bitcoin irgendwann eh unverwendbar sein, weil die Anzahl der Transaktionen pro Zeit begrenzt ist. Dafür gibt es das Lightning Netzwerk, wo das Problem wegen der geringen Transaktionsgebühren vernachlässigbar ist. Roman hat neulich ein gutes Video zum Aufsetzen einer umbrel Node gemacht.

Es sieht so aus, als würde sich das im privaten Bereich durchsetzen: Bitcoin als Reserve und Lightning als Zahlungsmittel.