Skip to main content

Génération d’une nouvelle clé GPG

Si vous n’avez pas de clé GPG à disposition, vous pouvez en générer une pour signer les commits et les étiquettes.

Algorithmes de clé GPG pris en charge

GitHub Enterprise Server 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.

  1. 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.

  2. Ouvrez TerminalTerminalGit Bash.

  3. 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. Votre clé doit utiliser RSA.

    • 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
    • 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
  4. À l’invite, spécifiez le type de clé souhaité ou appuyez sur Enter pour accepter la valeur par défaut.

  5. À l’invite, spécifiez la taille de clé souhaitée ou appuyez sur Enter pour accepter la valeur par défaut. La taille de votre clé doit être d’au moins 4096 bits.

  6. 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.

  7. Vérifiez que vos sélections sont correctes.

  8. 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.

  9. Tapez une phrase secrète sûre.

  10. 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

    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 utilise gpg2 en exécutant git config --global gpg.program gpg2.

    1. 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{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/4BB6D45482678BE3 2016-03-10 ```
  11. 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
  12. Copiez votre clé GPG en commençant par -----BEGIN PGP PUBLIC KEY BLOCK----- et en terminant par -----END PGP PUBLIC KEY BLOCK-----.

  13. Ajoutez la clé GPG à votre compte GitHub.

Pour aller plus loin