Was ist der Zweck des zufälligen Bilds für Benutzer- (nicht Host-) SSH-Schlüssel?

95

Das ssh-keygenerzeugt die folgende Ausgabe:

The key fingerprint is:
dd:e7:25:b3:e2:5b:d9:f0:25:28:9d:50:a2:c9:44:97 user@machine
The key's randomart image is:
+--[ RSA 2048]----+
|       .o o..    |
|       o +Eo     |
|        + .      |
|         . + o   |
|        S o = * o|
|           . o @.|
|            . = o|
|           . o   |
|            o.   |
+-----------------+

Was ist der Zweck dieses Bildes, bietet es einen Wert für den Benutzer? Beachten Sie, dass dies ein Client- (Benutzer-) Schlüssel ist, kein Host-Schlüssel.

syntagma
quelle
12
Versuchen: superuser.com/questions/22535/...
garethTheRed
Google ist dein Freund: sanscourier.com/blog/2011/08/31/…
Networker
2
wiedereröffnet, da einige Stammgäste dieses Q mochten und dachten, dass es eine nette Hinzufügung zum Aufstellungsort wäre.
SLM
2
Ich denke das ist eine gute Frage. Die obigen Links sind zwar interessant, aber keiner von ihnen befasst sich mit der gestellten Frage. Beide Links sprechen von der Nützlichkeit des Zufallsdiagramms für Host-Schlüssel, nicht davon, warum es für Benutzerschlüssel angezeigt wird.
Patrick
1
Nur zu Ihrer Information, ich habe diese Frage neulich an die OpenSSH-Mailingliste geschickt. Soweit Grillen. lists.mindrot.org/pipermail/openssh-unix-dev/2014-July/…
Patrick

Antworten:

55

Dies wurde in dieser Frage erklärt: https://superuser.com/questions/22535/what-is-randomart-produced-by-ssh-keygen . Es hat für den Benutzer, der den Schlüssel generiert, eigentlich keine Verwendung, sondern dient der einfacheren Validierung. Persönlich. Würden Sie sich das lieber ansehen? (Bitte beachten Sie, dass dies ein Beispiel für einen Hostschlüssel ist.)

2048 1b:b8:c2:f4:7b:b5:44:be:fa:64:d6:eb:e6:2f:b8:fa 192.168.1.84 (RSA)
2048 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 gist.github.com,207.97.227.243 (RSA)
2048 a2:95:9a:aa:0a:3e:17:f4:ac:96:5b:13:3b:c8:0a:7c 192.168.2.17 (RSA)
2048 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 github.com,207.97.227.239 (RSA)

Da Sie ein Mensch sind, würden Sie eine Weile brauchen, um dies zu überprüfen.

2048 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 gist.github.com,207.97.227.243 (RSA)
+--[ RSA 2048]----+
|        .        |
|       + .       |
|      . B .      |
|     o * +       |
|    X * S        |
|   + O o . .     |
|    .   E . o    |
|       . . o     |
|        . .      |
+-----------------+
2048 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 github.com,207.97.227.239 (RSA)
+--[ RSA 2048]----+
|        .        |
|       + .       |
|      . B .      |
|     o * +       |
|    X * S        |
|   + O o . .     |
|    .   E . o    |
|       . . o     |
|        . .      |
+-----------------+

Beispiele von http://sanscourier.com/blog/2011/08/31/what-the-what-are-ssh-fingerprint-randomarts-and-why-should-i-care/

Grundsätzlich kann die durch die Benutzerschlüssel erzeugte zufällige Grafik auch auf die gleiche Art und Weise verwendet werden. Wenn sich das ursprünglich erzeugte Bild vom aktuellen Bild des Schlüssels unterscheidet, z. B. wenn Sie einen Schlüssel verschoben haben, wurde der Schlüssel wahrscheinlich manipuliert, beschädigt oder ersetzt.

Dies ist von der anderen Frage eine wirklich gute Lektüre: http://users.ece.cmu.edu/~adrian/projects/validation/validation.pdf

