SSH and it's use in GitHub

“Privacy is Security, Security is Victory”

What is SSH

Secure Shell (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. SSH provides a secure channel over an unsecured network in a client-server architecture, connecting an SSH client application with an SSH server. Common applications include remote command-line login and remote command execution, but any network service can be secured with SSH.

How does it works

To use a manually generated public-private key pair to perform the authentication, allowing users or programs to log in without having to specify a password. In this scenario, anyone can produce a matching pair of different keys (public and private). The public key is placed on all computers that must allow access to the owner of the matching private key (the owner keeps the private key secret). While authentication is based on the private key, the key itself is never transferred through the network during authentication. SSH only verifies whether the same person offering the public key also owns the matching private key. In all versions of SSH it is important to verify unknown public keys, i.e. associate the public keys with identities, before accepting them as valid. Accepting an attacker’s public key without validation will authorize an unauthorized attacker as a valid user.

copy

How to use

How to create a new key

$ ssh-keygen -t rsa -C "your_email@example.com"

The file will be stored in afforesaid directory along with the fingerprint. copy copy

Note: The key-pair will create effect only if both of them are renamed as id_rsa and id_rsa.pub respectively.

How to deploy keys in GitHub

For more details, navigate here

Happy Coding! :)