Algorithmes de clé GPG pris en charge
GitHub prend en charge plusieurs algorithmes de clé GPG. Si vous essayez d’ajouter une clé générée avec un algorithme non pris en charge, vous pouvez rencontrer une erreur.
- RSA
- ElGamal
- DSA
- ECDH
- ECDSA
- EdDSA
Génération d’une clé GPG
Remarque : Avant de générer une nouvelle clé GPG, veillez à vérifier votre adresse e-mail. Si vous n’avez pas vérifié votre adresse e-mail, vous ne pourrez pas signer de commits et d’étiquettes avec GPG. Pour plus d’informations, consultez « Vérification de votre adresse e-mail ».
-
Téléchargez et installez les outils en ligne de commande GPG pour votre système d’exploitation. D’une manière générale, nous recommandons d’installer la version la plus récente de votre système d’exploitation.
-
Ouvrez TerminalTerminalGit Bash.
-
Générez une paire de clés GPG. Étant donné qu’il existe plusieurs versions de GPG, vous devrez peut-être consulter la page man correspondante pour trouver la commande de génération de clé appropriée.
-
Si vous utilisez la version 2.1.17 ou une version ultérieure, collez le texte ci-dessous pour générer une paire de clés GPG.
Shell gpg --full-generate-key
gpg --full-generate-key
-
Si vous n’utilisez pas la version 2.1.17 ou une version ultérieure, la commande
gpg --full-generate-key
ne fonctionne pas. Collez le texte ci-dessous et passez à l’étape 6.Shell gpg --default-new-key-algo rsa4096 --gen-key
gpg --default-new-key-algo rsa4096 --gen-key
-
-
À l’invite, spécifiez le type de clé souhaité ou appuyez sur
Enter
pour accepter la valeur par défaut. -
À l’invite, spécifiez la taille de clé souhaitée ou appuyez sur
Enter
pour accepter la valeur par défaut. -
Entrez la durée de validité de la clé. Appuyez sur
Enter
pour confirmer la sélection par défaut (la clé n’expire pas). Sauf si vous avez besoin d’une date d’expiration, nous vous recommandons d’accepter cette valeur par défaut. -
Vérifiez que vos sélections sont correctes.
-
Entrez vos informations d’identifiant utilisateur.
Remarque : Quand vous êtes invité à entrer votre adresse e-mail, veillez à entrer l’adresse e-mail vérifiée de votre compte GitHub. Pour que votre adresse e-mail reste privée, utilisez l’adresse e-mail
no-reply
qui vous a été fournie par GitHub. Pour plus d’informations, consultez « Vérification de votre adresse e-mail » et « Définition de votre adresse e-mail de commit ». -
Tapez une phrase secrète sûre.
-
Utilisez la commande
gpg --list-secret-keys --keyid-format=long
pour répertorier la forme longue des clés GPG pour lesquelles vous disposez à la fois d’une clé publique et d’une clé privée. Une clé privée est requise pour la signature des validations ou des étiquettes.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
Remarque : pour afficher la liste des clés existantes sur certaines installations GPG exécutées sous Linux, il peut être nécessaire d’utiliser
gpg2 --list-keys --keyid-format LONG
. Dans ce cas, vous devez également configurer Git pour qu’il utilisegpg2
en exécutantgit config --global gpg.program gpg2
. -
Dans la liste des clés GPG, copiez la forme longue de l’ID de clé GPG à utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
-
Collez le texte ci-dessous en indiquant l’ID de clé GPG que vous souhaitez utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:Shell gpg --armor --export 3AA5C34371567BD2 # Prints the GPG key ID, in ASCII armor format
gpg --armor --export 3AA5C34371567BD2 # Prints the GPG key ID, in ASCII armor format
-
Copiez votre clé GPG en commençant par
-----BEGIN PGP PUBLIC KEY BLOCK-----
et en terminant par-----END PGP PUBLIC KEY BLOCK-----
.