Sì, è impossibile recuperare la chiave privata dalla chiave pubblica. Se fosse possibile, RSA sarebbe sostanzialmente rotto, e questa sarebbe una grande novità (rompere RSA non solo romperebbe molta sicurezza della comunicazione su Internet, ma consentirebbe anche tutti i tipi di frode bancaria, tra gli altri).
Effettuare l'accesso con una chiave pubblica anziché una password tende infatti ad aumentare la sicurezza. Se la tua password non è abbastanza forte, può essere forzata da un aggressore con una larghezza di banda sufficiente. Se l'attaccante non ha una copia del file della chiave privata, la chiave RSA non può essere forzata in modo bruto (una chiave a 1024 bit equivale a qualcosa come una password di 160 caratteri fatta di lettere e cifre casuali sensibili) . Qualcuno che ti guarda alle spalle potrebbe essere in grado di vedere la tua password e la tua passphrase della chiave, ma con una chiave dovrebbero anche ottenere la chiave.
Le chiavi private non sono sempre più sicure delle password. Se l'autore dell'attacco ottiene una copia dei file della chiave privata (ad esempio rubando il laptop o il supporto di backup), può provare a forzare la passphrase e può farlo ad alta velocità poiché non è possibile limitare il tasso (a differenza di ipotesi di password che devono essere fatte online). Se la tua passphrase è abbastanza buona e noti immediatamente il furto, avrai comunque il tempo di revocare la chiave.
Una chiave pubblica introduce un elemento di esposizione alla privacy: se qualcuno sa che hai usato la stessa chiave pubblica per accedere a A e per accedere a B, sa che la stessa persona che ha effettuato l'accesso in A e B. Il possesso esclusivo della chiave pubblica ti rende sospetto che tu abbia anche la chiave privata, quindi perdi un po 'di anonimato. Ma di solito è minore, soprattutto se stai memorizzando la chiave in ~/.ssh
cui solo gli amministratori di sistema (che sanno anche da quale indirizzo IP hai effettuato l'accesso) possono vederlo.
A parte queste considerazioni sulla sicurezza, una chiave privata presenta molti vantaggi pratici. Non è necessario digitare la password così spesso, e in particolare è possibile eseguire script automatici che non richiedono una volta immessa la chiave in ssh-agent o simili. Non è necessario digitare la password così spesso, quindi puoi permetterti di renderlo più entropico (più lungo, più difficile da digitare). Non è necessario digitare la password così spesso, quindi c'è meno rischio che venga curiosata da un osservatore umano o da una telecamera.