Qu'est-ce qu'une clé publique SSH ?

Une clé publique SSH est l'une des deux parties d'une paire de clés cryptographiques utilisée pour l'authentification sécurisée via le protocole SSH (Secure Shell). Lorsque vous générez une paire de clés SSH, vous obtenez une clé privée (conservée secrètement sur votre machine) et une clé publique (partagée avec les serveurs auxquels vous souhaitez accéder). Le serveur utilise votre clé publique pour vérifier votre identité sans transmettre de mot de passe.

Les clés publiques SSH sont stockées sous forme d'une seule ligne de texte au format OpenSSH, contenant trois parties : le type de clé (comme ssh-rsa ou ssh-ed25519), les données de clé encodées en Base64, et un commentaire optionnel (généralement utilisateur@hôte). Intégrées dans les données Base64 se trouvent des informations binaires structurées, incluant les paramètres de l'algorithme et le matériel cryptographique proprement dit.

Les empreintes sont des hachages courts et lisibles par l'humain des données de clé. Elles permettent de vérifier et de comparer facilement les clés sans avoir à lire l'intégralité de la chaîne Base64. Les deux formats d'empreinte les plus courants sont SHA-256 (la valeur par défaut moderne) et MD5 (le format hérité avec des paires hexadécimales séparées par des deux-points).

Description de l'outil

Cet outil analyse les clés publiques SSH au format OpenSSH et extrait toutes les métadonnées importantes. Collez votre clé publique et visualisez instantanément le type de clé, l'algorithme, la taille de la clé en bits, le commentaire, ainsi que les empreintes SHA-256 et MD5 — correspondant au résultat que vous obtiendriez avec ssh-keygen -l.

Exemples

Entrée :

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl user@laptop

Sortie :

Champ Valeur
Type de clé ssh-ed25519
Algorithme Ed25519
Taille de la clé 256 bits
Commentaire user@laptop
Empreinte SHA-256 SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8
Empreinte MD5 MD5:16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48

Fonctionnalités

  • Prend en charge les types de clés RSA, Ed25519, ECDSA (P-256, P-384, P-521), DSA et Security Key (FIDO)
  • Calcule les empreintes SHA-256 et MD5 au format OpenSSH standard
  • Extrait la taille de la clé en bits directement depuis les données binaires de la clé
  • Valide la structure de la clé, notamment l'intégrité du Base64 et la cohérence du type intégré
  • Analyse le champ de commentaire optionnel de la ligne de clé publique

Fonctionnement

L'outil divise l'entrée en trois parties : le type de clé, les données Base64 et le commentaire. Il décode ensuite les données Base64 en binaire et lit la structure interne en utilisant le format SSH à longueur préfixée, où chaque champ commence par une longueur big-endian sur 4 octets suivie des données du champ. La taille de la clé est déterminée à partir des paramètres spécifiques à l'algorithme — pour RSA, il s'agit de la longueur en bits du module n, pour DSA du nombre premier p, et pour les clés à courbe elliptique elle est dérivée du nom de la courbe. Les empreintes sont calculées en hachant les données binaires brutes de la clé avec SHA-256 et MD5.

Types de clés pris en charge

Identifiant de type Algorithme
ssh-rsa RSA
ssh-ed25519 Ed25519
ecdsa-sha2-nistp256 ECDSA (P-256)
ecdsa-sha2-nistp384 ECDSA (P-384)
ecdsa-sha2-nistp521 ECDSA (P-521)
ssh-dss DSA
sk-ssh-ed25519@openssh.com Ed25519-SK (Security Key)
sk-ecdsa-sha2-nistp256@openssh.com ECDSA-SK (Security Key)

Cas d'utilisation

  • Vérification des empreintes de clés — Confirmez qu'une clé publique correspond à l'empreinte attendue avant de l'ajouter à authorized_keys ou à un service d'hébergement Git
  • Audit des accès serveur — Identifiez rapidement l'algorithme et la taille des clés présentes dans votre fichier authorized_keys afin de repérer les clés faibles ou obsolètes
  • Débogage des problèmes SSH — Vérifiez qu'une clé est au bon format, utilise l'algorithme attendu et possède une structure valide

FAQ

Où trouver ma clé publique SSH ? Sur la plupart des systèmes, elle est stockée à l'emplacement ~/.ssh/id_ed25519.pub, ~/.ssh/id_rsa.pub, ou un chemin similaire selon l'algorithme utilisé. Vous pouvez également exécuter ssh-add -L pour lister les clés chargées dans votre agent SSH.

Est-il sûr de partager ma clé publique ? Oui. La clé publique est conçue pour être partagée. Elle ne peut pas être utilisée pour dériver la clé privée ni pour s'authentifier en votre nom.

Pourquoi les empreintes SHA-256 et MD5 ont-elles des aspects différents ? Les empreintes SHA-256 sont encodées en Base64 et préfixées par SHA256:, tandis que les empreintes MD5 utilisent des paires hexadécimales séparées par des deux-points, préfixées par MD5:. SHA-256 est la valeur par défaut dans les versions modernes d'OpenSSH.