Wie kann importprivkey die Wallet-Sicherheit gefährden, wenn ein öffentlich bekannter privater Schlüssel importiert wird?

Auf reddit wurde hier eine Frage gestellt, die ich beantwortet habe: https://www.reddit.com/r/Bitcoin/comments/3khrvm/how_do_i_use_private_keys_to_receive_bitcoin/

Luke-jr antwortet jedoch mit:

Tu das nicht. Sie gefährden die Sicherheit Ihres Wallets, um einen privaten Schlüssel zu importieren, den andere kennen.

ohne weitere Ausführungen. Kann jemand erklären, wovon er spricht?

Antworten (2)

Das Problem ist eher subtil und ergibt sich aus einer Kombination von Verhaltensweisen.

Zunächst einmal ist es absolut sicher, den privaten Schlüssel einer anderen Person zu verwenden, zumindest im eigenständigen Sinne. Angenommen, der private Schlüssel ist P und die öffentliche Adresse ist A , und angenommen, Sie möchten ihr Geld ausgeben. Dann scannen Sie die Blockchain nach Transaktionsausgaben, die an A adressiert sind . Wenn Sie eine sehen, erstellen Sie eine neue Transaktion an eine gewünschte Ausgangsadresse B (egal ob Sie sich selbst oder jemand anderen bezahlen) und signieren sie mit dem privaten Schlüssel P . Keine Probleme hier.

Das Problem beginnt, wenn wir über Wallet-Software sprechen. Wenn Sie einen privaten Schlüssel P in Ihr Wallet „importieren“ , wird er Ihrem persönlichen Pool privater Schlüssel (und den zugehörigen öffentlichen Adressen) hinzugefügt. Bei jeder ausgehenden Transaktion wird fast immer ein Betrag als Wechselgeld an Sie zurückgeschickt. Geht die Änderung an die Adresse A (mit zugehörigem privaten Schlüssel P ), dann können auch andere Personen, die den privaten Schlüssel P kennen , dieses Geld ausgeben. Letztendlich bedeutet dies, dass Sie, wenn Sie den privaten Schlüssel einer anderen Person importieren, unter Umständen die Kontrolle über Ihr eigenes Geld verlieren.

Wie andere Leute bereits erwähnt haben, besteht der sichere Weg, mit dieser Situation umzugehen, darin, die mit der Adresse A verknüpften Coins (unter Verwendung des privaten Schlüssels P ) in Adressen zu "fegen" , über die Sie die ausschließliche Kontrolle haben. Mit anderen Worten, verwenden Sie diesen privaten Schlüssel, um selbst zu bezahlen, aber verwenden Sie die Adresse niemals als Ausgabe für Änderungen.


Als Analogie: Angenommen, Sie befinden sich in einer Halle mit nummerierten Schließfächern. Es ist immer möglich, Geld in ein beliebiges Schließfach einzuzahlen (benötigt wird nur die Adresse, nicht der private Schlüssel). Schließfach Nr. 0 kann sowohl von Ihrem Freund als auch von Ihnen geöffnet werden. Schließfach Nr. 1 und Nr. 2 können nur von Ihnen geöffnet werden.

Wenn Sie Bargeld in den Schließfächern Nr. 1 und Nr. 2 haben, gehört es Ihnen und Ihnen allein. Wenn Sie jetzt eine Transaktion durchführen, nehmen Sie Bargeld aus einem oder beiden dieser Schließfächer und geben dann etwas als Wechselgeld zurück. Sie können auch Bargeld aus Schließfach Nr. 0 entnehmen, kein Problem. Aber wenn Sie etwas Wechselgeld in Schließfach Nr. 0 zurückgeben , dann verlieren Sie Ihre exklusive Kontrolle über dieses Bargeld. Sie müssen das Wechselgeld also nur in Ihre eigenen Schließfächer Nr. 1 und Nr. 2 zurückgeben, nicht in das gemeinsame Schließfach Nr. 0.

Wenn Eve Ihnen einen privaten Schlüssel mit Bitcoins im Austausch gegen einen Haufen Goldmünzen gibt, hat sie immer noch eine Kopie des privaten Schlüssels und kann die Bitcoins zurücknehmen, sodass sie sowohl die Goldmünzen als auch die Bitcoins hat.

Sagen Sie Eve stattdessen, dass sie Bitcoins an Ihre Adresse senden soll.