HD Wallets – Warum einen Private Key mit Zusatz verlängern? (Nicht gehärtet)

Wie ich derzeit verstehe, gibt es zwei Methoden zum Erweitern von Schlüsseln in einer hierarchischen deterministischen Brieftasche: reguläre Ableitung und gehärtete Ableitung. Die gehärtete Ableitung „unterbricht im Wesentlichen die Kette“ und erhöht die Sicherheit, da durch die normale Ableitung ein durchgesickerter untergeordneter privater Schlüssel zusammen mit dem Kettencode verwendet werden könnte, um alle übergeordneten privaten Schlüssel durch Subtraktion abzuleiten.

Die normale Ableitung des untergeordneten privaten Schlüssels würde wie folgt ablaufen: Nehmen Sie den HMAC-SHA512-Hash des übergeordneten öffentlichen Schlüssels, den übergeordneten Kettencode und die Indexnummer. Die ersten 256 Bits werden dem übergeordneten privaten Schlüssel hinzugefügt, um den untergeordneten privaten Schlüssel abzuleiten, und die anderen 256 Bits sind der untergeordnete Kettencode. Auf diese Weise könnte ein Gegner, der einen untergeordneten privaten Schlüssel und den Kettencode besitzt, eine Subtraktion verwenden, um den übergeordneten privaten Schlüssel zu finden. Und die gehärtete Ableitung ist ähnlich, aber der übergeordnete private Schlüssel wird als Eingabe für die Hash-Funktion verwendet, sodass er nicht rückgängig gemacht werden kann, selbst wenn der Kettencode bekannt ist. Der Nachteil besteht darin, dass ein übergeordneter privater Schlüssel erforderlich ist, um untergeordnete öffentliche Schlüssel zu generieren, wodurch die Möglichkeit ausgeschlossen wird, dass eine „Nur-Empfangs“-Maschine nur Zugriff auf öffentliche Schlüssel hat.

Meine Frage ist, warum wird reversible Arithmetik (Addition des übergeordneten privaten Schlüssels und Ausgabe der Hash-Funktion) anstelle einer „Einweg“-Funktion wie Elliptische-Kurven-Addition oder andere verwendet?

Antworten (1)

Meine Frage ist, warum wird reversible Arithmetik (Addition des übergeordneten privaten Schlüssels und Ausgabe der Hash-Funktion) anstelle einer „Einweg“-Funktion wie Elliptische-Kurven-Addition oder andere verwendet?

Um eine öffentliche Ableitung zu ermöglichen.

Dies bedeutet, dass es möglich ist, jemandem einen übergeordneten erweiterten Schlüssel (öffentlicher Schlüssel + Kettencode) zu geben, und er kann alle öffentlichen Schlüssel in der Kette ableiten.

Wenn der endgültige geheime Schlüssel direkt durch eine Einwegfunktion berechnet wird, gibt es keine äquivalenten Operationen mit öffentlichen Schlüsseln, um die öffentliche Version des Ergebnisses zu berechnen.

Wir haben Gleichungen wie diese, wobei hashdie erste Hälfte des HMAC-SHA512-Hashes ist, K, ksind übergeordnete Schlüssel und K1, k1sind untergeordnete Schlüssel. K+hash = K1, k+hash = k1. Es gibt keine gerichtete arithmetische Operation, die das Gleiche zulässt?
Nein, dies ist nachweislich unmöglich mit nur auf elliptischen Kurven basierenden Ableitungen. Die Konstruktionen, die Sie sich ausdenken, sind entweder unsicher oder ohne die privaten Schlüssel nicht durchführbar.