Oui, il est impossible de récupérer la clé privée à partir de la clé publique. Si cela était possible, le RSA serait fondamentalement détruit, ce qui constituerait une grande nouvelle (briser le RSA compromettrait non seulement la sécurité des communications Internet, mais permettrait également toutes sortes de fraudes bancaires, entre autres).
Se connecter avec une clé publique au lieu d'un mot de passe tend en fait à renforcer la sécurité. Si votre mot de passe n'est pas assez puissant, il peut être forcé par un attaquant disposant d'une bande passante suffisante. Si l'attaquant ne dispose pas d'une copie de votre fichier de clé privée, la clé RSA ne peut pas être forcée brute (une clé de 1024 bits équivaut à un mot de passe de 160 caractères composé de lettres et de chiffres aléatoires et sensibles à la casse). . Quelqu'un qui surveille par-dessus votre épaule sera peut-être en mesure de voir votre mot de passe et votre phrase secrète, mais avec une clé, ils auraient également besoin de la clé.
Les clés privées ne sont pas toujours plus sécurisées que les mots de passe. Si l'attaquant obtient une copie de vos fichiers de clé privée (par exemple en volant votre ordinateur portable ou votre support de sauvegarde), il peut essayer de forcer la phrase secrète de force, et elle peut le faire à grande vitesse car vous n'avez aucun moyen de limiter la taux (contrairement aux suppositions de mot de passe qui doivent être faites en ligne). Si votre phrase secrète est suffisamment bonne et que vous remarquez le vol immédiatement, vous aurez encore le temps de révoquer la clé.
Une clé publique introduit un élément d'exposition à la confidentialité: si quelqu'un sait que vous avez utilisé la même clé publique pour vous connecter à A et pour vous connecter à B, il sait que la même personne est connectée à A et à B. un suspect que vous avez également la clé privée, de sorte que vous perdez une partie de l'anonymat. Mais c'est généralement mineur, surtout si vous ne stockez que la clé dans ~/.ssh
laquelle seuls les administrateurs système (qui savent également de quelle adresse IP vous êtes connecté) peuvent la voir.
Mis à part ces considérations de sécurité, une clé privée présente de nombreux avantages pratiques. Vous n'avez pas besoin de taper votre mot de passe aussi souvent, et en particulier, vous pouvez exécuter des scripts automatisés qui ne vous le demandent pas une fois que vous avez entré votre clé dans ssh-agent ou similaire. Vous n'avez pas besoin de taper votre mot de passe aussi souvent, vous pouvez donc vous permettre de le rendre plus entropique (plus long, plus difficile à taper). Vous n'avez pas besoin de taper votre mot de passe aussi souvent, il y a donc moins de risque qu'il soit surveillé par un observateur humain ou une caméra.