SSH-Keys
SSH-Keys are an access credential used in the Secure Shell protocol. They serve as a cryptographic alternative to traditional password-based authentication, providing a more secure and scalable method for identifying users and automated processes. This system is built upon Public-Key Cryptography, which uses a pair of mathematically linked keys.
An SSH-Key Pair consists of a Public Key and a Private Key. The public key is placed on the Remote Server, typically within the authorized_keys file, while the private key is kept strictly confidential on the user's local machine. During the authentication handshake, the server issues a challenge that can only be signed by the corresponding private key. Common algorithms used to generate these keys include RSA, Ed25519, and ECDSA.
To create these credentials, administrators often use the ssh-keygen utility. For improved security, private keys are frequently encrypted with a passphrase and managed via an SSH-Agent to facilitate seamless logins without repeated manual entry. According to documentation from OpenSSH and security standards defined in RFC 4252, using keys significantly mitigates the risk of Brute-Force Attacks compared to passwords.