Erstens ist secp128r1 veraltet. Verwenden Sie Kurven, die eine bessere Sicherheit für den heutigen Standard bieten. Siehe Safecurves von Daniel J. Bernstein und Tanja Lange.
Eine elliptische Kurve definiert ein Feld der Größe über q und jedes Element -point- zwei Koordinaten hat X und Y . Die elliptische Kurve Secp128r1 hat 2 128 -2 97 -1 Größe ℓ, dh die Anzahl der Punkte etwas unter 2 ^ 128. Dies bedeutet, dass wir eine 128-Bit-Darstellung benötigen.
Der öffentliche Schlüssel, der auch ein Punkt auf der Kurve ist, hat zwei Koordinaten. Daher müssen zwei 128-Bit-Koordinaten gespeichert werden.
Betrachten wir die Gleichung der elliptischen Kurve Y 2 = X 3 + aX + b wobei
a = FFFFFFFD FFFFFFFF FFFFFFFF FFFFFF
b = E87579C1 1079F43D D824993C 2CEE5E
Wenn wir X aus der Gleichung kennen, können wir Y finden . Da wir auf einem Feld arbeiten, kann das Y höchstens zwei Quadratwurzeln haben. Y 2 hat y oder -y als Quadratwurzel. Dieses Wissen kann verwendet werden, um die Darstellung eines Punktes zu komprimieren, und wird als Punktkomprimierung bezeichnet . Nur x- Koordinate und ein Bit, um y oder -y auszuwählen . Schauen Sie sich nun den Basispunkt an (siehe Certicom-Empfehlung ).
base point = 03 161FF752 8B899B2D 0C28607C A52C5B86
= 04 161FF752 8B899B2D 0C28607C A52C5B86 CF5AC839 5BAFEB13 C02DA292 DDED7A83
Das erste Oktett bestimmt die Struktur
04
bedeutet, dass keine Komprimierung erfolgt
03
bedeutet, dass eine Komprimierung vorliegt und y als positiv ausgewählt wird
02
bedeutet, dass eine Komprimierung vorliegt und y als negativ ausgewählt wird
Wenden Sie sich nun den OP-Parametern zu.
pub:
04:
04:ce:24:34:d4:cb:f2:58:94:2f:8a:5f:06:d7:3f:ed: -->X
5a:50:ef:fb:cc:b7:49:62:16:62:9e:aa:d5:30:a8:a5 -->Y
Das erste Oktett 04
bedeutet, dass keine Komprimierung erfolgt. Die erste Zeile ist die X- Koordinate und die zweite Zeile ist die Y- Koordinate Ihres öffentlichen Schlüssels.
Was ist mit dem privaten Schlüssel n ? Es ist nur eine skalare Ganzzahl zwischen 0 <= n <= ℓ
priv: 00: 9f: bf: 2b: bd: 06: 86: 3a: a1: bc: 7c: 3e: 90: 57: 40: f4: bc
Daher ist die obige Nummer - nicht Punkt - Ihr privater Schlüssel.
Sie können auch einige Web-Tools verwenden, um diese Informationen zu extrahieren.
Hinweis: Bitte legen Sie Ihren privaten Schlüssel nicht offen.