Warum überlappen sich Teile der öffentlichen (und privaten) SSH-Schlüssel?


39

Warum sind die ersten 25 Zeichen der öffentlichen Schlüssel ssh Ed25519 immer gleich?

Wenn ich zum Beispiel 5 Schlüssel mit mache ssh-keygen -o -a 100 -t ed25519, sind die ersten 25 Zeichen immer AAAAC3NzaC1lZDI1NTE5AAAAI.

Ich nehme an, dass dies eine Präambel oder eine Überschrift ist, aber ich würde gerne die tatsächliche Antwort erfahren.


8
Crossdupe crypto.stackexchange.com/questions/5944/… . Neues Format OpenSSH- Dateien mit privatem Schlüssel sind in ähnlicher Weise die Base64-Codierung von Daten, die mit mehreren meist konstanten, XDR-formatierten Zeichenfolgen beginnt, obwohl der Schlüsseltyp / -algorithmus eine Rolle spielt. Das neue Format wird automatisch für ed25519 verwendet (da für diesen Typ kein altes Format vorhanden ist) und Sie müssen nur -o für andere Typen angeben.
Dave_thompson_085

Antworten:


65

Die Zeichenfolge ist Base64-codiert. Bei der Dekodierung wird der String erzeugt \0\0\0\vssh-ed25519\0. Dies identifiziert den Typ des Schlüssels. In diesem Fall ein EdDSA- Schlüssel.


16
Der \0\0\0\vTeil 11 wird als 32-Bit-Zahl geschrieben und gibt die Länge der Zeichenfolge an ssh-ed25519.
Kasperd
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.