Vos mots de passe sont hachés, votre trafic passe par HTTPS, votre messagerie promet le chiffrement de bout en bout. Pourtant, dès qu’un fichier sensible quitte votre machine par email ou par clé USB, il voyage le plus souvent en clair. GPG (GNU Privacy Guard) règle ce problème depuis près de trente ans, et il reste en 2026 l’outil de référence pour chiffrer un fichier, signer un document ou protéger un email. Ce tutoriel vous guide en 12 étapes, de l’installation à un projet de sauvegarde chiffrée fonctionnel, avec des commandes testées, des exemples de sortie et un module de dépannage.
Comptez 30 à 45 minutes pour parcourir l’ensemble. Aucun prérequis cryptographique avancé n’est nécessaire : si vous savez ouvrir un terminal, vous savez utiliser GPG. À la fin, vous saurez générer une paire de clés moderne en Ed25519, chiffrer des fichiers en symétrique comme en asymétrique, signer et vérifier des documents, publier votre clé publique et configurer Thunderbird pour vos emails.
Pourquoi GPG reste l’outil de chiffrement de référence en 2026
GPG est l’implémentation libre du standard OpenPGP. En juillet 2024, l’IETF a publié la RFC 9580, qui remplace l’ancienne RFC 4880 et modernise le format : nouveaux algorithmes à courbes elliptiques, chiffrement authentifié AEAD en mode OCB, et abandon progressif des primitives héritées. GnuPG suit ce standard et le met en œuvre dans une base de code auditée, utilisée par les distributions Linux pour vérifier chaque paquet installé sur votre système.
La force de GPG tient à un principe simple : la cryptographie à clé publique. Vous possédez deux clés mathématiquement liées. La clé publique se partage sans risque et sert à chiffrer un message qui vous est destiné ou à vérifier votre signature. La clé privée reste secrète et sert à déchiffrer ou à signer. Personne ne peut lire un fichier chiffré pour vous sans votre clé privée, même en interceptant le transfert. Ce mécanisme repose sur les mêmes familles mathématiques que les signatures numériques qui authentifient les logiciels et les certificats du web.
GnuPG fonctionne en local, hors ligne, sans serveur central ni compte à créer. Contrairement aux messageries chiffrées propriétaires, vous gardez la maîtrise complète de vos clés. Le coût de cette liberté, c’est une courbe d’apprentissage plus raide. Ce guide existe pour l’aplanir.
Trois usages dominent en pratique. Le premier est l’archivage : vous chiffrez des fichiers que vous déposez sur un cloud, une sauvegarde ou un disque externe, sans accorder votre confiance à l’hébergeur. Le deuxième est l’échange : vous transmettez un document confidentiel à un correspondant qui pourra seul l’ouvrir. Le troisième est la signature : vous prouvez qu’un fichier vient bien de vous et qu’il n’a pas été modifié en route. Ce tutoriel couvre les trois, dans cet ordre de difficulté croissante.
Les algorithmes derrière GPG : Ed25519, AES-256 et OCB
Comprendre ce qui tourne sous le capot aide à faire les bons choix. GPG n’invente aucun algorithme : il assemble des primitives éprouvées et publiquement auditées. Voici celles qui comptent en 2026.
Ed25519 est l’algorithme de signature à courbe elliptique recommandé pour les nouvelles clés. Conçu par Daniel J. Bernstein et ses coauteurs, il signe vite, produit des signatures courtes (64 octets) et résiste aux erreurs d’implémentation qui ont historiquement affaibli d’autres schémas. Curve25519, sa cousine pour l’échange de clés (ECDH), sert à la sous-clé de chiffrement. Ensemble, ces deux courbes remplacent avantageusement le RSA 4096 : une clé Ed25519 tient sur quelques dizaines d’octets là où une clé RSA en demande des centaines, pour un niveau de sécurité comparable.
Côté chiffrement des données, GPG s’appuie sur AES-256, le standard de chiffrement par bloc adopté mondialement. La RFC 9580 ajoute le chiffrement authentifié AEAD, notamment le mode OCB, qui combine confidentialité et intégrité en une seule passe : le destinataire détecte toute altération du message chiffré, pas seulement son contenu déchiffré. Pour le hachage interne, les courbes modernes et certaines opérations s’appuient sur la famille SHA-2 et sur BLAKE2, des fonctions dont le rôle est expliqué dans notre article sur les fonctions de hachage cryptographiques.
Un dernier élément mérite attention : la fonction de dérivation de clé S2K (String-to-Key) utilisée en mode symétrique. Elle transforme votre phrase secrète en clé AES-256 en lui appliquant un grand nombre d’itérations de hachage, ce qui ralentit les attaques par force brute. C’est le même principe de durcissement que celui employé pour le stockage des mots de passe. Plus la phrase est longue et imprévisible, plus cette protection est efficace.
Ce dont vous avez besoin : prérequis et versions
GnuPG est préinstallé sur la quasi-totalité des distributions Linux et de macOS. Sur Windows, le bundle Gpg4win fournit GPG plus une interface graphique. Voici les versions à viser en 2026.
| Composant | Version visée (2026) | Rôle |
|---|---|---|
| GnuPG (branche stable) | 2.5.x (ex. 2.5.20, publiée le 13 mai 2026) | Moteur de chiffrement et de signature |
| GnuPG (ancienne branche) | 2.4.x | Encore maintenue, présente sur les LTS plus anciennes |
| Ubuntu / Debian | Ubuntu 24.04 LTS ou plus récent | Système hôte conseillé |
| Gpg4win (Windows) | Dernière version stable | Bundle GPG + Kleopatra pour Windows |
| GPG Suite (macOS) | Dernière version stable | Bundle GPG + intégration Mail/Keychain |
| Thunderbird | Version ESR récente | Chiffrement OpenPGP natif des emails |
Vérifiez la version installée avant de commencer. Une version 2.2 ou antérieure fonctionne, mais ne propose pas les mêmes algorithmes par défaut.
$ gpg --version
gpg (GnuPG) 2.5.20
libgcrypt 1.11.0
Copyright (C) 2026 g10 Code GmbH
Algorithmes pris en charge :
Cle publique : RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Chiffrement : AES, AES192, AES256, TWOFISH, CAMELLIA256
Hachage : SHA1, SHA256, SHA384, SHA512, SHA224
Compression : Non compresse, ZIP, ZLIB, BZIP2
Si la commande renvoie une erreur, GPG n’est pas installé. L’étape suivante corrige cela.
Étape 1 : installer GnuPG sur Linux, Windows et macOS
Sur Ubuntu, Debian et leurs dérivés, GPG s’installe avec le gestionnaire de paquets. Le paquet gnupg tire toutes les dépendances utiles, dont gpg-agent qui gère le cache des phrases secrètes.
# Ubuntu / Debian
sudo apt update
sudo apt install gnupg
# Fedora / RHEL
sudo dnf install gnupg2
# Arch Linux
sudo pacman -S gnupg
Sur Windows, téléchargez Gpg4win depuis le site officiel. L’installeur ajoute la commande gpg au terminal PowerShell et fournit Kleopatra, une interface graphique pour gérer les clés. Sur macOS, GPG Suite s’installe via un fichier .dmg et intègre le chiffrement directement dans l’application Mail. Les commandes de ce tutoriel sont identiques sur les trois systèmes une fois GPG en place.
Confirmez l’installation avec gpg --version. Vous devez voir EDDSA et ECDH dans la liste des algorithmes à clé publique. Leur présence garantit que vous pourrez créer des clés Ed25519 modernes à l’étape 3.
Étape 2 : comprendre symétrique et asymétrique avant de chiffrer
GPG propose deux modes. Les confondre est la première source d’erreurs chez les débutants, alors clarifions-les avant la moindre commande.
Le chiffrement symétrique : une seule phrase secrète
En mode symétrique, une seule phrase secrète chiffre et déchiffre le fichier. GnuPG dérive une clé AES-256 à partir de votre phrase via une fonction de dérivation (S2K). C’est idéal pour protéger une archive que vous garderez pour vous, ou pour transmettre un fichier à quelqu’un avec qui vous partagez déjà un secret par un autre canal. Pas besoin de générer de paire de clés. L’inconvénient : il faut communiquer la phrase secrète, et tout ce qui transite peut fuiter.
Le chiffrement asymétrique : la clé publique du destinataire
En mode asymétrique, vous chiffrez avec la clé publique du destinataire. Lui seul, avec sa clé privée, peut déchiffrer. Aucun secret partagé à transmettre. C’est le mode à privilégier pour communiquer avec autrui. GPG combine en réalité les deux : il génère une clé de session AES-256 aléatoire pour chiffrer les données, puis chiffre cette petite clé de session avec la clé publique du destinataire. On profite ainsi de la rapidité du symétrique et de la commodité de l’asymétrique. Ce hybride s’appuie sur des courbes elliptiques comme Curve25519, le même socle que celui décrit dans notre dossier sur la cryptographie.
Étape 3 : générer votre paire de clés Ed25519
La pratique moderne privilégie les courbes elliptiques sur le RSA 4096. Une clé Ed25519 pour la signature et une sous-clé Curve25519 (cv25519) pour le chiffrement offrent une sécurité équivalente au RSA tout en restant bien plus compactes et rapides. Lancez l’assistant complet.
$ gpg --full-generate-key
Selectionnez le type de cle desire :
(9) ECC (signature et chiffrement) *par defaut*
(10) ECC (signature seule)
(14) Existing key from card
Votre choix ? 9
Selectionnez la courbe elliptique desiree :
(1) Curve 25519 *par defaut*
Votre choix ? 1
La cle est valable pour ? (0) 2y
Nom reel : Camille Martin
Adresse electronique : [email protected]
Commentaire :
Choisissez l’option ECC avec Curve 25519. Pour la durée de validité, deux ans (2y) est un bon compromis : assez court pour limiter le risque en cas de compromission, assez long pour ne pas devoir tout refaire chaque mois. Vous pourrez prolonger l’échéance à tout moment avec votre clé privée. Saisissez ensuite une phrase secrète forte, idéalement une suite de plusieurs mots. Elle protège votre clé privée sur le disque. Les principes d’une bonne phrase rejoignent ceux de la sécurité des mots de passe.
GnuPG a besoin d’entropie pour générer la clé. Sur un serveur sans activité, bougez la souris ou lancez une tâche disque. Une fois terminé, vérifiez le résultat.
$ gpg --list-keys --fingerprint
pub ed25519 2026-06-12 [SC] [expire : 2028-06-11]
A1B2 C3D4 E5F6 0789 1A2B 3C4D 5E6F 7081 92A3 B4C5
uid [ ultime ] Camille Martin <[email protected]>
sub cv25519 2026-06-12 [E]
La ligne pub indique votre clé principale Ed25519 (capacités [SC] : Sign et Certify). La ligne sub indique la sous-clé cv25519 dédiée au chiffrement ([E] : Encrypt). La longue chaîne hexadécimale est votre empreinte (fingerprint), l’identifiant qui authentifie réellement votre clé.
Étape 4 : créer un certificat de révocation
Cette étape est souvent négligée, puis cruellement regrettée. Un certificat de révocation vous permet d’annoncer publiquement que votre clé n’est plus valide, par exemple si vous perdez la clé privée ou si elle est compromise. Sans lui, une clé fuitée reste indéfiniment présentée comme légitime. Générez-le tout de suite, tant que vous avez accès à votre clé.
$ gpg --output revocation-camille.asc --gen-revoke [email protected]
Faut-il creer un certificat de revocation pour cette cle ? (o/N) o
Indiquez la cause de la revocation :
0 = aucune raison indiquee
1 = la cle a ete compromise
2 = la cle est remplacee
3 = la cle n'est plus utilisee
Quelle est votre decision ? 1
Certificat de revocation cree.
Stockez ce fichier revocation-camille.asc ailleurs que sur votre machine de travail : clé USB chiffrée, gestionnaire de secrets, impression papier dans un coffre. Quiconque possède ce certificat peut révoquer votre clé. Restreignez-en les droits d’accès sous Linux : chmod 600 revocation-camille.asc.
Étape 5 : chiffrer un fichier en symétrique avec AES-256
Le cas le plus simple : protéger un fichier par une phrase secrète, sans aucune clé. L’option -c (ou --symmetric) déclenche le chiffrement symétrique. GnuPG utilise AES-256 par défaut dans les configurations modernes.
$ gpg -c rapport-confidentiel.pdf
Entrez la phrase secrete : ********
Confirmez la phrase secrete : ********
$ ls -l rapport-confidentiel.pdf*
-rw-r--r-- 1 camille camille 184320 juin 12 10:14 rapport-confidentiel.pdf
-rw-r--r-- 1 camille camille 184512 juin 12 10:15 rapport-confidentiel.pdf.gpg
Le fichier .gpg est la version chiffrée, illisible sans la phrase. Pour obtenir une sortie en texte ASCII (utile pour coller dans un email ou un message), ajoutez --armor, qui produit un fichier .asc. Forcez explicitement l’algorithme si besoin avec --cipher-algo AES256.
$ gpg -c --armor --cipher-algo AES256 notes.txt
$ head -2 notes.txt.asc
-----BEGIN PGP MESSAGE-----
jA0ECQMCq3...
Une fois le fichier chiffré vérifié, supprimez l’original en clair si vous n’en avez plus besoin. Sur un disque classique, préférez shred -u à un simple rm pour limiter la récupération des données.
Étape 6 : exporter et partager votre clé publique
Pour que vos correspondants puissent vous écrire de façon chiffrée, ils ont besoin de votre clé publique. L’exporter en format ASCII armoré la rend facile à transmettre par email ou à publier.
$ gpg --armor --export [email protected] > camille-pubkey.asc
$ cat camille-pubkey.asc
-----BEGIN PGP PUBLIC KEY BLOCK-----
mDMEZ...
-----END PGP PUBLIC KEY BLOCK-----
Le drapeau --export n’exporte que la clé publique. Votre clé privée ne sort jamais avec cette commande, vous pouvez donc diffuser ce fichier sans crainte. Pour exporter la clé privée (sauvegarde uniquement, à conserver hors ligne), il faut la commande distincte --export-secret-keys, à manier avec une extrême prudence.
Partagez aussi votre empreinte par un canal de confiance (carte de visite, profil signé, message en personne). Vos correspondants l’utiliseront à l’étape suivante pour vérifier qu’ils détiennent la bonne clé et non une contrefaçon.
Étape 7 : importer et valider la clé d’un correspondant
Quand un correspondant vous envoie sa clé publique, importez-la dans votre trousseau, puis vérifiez son empreinte avant de lui faire confiance. Cette vérification est le cœur de la sécurité d’OpenPGP : sans elle, rien ne prouve que la clé appartient bien à la bonne personne.
$ gpg --import bob-pubkey.asc
gpg: cle 7F8E9D0C1B2A3456 : cle publique « Bob Durand <[email protected]> » importee
gpg: Quantite totale traitee : 1
gpg: importees : 1
$ gpg --fingerprint [email protected]
pub ed25519 2026-05-30 [SC]
7F8E 9D0C 1B2A 3456 ABCD EF01 2345 6789 ABCD EF01
uid [ inconnue ] Bob Durand <[email protected]>
Comparez l’empreinte affichée avec celle que Bob vous a communiquée par un autre canal. Si elles correspondent, signez la clé pour la marquer comme validée dans votre trousseau.
$ gpg --edit-key [email protected]
gpg> lsign
Voulez-vous vraiment signer cette cle ? (o/N) o
gpg> save
La mention [ inconnue ] devient alors une confiance établie. Ce mécanisme de validation par empreinte est la version concrète de la toile de confiance (web of trust) d’OpenPGP. En pratique, beaucoup d’utilisateurs se contentent aujourd’hui de la vérification directe d’empreinte plutôt que de la propagation complète de la confiance.
Étape 8 : chiffrer un fichier pour un destinataire précis
Avec la clé publique de Bob importée et validée, vous pouvez lui chiffrer un fichier que lui seul pourra ouvrir. L’option -e chiffre, -r désigne le destinataire.
$ gpg -e -r [email protected] contrat.pdf
$ ls -l contrat.pdf.gpg
-rw-r--r-- 1 camille camille 248192 juin 12 11:02 contrat.pdf.gpg
Le fichier contrat.pdf.gpg est désormais lisible uniquement avec la clé privée de Bob. Vous pouvez chiffrer pour plusieurs destinataires en répétant -r : gpg -e -r [email protected] -r [email protected] contrat.pdf. Pour conserver vous-même la capacité de relire le fichier, ajoutez votre propre adresse comme destinataire supplémentaire, sinon vous ne pourrez plus l’ouvrir.
Combinez chiffrement et signature en une seule commande avec -s : gpg -s -e -r [email protected] contrat.pdf. Bob obtiendra alors la confidentialité et la preuve que le fichier vient bien de vous. Pour transmettre par email ou messagerie texte, ajoutez --armor afin d’obtenir un .asc lisible.
Étape 9 : déchiffrer un fichier reçu
Quand vous recevez un fichier chiffré pour vous, GPG repère automatiquement qu’il faut votre clé privée et vous demande votre phrase secrète. La commande est la même pour le symétrique et l’asymétrique.
$ gpg --decrypt --output contrat.pdf contrat.pdf.gpg
gpg: chiffre avec une cle cv25519, identifiant 92A3B4C5...
gpg: « Camille Martin <[email protected]> »
Entrez la phrase secrete : ********
$ file contrat.pdf
contrat.pdf: PDF document, version 1.7
Sans l’option --output, GPG écrit le contenu déchiffré sur la sortie standard, ce qui est pratique pour un fichier texte (gpg --decrypt message.txt.gpg) mais inutilisable pour un binaire. Précisez toujours --output pour les PDF, images et archives. Si vous obtenez l’erreur No secret key, c’est que le fichier a été chiffré pour une autre clé que la vôtre.
Étape 10 : signer et vérifier un document
La signature ne chiffre rien : elle prouve l’origine et l’intégrité d’un fichier. Une signature détachée place la preuve dans un fichier séparé, ce qui laisse l’original intact et lisible. C’est la méthode utilisée pour authentifier les téléchargements de logiciels. Le rôle du hachage dans ce processus est détaillé dans notre article sur les fonctions de hachage.
$ gpg --detach-sign --armor communique.pdf
Entrez la phrase secrete : ********
$ ls communique.pdf*
communique.pdf communique.pdf.asc
Le fichier communique.pdf.asc contient la signature. Diffusez les deux fichiers ensemble. Pour vérifier une signature reçue, indiquez d’abord le fichier de signature, puis l’original.
$ gpg --verify communique.pdf.asc communique.pdf
gpg: Signature faite le jeu. 12 juin 2026 11:40:02 CEST
gpg: avec la cle EDDSA A1B2C3D4E5F60789...
gpg: Bonne signature de « Camille Martin <[email protected]> » [ultime]
« Bonne signature » confirme que le fichier n’a pas été modifié et qu’il provient bien du détenteur de la clé. Un message BAD signature signale soit une altération du fichier, soit une signature qui ne correspond pas. Ne faites jamais confiance à un fichier dont la vérification échoue.
Étape 11 : publier sa clé sur un serveur de clés
Pour que n’importe qui puisse récupérer votre clé publique sans vous la demander, publiez-la sur un serveur de clés. Le serveur moderne de référence est keys.openpgp.org, qui vérifie l’adresse email avant de diffuser les identités, ce qui limite les pollutions.
$ gpg --keyserver keys.openpgp.org --send-keys A1B2C3D4E5F60789
gpg: envoi de la cle 92A3B4C5 au serveur keys.openpgp.org
# Recuperer la cle de quelqu'un
$ gpg --keyserver keys.openpgp.org --search-keys [email protected]
Après l’envoi, keys.openpgp.org vous adresse un email de validation. Tant que vous ne confirmez pas, seule la clé brute est publiée, sans votre nom ni votre adresse. Pensez à republier votre clé chaque fois que vous prolongez son échéance, sinon les serveurs continueront de présenter l’ancienne date d’expiration.
Étape 12 : chiffrer ses emails avec Thunderbird
Depuis la version 78, Thunderbird intègre OpenPGP nativement, sans extension. C’est la voie la plus simple pour chiffrer ses emails sur le bureau. Le principe reste celui des étapes précédentes : on chiffre avec la clé publique du destinataire.
- Ouvrez Paramètres des comptes, puis l’onglet Chiffrement de bout en bout.
- Cliquez sur Ajouter une clé et importez votre clé existante, ou laissez Thunderbird en générer une.
- Importez les clés publiques de vos correspondants via le Gestionnaire de clés OpenPGP.
- À la rédaction d’un message, activez l’icône de cadenas pour Chiffrer et celle de signature pour Signer.
- Thunderbird vous avertit si une clé manque pour un destinataire, auquel cas l’email partira en clair.
Sous Linux, Thunderbird peut s’appuyer sur votre trousseau GnuPG système plutôt que sur son propre magasin interne, ce qui évite de dupliquer les clés. Activez cette option dans les paramètres de configuration avancés. Pour ceux qui préfèrent une messagerie chiffrée clé en main sans gérer GPG, comparez les offres dans notre face-à-face Proton Mail contre Tuta.
Projet complet : un script de sauvegarde chiffrée automatique
Rassemblons tout dans un projet utile : un script qui archive un dossier, le chiffre pour votre propre clé, le signe, puis nettoie. Idéal pour des sauvegardes que vous déposez sur un stockage cloud sans lui faire confiance.
#!/usr/bin/env bash
# sauvegarde-chiffree.sh : archive, chiffre et signe un dossier
set -euo pipefail
SOURCE="$HOME/documents-sensibles"
DEST="$HOME/sauvegardes"
KEY="[email protected]"
DATE=$(date +%Y-%m-%d)
ARCHIVE="$DEST/backup-$DATE.tar.gz"
mkdir -p "$DEST"
# 1. Creer l'archive compressee
tar -czf "$ARCHIVE" -C "$(dirname "$SOURCE")" "$(basename "$SOURCE")"
# 2. Chiffrer pour soi-meme et signer en une passe
gpg --yes --sign --encrypt --recipient "$KEY" \
--output "$ARCHIVE.gpg" "$ARCHIVE"
# 3. Supprimer l'archive en clair
shred -u "$ARCHIVE"
echo "Sauvegarde chiffree prete : $ARCHIVE.gpg"
echo "Taille : $(du -h "$ARCHIVE.gpg" | cut -f1)"
Rendez le script exécutable avec chmod +x sauvegarde-chiffree.sh, puis lancez-le. La sortie ressemble à ceci.
$ ./sauvegarde-chiffree.sh
Sauvegarde chiffree prete : /home/camille/sauvegardes/backup-2026-06-12.tar.gz.gpg
Taille : 42M
Pour automatiser, ajoutez une entrée cron. Comme la signature demande la phrase secrète, configurez gpg-agent avec un cache assez long, ou utilisez une sous-clé dédiée sans phrase pour les tâches non interactives. Pour restaurer : gpg --decrypt --output restore.tar.gz backup-2026-06-12.tar.gz.gpg puis tar -xzf restore.tar.gz. Vous disposez maintenant d’un pipeline de sauvegarde dont la confidentialité ne dépend plus du fournisseur de stockage.
À ce stade, vous maîtrisez l’essentiel : générer une clé, chiffrer pour vous comme pour autrui, signer, vérifier, publier et automatiser. Le reste relève de l’affinage. Avant de présenter les pièges et le dépannage, retenez la logique d’ensemble. Le symétrique protège ce que vous gardez, l’asymétrique protège ce que vous échangez, et la signature prouve ce que vous publiez. Chaque commande de ce guide se rattache à l’une de ces trois intentions. Quand un doute surgit, demandez-vous d’abord laquelle s’applique, et la bonne option apparaît d’elle-même.
Cinq pièges courants à éviter avec GPG
Ces erreurs reviennent sans cesse. Les connaître à l’avance vous épargnera des heures de frustration et, parfois, une perte de données irréversible.
- Oublier de se chiffrer à soi-même. Si vous chiffrez un fichier uniquement pour un destinataire et que vous supprimez l’original, vous ne pourrez plus jamais le relire. Ajoutez toujours votre propre clé comme destinataire pour vos archives.
- Ne pas sauvegarder sa clé privée. Perdre sa clé privée, c’est perdre l’accès à tout ce qui a été chiffré pour elle. Exportez-la avec
--export-secret-keyset conservez la sauvegarde hors ligne. - Sauter le certificat de révocation. Sans lui, une clé compromise ou perdue ne peut pas être invalidée proprement. Générez-le dès la création de la clé (étape 4).
- Confondre clé publique et clé privée. On partage la publique, jamais la privée. Une fuite de clé privée annule toute la sécurité.
- Faire confiance à une clé sans vérifier l’empreinte. Importer une clé ne prouve pas son origine. Toujours comparer l’empreinte par un canal indépendant avant de chiffrer un secret réel.
Dépannage : 8 erreurs fréquentes et leurs solutions
La plupart des messages d’erreur de GPG sont explicites une fois qu’on les décode. Ce tableau couvre les cas les plus signalés.
| Message d’erreur | Cause probable | Solution |
|---|---|---|
| decryption failed: No secret key | Le fichier a été chiffré pour une autre clé que la vôtre | Vérifiez le destinataire avec gpg --list-packets fichier.gpg et importez la bonne clé privée |
| Inappropriate ioctl for device | gpg-agent ne trouve pas de terminal pour demander la phrase | Exportez GPG_TTY=$(tty) dans votre shell |
| signing failed: No pinentry | Programme pinentry absent | Installez pinentry-curses ou pinentry-gtk2 |
| There is no assurance this key belongs to… | Clé du destinataire non validée | Vérifiez l’empreinte puis signez la clé, ou ajoutez --trust-model always pour un test ponctuel |
| agent_genkey failed: Permission denied | Droits incorrects sur le dossier ~/.gnupg | Corrigez avec chmod 700 ~/.gnupg et chmod 600 ~/.gnupg/* |
| BAD signature | Fichier altéré ou mauvaise clé | Re-téléchargez le fichier et la signature depuis la source d’origine |
| can’t connect to the agent | gpg-agent planté ou socket bloqué | Relancez avec gpgconf --kill gpg-agent |
| error sending to agent: End of file | Cache de l’agent corrompu | Tuez l’agent puis réessayez ; redémarrez la session si besoin |
Le réflexe universel face à un comportement étrange de GPG est de redémarrer l’agent : gpgconf --kill gpg-agent. La plupart des blocages de phrase secrète et de pinentry se résolvent ainsi. Pensez aussi à exporter GPG_TTY dans votre fichier .bashrc ou .zshrc pour éviter l’erreur de terminal de manière permanente.
Astuces avancées : sous-clés, YubiKey et durcissement
Séparer clé principale et sous-clés
Pour un usage exigeant, gardez votre clé principale (capacité Certify) hors ligne sur un support sûr et n’utilisez au quotidien que des sous-clés dédiées au chiffrement, à la signature et à l’authentification. Ajoutez une sous-clé avec gpg --edit-key puis la commande addkey. Ainsi, une compromission de votre machine ne met en jeu que les sous-clés, révocables sans perdre votre identité principale.
Stocker sa clé sur une YubiKey
Une clé matérielle compatible OpenPGP, comme une YubiKey, stocke vos clés privées dans une puce inviolable. Les opérations cryptographiques s’effectuent sur la clé elle-même, la clé privée ne touche jamais le disque de l’ordinateur. Transférez une sous-clé vers la carte avec keytocard dans gpg --edit-key. C’est la protection la plus solide contre le vol de clé par logiciel malveillant.
Durcir sa configuration gpg.conf
Quelques lignes dans ~/.gnupg/gpg.conf imposent des choix d’algorithmes modernes et masquent les métadonnées de destinataire.
# ~/.gnupg/gpg.conf
personal-cipher-preferences AES256 AES192 AES
personal-digest-preferences SHA512 SHA384 SHA256
cert-digest-algo SHA512
default-preference-list SHA512 SHA384 SHA256 AES256 AES192 AES
throw-keyids
no-emit-version
no-comments
L’option throw-keyids masque l’identité des destinataires dans le fichier chiffré, ce qui protège les métadonnées. Combinée à une configuration VPN WireGuard et à un chiffrement de disque comme VeraCrypt, vous obtenez une chaîne de confidentialité cohérente, du disque au réseau jusqu’au fichier transmis.
Entretenir et faire tourner ses clés dans le temps
Une clé GPG n’est pas un objet figé. Elle vit, expire, gagne des sous-clés et finit parfois par être retirée. Quelques gestes d’entretien évitent les mauvaises surprises au bout de quelques années.
Le premier réflexe concerne l’échéance. Une clé qui expire dans deux ans n’est pas un problème : c’est une sécurité. Quelques semaines avant la date, prolongez-la avec votre clé privée plutôt que d’en créer une nouvelle, ce qui vous évite de redistribuer une identité. Ouvrez l’éditeur de clé, sélectionnez la clé ou la sous-clé, et fixez une nouvelle date.
$ gpg --edit-key [email protected]
gpg> expire
La cle est valable pour ? (0) 2y
gpg> key 1
gpg> expire
La cle est valable pour ? (0) 2y
gpg> save
Après toute modification d’échéance, republiez votre clé publique sur le serveur de clés et auprès de vos correspondants réguliers, sinon ils continueront de voir l’ancienne date. Le deuxième réflexe est la sauvegarde. Exportez périodiquement votre clé privée et votre trousseau de confiance vers un support hors ligne chiffré.
$ gpg --export-secret-keys --armor [email protected] > cle-privee-sauvegarde.asc
$ gpg --export-ownertrust > ownertrust-sauvegarde.txt
$ chmod 600 cle-privee-sauvegarde.asc ownertrust-sauvegarde.txt
Conservez ces fichiers sur une clé USB chiffrée rangée hors de votre domicile principal, avec le certificat de révocation de l’étape 4. Le troisième réflexe est la rotation des sous-clés. Plutôt que de tout reconstruire en cas de doute, révoquez la sous-clé concernée et générez-en une fraîche, sans toucher à votre identité principale. Vos correspondants n’ont alors qu’à rafraîchir votre clé publique. Cette discipline limite l’impact d’une compromission et prolonge la durée de vie utile de votre identité cryptographique sur de nombreuses années.
GPG face aux alternatives : age, OpenSSL et Cryptomator
GPG n’est pas le seul outil de chiffrement. Selon votre besoin, une alternative plus simple ou plus spécialisée peut convenir. Ce tableau situe GPG par rapport aux outils que l’on rencontre le plus souvent en 2026.
| Outil | Usage principal | Courbe d’apprentissage | Quand le préférer |
|---|---|---|---|
| GPG / GnuPG | Fichiers, emails, signatures | Élevée | Standard universel, signatures, web of trust, intégration email |
| age | Chiffrement de fichiers moderne | Faible | Scripts et sauvegardes simples, syntaxe minimaliste |
| OpenSSL | Boîte à outils cryptographique | Élevée | Certificats TLS, automatisation serveur, primitives bas niveau |
| Cryptomator | Coffres-forts cloud | Faible | Chiffrement transparent de dossiers synchronisés |
| VeraCrypt | Volumes et disques chiffrés | Moyenne | Chiffrement complet d’un disque ou d’une partition |
L’outil age séduit par sa simplicité : une seule commande, des clés courtes, aucune configuration. Il chiffre très bien un fichier ou une sauvegarde, mais ne gère ni les signatures détachées, ni l’intégration email, ni la toile de confiance. OpenSSL est une boîte à outils de bas niveau, parfaite pour les certificats TLS et l’automatisation serveur, mais peu adaptée au chiffrement quotidien de fichiers entre personnes. Pour générer un certificat web, notre guide sur le certificat SSL avec Certbot est plus direct.
Le choix se résume ainsi : pour des signatures, des emails et une compatibilité maximale avec l’écosystème existant, GPG reste incontournable. Pour de simples sauvegardes chiffrées dans des scripts, age fait gagner du temps. Pour chiffrer un disque entier de façon transparente, tournez-vous vers VeraCrypt. Rien n’empêche de combiner ces outils : beaucoup d’utilisateurs chiffrent leur disque avec VeraCrypt, leurs sauvegardes cloud avec GPG et leurs emails avec GPG via Thunderbird.
Questions fréquentes sur GPG
GPG et PGP, c’est la même chose ?
Pas exactement. PGP est le logiciel commercial historique créé en 1991. OpenPGP est le standard ouvert qui en a découlé, défini aujourd’hui par la RFC 9580 (2024). GPG, ou GnuPG, est l’implémentation libre et gratuite de ce standard. Quand on parle de « chiffrer en PGP » en 2026, on utilise presque toujours GPG.
Faut-il choisir RSA ou les courbes elliptiques ?
Pour une nouvelle clé en 2026, privilégiez les courbes elliptiques (Ed25519 pour signer, Curve25519 pour chiffrer). Elles offrent une sécurité équivalente au RSA 4096 avec des clés plus petites et des opérations plus rapides. RSA reste valable et largement compatible, mais ECC est le choix moderne par défaut de GnuPG.
GPG résiste-t-il aux ordinateurs quantiques ?
Les algorithmes actuels d’OpenPGP (RSA, ECC) ne sont pas résistants à un futur ordinateur quantique de grande taille. Le standard et GnuPG évoluent vers des primitives post-quantiques, mais pour des données qui doivent rester secrètes des décennies, suivez l’avancée de la cryptographie post-quantique et le calendrier de normalisation du NIST.
Que faire si j’oublie ma phrase secrète ?
Rien ne permet de la récupérer : c’est le principe même de la sécurité. Sans la phrase, votre clé privée est inutilisable et les fichiers chiffrés pour elle sont définitivement perdus. C’est pourquoi le certificat de révocation et une sauvegarde sûre de la clé sont indispensables. Si la clé est inaccessible, utilisez le certificat de révocation pour signaler son abandon.
Peut-on chiffrer un dossier entier ?
GPG chiffre des fichiers, pas des dossiers. Pour un dossier, créez d’abord une archive (tar -czf dossier.tar.gz dossier/) puis chiffrez l’archive obtenue, comme dans le projet de sauvegarde de ce guide. C’est aussi plus efficace, car la compression précède le chiffrement.
GPG fonctionne-t-il sur smartphone ?
Oui. Sur Android, OpenKeychain met en œuvre OpenPGP et s’intègre à des applications de messagerie. Sur iOS, plusieurs applications compatibles OpenPGP existent. Vous pouvez importer votre clé existante ou en générer une dédiée au mobile, puis échanger des fichiers et des emails chiffrés avec les mêmes correspondants que sur le bureau.
Le chiffrement GPG est-il légal en France ?
Oui. L’usage de moyens de cryptologie est libre en France depuis la loi pour la confiance dans l’économie numérique de 2004. Vous pouvez chiffrer vos fichiers et vos communications sans déclaration. Les obligations spécifiques concernent les fournisseurs de moyens de cryptologie, pas les utilisateurs particuliers.
Related Coverage
- Cryptographie et fonctions de hachage : le socle de la confiance numérique
- Signatures numériques : comment le hachage et les clés garantissent l’authenticité
- Les fonctions de hachage cryptographiques : principes et usages
- Proton Mail vs Tuta : 3 € vs 4,99 €/mois [2026]
- VeraCrypt : chiffrer un disque en 12 étapes [2026]
- Certificat SSL gratuit avec Certbot : 11 étapes [2026]
Pour approfondir, consultez les ressources officielles : la documentation de GnuPG, le texte de la RFC 9580 qui définit OpenPGP, le serveur de clés keys.openpgp.org, le bundle Gpg4win pour Windows et le guide pédagogique Email Self-Defense de la Free Software Foundation.




