Zum Hauptinhalt springen

Was ist eine Software-Wallet?

U
Verfasst von UKey Wallet

Software-Wallets verwenden zur Generierung Zufallszahlen Mainprivater Schlüssel.

Dann pass Deterministischer und irreversibler Algorithmus, es kann eine unbegrenzte Anzahl von abgeleitet werden subprivater Schlüssel.

Warum brauchen wir deterministische und irreversible Algorithmen?
weil Gewissheit bedeutet, dass alle untergeordneten privater Schlüssel immer aus demselben Haupt-privater Schlüssel generiert werden können Unumkehrbar Das bedeutet, dass der Master-privater Schlüssel nicht aus einem untergeordneten privater Schlüssel rekonstruiert werden kann.

deshalb heißt es Hierarchisch-deterministisches (HD) Wallet. Die Ableitungsstruktur von privater Schlüssel ähnelt einem Baum: Ein übergeordneter Schlüssel kann mehrere untergeordnete Schlüssel ableiten, jeder untergeordnete Schlüssel kann mehrere untergeordnete Schlüssel ableiten, und dieser Prozess kann unbegrenzt fortgesetzt werden.

Wenn Sie zum ersten Mal ein HD-Wallet oder ein Sicherung-Wallet erstellen, wird dieses generiert Samenphrase. Samenphrase besteht aus einer Reihe aufeinanderfolgender englischer Wörter. Diese Sequenz wird zum Generieren verwendet Samen, und generieren Sie dann alle privater Schlüssel im Wallet aus dem Seed. Mit anderen Worten: Samenphrase ist das Wallet Sicherung, das im wiederherstellen-Wallet verwendet werden kann; und der Startwert entspricht der ursprünglichen Zufallszahl hinter der deterministischen Brieftasche.

Einer der großen Vorteile von HD Wallet besteht darin, dass es nur benötigt wird Mainöffentlicher Schlüssel kann beliebig viele generieren suböffentlicher Schlüssel. Das heißt, neue öffentliche Adressen können vom Haupt-öffentlicher Schlüssel erstellt werden, ohne auf das Haupt-privater Schlüssel oder Sub-privater Schlüssel zuzugreifen. Diese generierten Adressen werden jedoch letztendlich vom Haupt-privater Schlüssel gesteuert.

Natürlich birgt dieses Design Risiken. Wenn Samenphrase verfügbar gemacht wird, werden im Wesentlichen alle privater Schlüssel verfügbar gemacht. Sobald dies geschieht, geht die Sicherheit der digitalen Vermögenswerte im Wallet praktisch verloren.

Warum braucht man so viele privater Schlüssel?

Warum brauchen Benutzer so viel privater Schlüssel? Dies kann durch Bitcoin-Transaktionen erreicht werden Änderungsmechanismus zu verstehen.

Der Bitcoin-Handel ist ein Eingabe und Ausgabe Die Datenstruktur enthält auch die Skriptinformationen, die zum Übertragen des Werts von der Quelle (Eingabe) an die Zieladresse (Ausgabe) erforderlich sind.

Um die Ein- und Ausgänge von Bitcoin zu verstehen, müssen Sie zunächst etwas verstehen UTXO(Nicht ausgegebene Transaktionsausgabe). UTXO ist die Grundeinheit von Bitcoin-Transaktionen und stellt die Transaktionsausgabe dar, die noch nicht ausgegeben wurde. Ein einzelner Bitcoin kann tatsächlich als UTXO über mehrere Transaktionen und mehrere Blöcke verteilt werden. Bei Bitcoin gibt es keinen zentral erfassten einfachen Kontostand; Stattdessen verfügt an der Kette nur über dezentrale UTXOs, die von ihren jeweiligen Eigentümern kontrolliert werden.

Ein UTXO kann einen beliebigen Wert darstellen, aber sobald er erstellt ist, ist er unteilbar, genau wie eine physische Münze nicht in zwei Hälften geteilt werden kann. Ist der Wert des UTXO größer als der für die Transaktion benötigte Betrag, muss trotzdem der gesamte UTXO ausgegeben werden und der Überschuss wird als Wechselgeld zurückgegeben.

Nehmen wir zum Beispiel an, Sie haben ein UTXO im Wert von 20 Einheiten und möchten 1 Einheit bezahlen. Die Transaktion muss volle 20 UTXO-Einheiten verbrauchen und zwei Ausgaben erzeugen: eine, die 1 Einheit an den Empfänger sendet, und eine andere, die 19 Einheiten als Wechselgeld an Ihr Wallet zurücksendet. Daher erzeugen die meisten Bitcoin-Transaktionen Wechselgeld.

Dies führt zu einer weiteren Frage: Soll die Änderung an die ursprüngliche Adresse oder an eine neu generierte Adresse zurückgesendet werden?

Als Satoshi Nakamoto Bitcoin entwarf, stellte er vor Adressmechanismus ändern: Normalerweise wird eine neue Adresse erstellt, um das Wechselgeld für jede Transaktion zu erhalten. Dies trägt zum Schutz der Privatsphäre der Benutzer bei und mindert einige Sicherheitsrisiken.

Im wirklichen Leben ähnelt dies der Eröffnung mehrerer Bankkonten unter verschiedenen Namen und Identitäten bei verschiedenen Banken. Selbst wenn jemand den Geldfluss auf jedem Konto beobachten könnte, wäre es für ihn schwierig, alle Gelder zum wahren Eigentümer des digitalen Vermögenswerts zurückzuverfolgen. Dies ist einer der Gründe für die relative Anonymität von Bitcoin.

Aus diesem Grund benötigen Wallet-Benutzer große Mengen an privater Schlüssel. Da öffentlicher Schlüssel und privater Schlüssel immer paarweise vorhanden sind und jede Transaktion eine neue Änderungsadresse generieren kann, verursacht die Speicherung der privater Schlüssel, die diesen Adressen von Sicherung entsprechen, nacheinander hohe Verwaltungskosten. Das HD-Wallet löst dieses Problem, indem es beliebig viele Sub-öffentlicher Schlüssel und Sub-privater Schlüssel aus einem Root-Key ableitet und die Benutzerfreundlichkeit digitaler Wallets deutlich verbessert.

Hat dies deine Frage beantwortet?