Torger597
quelle
1
Dies beantwortet die Frage nicht. Die von Ihnen bereitgestellten Informationen beziehen sich auf Hostschlüssel. Die Frage bezieht sich auf Benutzerschlüssel.
Patrick
8
Ich fürchte, ich bin anderer Meinung, die Frage war: Was ist der Zweck dieses Bildes, bietet es dem Benutzer irgendeinen Wert? Und ich antwortete, dass es im Wesentlichen keinen Wert für den Benutzer hat, der den Schlüssel erzeugt. Wenn ich etwas verpasst habe oder Sie möchten, dass ich weitere Beispiele usw. hinzufüge, lassen Sie es mich bitte wissen. Ich bin neu hier.
Torger597
1
Ich bin damit einverstanden, dass das ist, was gefragt wurde, über Benutzerschlüssel , nicht Hostschlüssel.
Patrick
3
Ich habe Host-Schlüssel als Beispiel verwendet, da das Grundprinzip dort ist, obwohl ich ein Benutzerschlüssel-Beispiel erstellen und hinzufügen werde. Vielen Dank für die Eingabe, Patrick.
Torger597
13

Der Unterschied zwischen einem Hostschlüssel und einem Benutzerschlüssel scheint sehr verwirrend zu sein.

Ein Host-Schlüssel wird verwendet, um die Identität des Remote-Hosts für Sie festzustellen.
Ein Benutzerschlüssel wird verwendet, um die Identität Ihrer Person gegenüber dem Remote-Host festzustellen.
Da diese Tasten in der Regel nur als Zeichenfolge dargestellt werden, kann es für einen Menschen schwierig sein, auf einen Blick zu erkennen, ob sie sich geändert haben. Dies ist der Zweck von Randomart. Eine kleine Abweichung in der Taste führt zu einem deutlich anderen zufälligen Bild.

Aus welchem ​​Grund auch immer, es ist wichtig, die Identität des Remote-Hosts zu überprüfen, da möglicherweise jemand Ihren Datenverkehr abfangen ( MITM-Angriff ) und alles anzeigen / manipulieren kann, was gesendet und empfangen wird.

Es ist jedoch nicht wichtig, sich zu verifizieren. Sie brauchen nicht zu bestätigen "yup, ich bin ich". Auch wenn sich Ihr Benutzerschlüssel geändert hat, lässt Sie der Remote-Server entweder ein oder nicht. Ihre Verbindung ist keinem höheren Abhörrisiko ausgesetzt.

 

Also , warum dann nicht ssh-keygenzeigt das randomart Bild , wenn Sie Ihren Benutzerschlüssel zu generieren ?
Denn als der Zufallscode in ssh-keygen [[email protected] 2008/06/11 21:01:35] eingegeben wurde, wurden Hostschlüssel und Benutzerschlüssel auf genau dieselbe Weise generiert. Die Ausgabe zusätzlicher Informationen ist möglicherweise für einen Benutzerschlüssel nicht von Nutzen, schadet jedoch nicht (abgesehen davon, dass sie möglicherweise Verwirrung stiften).

Nun, als ich sagte "als der Zufallscode eingeführt wurde", lag dies daran, dass sich der Code seitdem geändert hat. Heutzutage verwenden die meisten Distributionen ssh-keygen -AHost-Schlüssel, was eine neue Funktion ist. Diese Funktion generiert zahlreiche verschiedene Schlüsseltypen (rsa, dsa, ecdsa) und zeigt kein zufälliges Bild an. Die alte Methode kann weiterhin zum Generieren von Hostschlüsseln verwendet werden, ist dies jedoch im Allgemeinen nicht. Daher wird die alte Methode nur für Benutzerschlüssel verwendet, die Funktion für zufällige Grafiken bleibt jedoch erhalten.

Patrick
quelle
Sie brauchen nicht zu bestätigen "yup, ich bin ich". ja, obwohl es etwas präziser wäre zu sagen "yup, ich sehe aus wie ich". Wenn Sie zufällig viele Schlüssel haben, möchten Sie möglicherweise das zusätzliche Feedback erhalten, um sicherzustellen, dass Sie den richtigen verwenden.
Alois Mahdal