Wie können Sie private Schlüssel von MultiBit HD extrahieren?

Es war in MultiBit Classic möglich , aber ich kann es in MultiBit HD nicht finden.

Wäre es möglich, eine ausführlichere Erklärung der Antwort von Redee zu schreiben? Könnte jemand erklären, wie man den Patch anwendet und das Projekt erstellt? Ich habe viele andere Optionen ausprobiert, aber nichts anderes scheint für mich zu funktionieren. Danke im Voraus.
Ich dachte, der Sinn von HD-Wallets ist, dass Sie nur das Wort Seed benötigen, um alle privaten Schlüssel wiederherzustellen, die Sie jemals verwendet haben. Warum sollten Sie eine Liste davon haben, wenn Sie sie bei Bedarf (neu) generieren können?

Antworten (5)

WARNUNG: Während diese Antwort eine Lösung für das Problem in der Frage sein kann, beinhaltet sie, dass Sie Ihren Wallet Seed einem Tool im Internet aussetzen. Bitte seien Sie dabei sehr vorsichtig!


Ich kann keine Kommentare hinzufügen, also erweitere die Antwort von Chris.J:

Hier sind meine Notizen zum Wiederherstellen / Neuaufbau / Regenerieren / Extrahieren ALLER Adressen und Schlüssel, die von MultiBit HD verwendet werden:

  • Gehen Sie zu https://iancoleman.github.io/bip39/
  • Geben Sie im Feld „BIP39 Mnemonic“ Ihre 12 Wallet-Generierungswörter ein
  • Kein Passwort
  • Code: Bitcoin
  • Wählen Sie unter Ableitungspfad die Registerkarte BIP32 aus
  • Client: Benutzerdefinierter Ableitungspfad
  • Ableitungspfad FÜR EXTERNE (EMPFANGS-) ADRESSEN (kopieren und einfügen): m/0'/0
  • Ihre Empfangsadressen werden nun am Ende der Seite angezeigt.
  • Ableitungspfad FÜR INTERNE (ÄNDERUNGS-)ADRESSEN (kopieren und einfügen): m/0'/1
  • Ihre Änderungsadressen werden nun am Ende der Seite angezeigt. Absolutes Glück ;)

(Lösung gefunden auf: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki im Bild „Hierarchical Deterministic Wallets“)

Genau, ein anderer Leitfaden hat nicht erklärt, dass sich die Änderungsadressen auf einem anderen Ableitungspfad befinden. Danke – das hat mir Zugang zu meinem Bitcoin Cash verschafft, das ich „beanspruchen“ wollte
Ein lokales bip39-Tool wäre praktisch.

Falls Sie eine beta7-Brieftasche haben, die nicht BIP32-konform ist, können Sie die von @chris-j vorgeschlagene Methode nicht verwenden.

Der einfachste Weg für mich war, mich in die Signierfunktionen von MultiBit HD einzuklinken und den verwendeten privaten Schlüssel auf der Konsole zu protokollieren:

