Aller au contenu

PGP

De Wiki de l'ENS de Lyon
(Redirigé depuis Gpg)

Une clef PGP fonctionnera comme une clef SSH sur le principe (certains utilitaires permettent même d'utiliser une clef PGP comme clef SSH et vice-versa), mais plutôt que de servir à s'authentifier sur un serveur via SSH, la clef PGP nous servira à signer des messages, les commits sur GitLab, chiffrer les mails, des messages ou fichiers etc.

Création d'une clef et utilisation basique

Pour générer une clef PGP, vous pouvez utiliser l'outil gpg (GnuPG), comme décrit dans ces tutoriels par exemple :

Ces tutoriels sont anciens. Il se peut que les options proposées soient un peu différentes. N'hésitez pas à poser des questions aux autres membres d'AliENS.

- Blog RedHat sur la création d'une paire de clefs PGP (en anglais)

- Documentation GitLab sur la création de clef PGP (en anglais)

$ gpg --generate-key

Pour le choix de l'algorithme, nous vous conseillons de garder le choix par défaut que vous conseillera GnuPG au moment de la création.

Pour la taille de la clef, choisissez le maximum si possible (4096 bits pour RSA par exemple).

Entrez votre nom/pseudo/email/ce que vous voulez et voilà ! Votre clef est prête à l'emploi.

Vous pouvez voir qu'elle est bien présente dans GnuPG en lançant

$ gpg --list-secret-keys

Votre clef devrait y figurer. Voila un exemple de retour de cette commande :

sec   ed25519 2025-10-12 [SC] [expires: 2028-10-11]
      083019F0FEA8D950EE63CC361EF85734E59C8552
uid           [ultimate] me@example.org
ssb   cv25519 2025-10-12 [E] [expires: 2028-10-11]

Ici, on note que l'identifiant de ma clé est 083019F0FEA8D950EE63CC361EF85734E59C8552.

Dans GnuPG, les clés sont identifiées par leur identifiant, une adresse email, ou bien le nom complet du·de la propriétaire, pour diffuser votre clef publique :

$ gpg --armor --export <nom de la clef ou id>

Vous pouvez alors copier le texte et l'envoyer à tout le monde :)

Pour importer les clefs publiques (ou une de vos clefs privées), vous pouvez utiliser la commande suivante :

$ gpg --import <chemin vers la clef à importer>