diff --git a/mbhd-core/src/main/java/org/multibit/hd/core/managers/WalletManager.java b/mbhd-core/src/main/java/org/multibit/hd/core/managers/WalletManager.java
index 61979a3..e8a0de1 100644
--- a/mbhd-core/src/main/java/org/multibit/hd/core/managers/WalletManager.java
+++ b/mbhd-core/src/main/java/org/multibit/hd/core/managers/WalletManager.java
@@ -1753,6 +1753,8 @@ public enum WalletManager implements WalletEventListener {
           if (signingKey.getKeyCrypter() != null) {
             KeyParameter aesKey = signingKey.getKeyCrypter().deriveKey(walletPassword);
             ECKey decryptedSigningKey = signingKey.decrypt(aesKey);
+            log.info("HACK address: " + signingAddress.toString());
+            log.info("HACK private key: " + decryptedSigningKey.getPrivateKeyAsWiF(networkParameters));

             String signatureBase64 = decryptedSigningKey.signMessage(messageText);
             return new SignMessageResult(Optional.of(signatureBase64), true, CoreMessageKey.SIGN_MESSAGE_SUCCESS, null);

Ich habe dies mit v0.5 folgendermaßen getestet:

  1. Klonen Sie das MultiBit HD Git-Repository
  2. Wenden Sie den Patch oben an
  3. Erstellen Sie das Projekt:mvn clean dependency:sources install
  4. Anwendung starten:java -jar mbhd-swing/target/multibit-hd.jar
  5. Gehen Sie zu Extras -> Nachricht signieren und geben Sie eine Bitcoin-Adresse aus Ihrer Brieftasche ein, für die Sie den privaten Schlüssel wiederherstellen möchten. Drücken Sie auf Fertig.
  6. Lesen Sie die Bitcoin-Adresse und den entsprechenden privaten Schlüssel aus der Konsolenausgabe
Dies könnte für Leute, die Bitcoins nur für geschäftliche Zwecke verwenden, etwas zu kompliziert sein.
Du bist mein Retter, @redee! Ich habe diese Methode erfolgreich in v0.5.1 verwendet, um meinen privaten Schlüssel für den Import in Omniwallet zu extrahieren, damit ich farbige Münzen in eine andere Brieftasche übertragen konnte, die sie ordnungsgemäß unterstützt. Die Zeilennummern hatten sich leicht geändert, aber derselbe Code funktionierte einwandfrei :D Oh, und ich musste die Schaltfläche "Nachricht signieren" verwenden, um die Ausgabe zu erhalten, anstatt nur "Fertig stellen" zu drücken.
Danke redee, gute Anleitung - konnte mein Geld auf eine andere Brieftasche (Jaxx) überweisen, nachdem Multibit meine Transaktionen als unbestätigt (für 8 Monate) angezeigt hatte, sodass ich sie nirgendwo anders überweisen konnte.

Da die privaten Schlüssel und Adressen deterministisch aus Ihren Wallet-Wörtern erstellt werden, müssen Sie nur Ihre Wallet-Wörter sicher aufbewahren – es besteht keine Notwendigkeit, einzelne private Schlüssel offenzulegen. Sie können Ihre Brieftaschenwörter verwenden, um Ihre Brieftasche entweder in MultiBit HD (verwenden Sie die Schaltfläche Wiederherstellen auf dem Bildschirm „Passwort eingeben“) oder mit anderen Tools neu zu erstellen.

Beispielsweise können Sie eine Offline-Kopie von https://dcpos.github.io/bip39/ erstellen und alle Ihre Adressen/privaten Schlüssel erstellen, wenn Sie möchten (verwenden Sie die Registerkarte BIP32).

Es gibt keine Möglichkeit, private Schlüssel in MultiBit HD zu exportieren, da BIP32-Wallets sowohl Empfangsadressen erstellen als auch Adressen bei Bedarf ändern. Durch das Exportieren und Importieren privater Schlüssel erhalten Sie im Allgemeinen keine vollständige HD-Wallet.

Es ist nicht möglich, private Schlüssel in MultiBit HD zu extrahieren, aber es kann in einer anderen Anwendung durchgeführt werden?
Tatsächlich gibt es Dutzende Gründe, warum wir private Schlüssel für eine einzelne Adresse benötigen.
Diese Seite scheint alle meine Empfangsadressen zu erstellen, aber nicht die Änderungsadressen.
Was ist, wenn wir für einen Hard Fork auf unsere privaten Schlüssel zugreifen müssen?

WARNUNG: Während diese Antwort eine Lösung für das Problem in der Frage sein kann, beinhaltet sie, dass Sie Ihren Wallet Seed einem Tool im Internet aussetzen. Bitte seien Sie dabei sehr vorsichtig, da

  1. ... tun Sie es einfach nicht!
  2. Siehe 1.
  3. Wahrscheinlich kennen Sie den Typen hinter der Webseite nicht gut genug, um ihm Ihre wertvollen Bitcoins anzuvertrauen.
  4. Selbst wenn Sie dies tun, wurde die Website möglicherweise gehackt und die Schlüssel gelangen innerhalb von Sekunden in die Hände von böswilligen Personen, die Ihre Bitcoins ausgeben.

Hier sind meine Hinweise zum Wiederherstellen / Neuerstellen / Regenerieren / Extrahieren der von MultiBit HD verwendeten Adressen und Schlüssel:

  1. Gehen Sie zu https://iancoleman.github.io/bip39/
  2. Geben Sie im Feld „BIP39 Mnemonic“ Ihre 12 Wallet-Generierungswörter ein
  3. Kein Passwort
  4. Münze: Bitcoin
  5. Wählen Sie unter Ableitungspfad die Registerkarte BIP32 aus
  6. Ableitungspfad (kopieren und einfügen): m/0'/0
  7. Ihre Adressen werden nun am Ende der Seite angezeigt. Glück ;)

Stellen Sie Ihre Brieftasche in Elektrum wieder her und verwenden Sie diese dann, um die privaten Schlüssel zu extrahieren. Auf dieser Seite erfahren Sie, wie Sie Ihre Brieftasche in Elektrum wiederherstellen können

Wenn Sie nur die privaten Schlüssel für bestimmte Adressen haben möchten, öffnen Sie die Registerkarte „Adressen“ über das Ansichtsmenü und klicken Sie dann mit der rechten Maustaste auf jede Adresse, um die Option zum Anzeigen des privaten Schlüssels zu erhalten. Wenn Sie alle Schlüssel exportieren möchten, verwenden Sie das Brieftaschenmenü > Private Schlüssel > Exportieren.

Der Videolink ist jetzt tot.
@Manu hat es stattdessen mit einer Textanleitung bearbeitet.