Manuels pour la ligne de commande

Man » Manuel gpg en ligne - documentation en ligne détaillée pour la page de manuel gpg

🌍
gpg - Outil d’encryption et de signature OpenPGP

SYNOPSIS

gpg [--homedir dir] [--options file] [options] commande [arguments]

DESCRIPTION

gpg est la partie OpenPGP de GNU Privacy Guard (GnuPG). C’est un outil pour fournir des services de chiffrement et de signature numériques en utilisant la norme OpenPGP. gpg propose une gestion complète des clés et toutes les fonctionnalités que l’on attend d’une implémentation OpenPGP complète.

Il existe deux versions principales de GnuPG : GnuPG 1.x et GnuPG 2.x. GnuPG 2.x prend en charge les algorithmes de chiffrement modernes et doit donc être préféré à GnuPG 1.x. Vous n’avez besoin d’utiliser GnuPG 1.x que si votre plateforme ne prend pas en charge GnuPG 2.x, ou si vous avez besoin d’une prise en charge de certaines fonctionnalités que GnuPG 2.x a supprimées, par exemple, le déchiffrement de données créées avec des clés PGP-2.

Si vous recherchez la version 1 de GnuPG, vous constaterez peut-être que cette version est installée sous le nom gpg1.

VALEUR DE RETOUR

Le programme renvoie 0 s’il n’y a pas d’erreurs graves, 1 s’il y a au moins une signature non valide, et d’autres codes d’erreur en cas d’erreurs fatales.

Notez que la vérification de la signature nécessite une connaissance exacte de ce qui a été signé et par qui cela a été signé. L’utilisation uniquement du code de retour n’est donc pas une méthode appropriée pour vérifier une signature par un script. Utilisez correctement les codes d’état ou utilisez l’outil gpgv, qui a été conçu pour faciliter la vérification des signatures par les scripts.

AVERTISSEMENTS

Utilisez un mot de passe correct pour votre compte d’utilisateur et assurez-vous que tous les problèmes de sécurité sont toujours résolus sur votre machine. Mettez également en œuvre une protection physique rigoureuse de votre machine. Envisagez d’utiliser une bonne phrase de passe comme protection de dernier recours pour votre clé privée au cas où votre machine serait volée. Il est important que votre clé privée ne soit jamais divulguée. L’utilisation d’un jeton ou d’une carte à puce facile à transporter avec la clé privée est souvent conseillée.

Si vous allez vérifier des signatures détachées, assurez-vous que le programme en est informé ; indiquez les deux noms de fichiers sur la ligne de commande ou utilisez « - » pour spécifier STDIN.

Pour une utilisation non interactive ou automatisée de gpg, assurez-vous d’utiliser l’interface lisible par machine et non l’interface par défaut, qui est destinée à être utilisée directement par les humains. L’interface lisible par machine fournit une API stable et bien documentée, indépendante de la langue ou des modifications futures de gpg. Pour activer cette interface, utilisez les options --with-colons et --status-fd. Pour certaines opérations, l’option --command-fd peut également être utile. Consultez cette page de manuel et le fichier « DETAILS » pour la spécification de l’interface. Notez que les pages « info » de GnuPG ainsi que la version PDF du manuel de GnuPG comportent un chapitre sur l’utilisation non interactive de GnuPG. En alternative, la bibliothèque GPGME peut être utilisée comme une abstraction de haut niveau au-dessus de cette interface.


INTEROPÉRABILITÉ

GnuPG tente d'être une implémentation très flexible de la norme OpenPGP. En particulier, GnuPG implémente de nombreuses parties optionnelles de la norme, telles que la fonction de hachage SHA-512 et les algorithmes de compression ZLIB et BZIP2. Il est important de savoir que tous les programmes OpenPGP n'implémentent pas ces algorithmes optionnels et qu'en forçant leur utilisation via les options --cipher-algo, --digest-algo, --cert-digest-algo ou --compress-algo dans GnuPG, il est possible de créer un message OpenPGP parfaitement valide, mais qui ne peut pas être lu par le destinataire prévu.

Il existe des dizaines de variantes de programmes OpenPGP, et chacun prend en charge un sous-ensemble légèrement différent de ces algorithmes optionnels. Par exemple, jusqu'à récemment, aucune version (non modifiée) de PGP ne prenait en charge l'algorithme de chiffrement BLOWFISH. Un message utilisant BLOWFISH ne pouvait tout simplement pas être lu par un utilisateur de PGP. Par défaut, GnuPG utilise le système de préférences OpenPGP standard qui fera toujours le bon choix et créera des messages qui pourront être utilisés par tous les destinataires, quel que soit le programme OpenPGP qu'ils utilisent. Ne modifiez cette valeur par défaut sûre que si vous savez vraiment ce que vous faites.

Si vous devez absolument modifier la valeur par défaut sûre, ou si les préférences d'une clé donnée sont invalides pour une raison quelconque, il est préférable d'utiliser les options --pgp6, --pgp7 ou --pgp8. Ces options sont sûres car elles ne forcent aucun algorithme particulier en violation d'OpenPGP, mais réduisent plutôt les algorithmes disponibles à une liste « compatible PGP ».

COMMANDES

Les commandes ne sont pas distinguées des options, à l'exception du fait qu'une seule commande est autorisée. En général, les options non pertinentes sont ignorées et peuvent ne pas être vérifiées pour leur exactitude.

gpg peut être exécuté sans aucune commande. Dans ce cas, il affichera un avertissement et effectuera une action raisonnable en fonction du type de fichier qui lui est fourni en entrée (un message chiffré est déchiffré, une signature est vérifiée, un fichier contenant des clés est listé, etc.).

Si vous rencontrez des problèmes, veuillez ajouter l'option --verbose à l'invocation pour afficher plus de diagnostics.

Commandes non spécifiques à la fonction

--version

Affiche la version du programme et les informations de licence. Notez que vous ne pouvez pas abréger cette commande.

--help
-h Affiche un message d'utilisation résumant les options de ligne de commande les plus utiles. Notez que vous ne pouvez pas abréger arbitrairement cette commande (bien que vous puissiez utiliser sa forme courte -h).

--warranty

Affiche les informations de garantie.

--dump-options

Affiche la liste de toutes les options et commandes disponibles. Notez que vous ne pouvez pas abréger cette commande.

Commandes pour sélectionner le type d'opération

--sign
-s Signe un message. Cette commande peut être combinée avec --encrypt (pour signer et chiffrer un message), --symmetric (pour signer et chiffrer symétriquement un message), ou les deux --encrypt et --symmetric (pour signer et chiffrer un message qui peut être déchiffré à l'aide d'une clé privée ou d'un mot de passe). La clé de signature est choisie par défaut ou peut être définie explicitement à l'aide des options --local-user et --default-key.

--clear-sign
--clearsign

Crée une signature en texte clair. Le contenu d'une signature en texte clair est lisible sans logiciel spécial. Le logiciel OpenPGP est uniquement nécessaire pour vérifier la signature. Les signatures en texte clair peuvent modifier les espaces blancs en fin de ligne pour une indépendance de la plateforme et ne sont pas destinées à être réversibles. La clé de signature est choisie par défaut ou peut être définie explicitement à l'aide des options --local-user et --default-key.

--detach-sign
-b     Crée une signature détachée.

--encrypt
-e     Chiffre des données à l'aide d'une ou plusieurs clés publiques. Cette commande peut être combinée avec --sign (pour signer et chiffrer un message), --symmetric (pour chiffrer un message qui peut être déchiffré à l'aide d'une clé secrète ou d'une phrase de passe), ou --sign et --symmetric ensemble (pour un message signé qui peut être déchiffré à l'aide d'une clé secrète ou d'une phrase de passe). Les options --recipient et associées spécifient les clés publiques à utiliser pour le chiffrement.

--symmetric
-c     Chiffre à l'aide d'un chiffrement symétrique avec une phrase de passe. Le chiffrement symétrique par défaut utilisé est AES-128, mais il peut être choisi avec l'option --cipher-algo. Cette commande peut être combinée avec --sign (pour un message signé et chiffré de manière symétrique), --encrypt (pour un message qui peut être déchiffré à l'aide d'une clé secrète ou d'une phrase de passe), ou --sign et --encrypt ensemble (pour un message signé qui peut être déchiffré à l'aide d'une clé secrète ou d'une phrase de passe). Gpg met en cache la phrase de passe utilisée pour le chiffrement symétrique afin qu'une opération de déchiffrement n'oblige pas l'utilisateur à saisir la phrase de passe. L'option --no-symkey-cache peut être utilisée pour désactiver cette fonctionnalité.

--store

Stocke uniquement (crée un simple paquet de données littérales).

--decrypt
-d     Déchiffre le fichier spécifié sur la ligne de commande (ou STDIN si aucun fichier n'est spécifié) et l'écrit dans STDOUT (ou le fichier spécifié avec --output). Si le fichier déchiffré est signé, la signature est également vérifiée. Cette commande diffère de l'opération par défaut, car elle n'écrit jamais dans le nom de fichier inclus dans le fichier et elle rejette les fichiers qui ne commencent pas par un message chiffré.

--verify

Suppose que le premier argument est un fichier signé et le vérifie sans générer de sortie. Sans argument, le paquet de signature est lu à partir de STDIN. Si un seul argument est donné, le fichier spécifié est supposé contenir une signature complète.

Avec plus d'un argument, le premier argument doit spécifier un fichier avec une signature détachée et les fichiers restants doivent contenir les données signées. Pour lire les données signées à partir de STDIN, utilisez « - » comme deuxième nom de fichier. Pour des raisons de sécurité, une signature détachée ne lira pas le matériel signé à partir de STDIN si cela n'est pas explicitement spécifié.


Remarque : si l’option --batch n’est pas utilisée, gpg peut supposer qu’un seul argument est un fichier contenant une signature séparée et qu’il tentera de trouver le fichier de données correspondant en supprimant certains suffixes. L’utilisation de cette fonctionnalité historique pour vérifier une signature séparée est fortement déconseillée ; vous devez toujours spécifier explicitement le fichier de données.

Remarque : lors de la vérification d’une signature en texte clair, gpg ne vérifie que ce qui constitue les données signées en texte clair et pas les données supplémentaires en dehors de la signature en texte clair ou des lignes d’en-tête suivant immédiatement la ligne de marqueur de tiret. L’option --output peut être utilisée pour écrire les données signées réelles, mais il existe d’autres pièges avec ce format. Il est conseillé d’éviter les signatures en texte clair au profit des signatures séparées.

Remarque : avec l’option --batch, la vérification des signatures s’arrête à la première signature incorrecte. Il s’agit d’une valeur par défaut sûre pour le traitement non supervisé, mais parfois un statut pour toutes les signatures est nécessaire. Pour remplacer cette interruption précoce, utilisez l’option --proc-all-sigs.

Remarque : pour vérifier si un fichier a été signé par une clé spécifique, l’option --assert-signer peut être utilisée. Vous pouvez également utiliser l’outil gpgv. gpgv est conçu pour comparer les données signées à une liste de clés de confiance et ne renvoie une valeur de réussite que pour une signature correcte. Il possède sa propre page de manuel.

--multifile
Cela modifie certaines autres commandes pour accepter plusieurs fichiers pour le traitement sur la ligne de commande ou en lecture à partir de STDIN, chaque nom de fichier étant sur une ligne distincte. Cela permet de traiter de nombreux fichiers à la fois. --multifile peut actuellement être utilisé avec --verify, --encrypt et --decrypt. Remarque : --multifile --verify ne peut pas être utilisé avec les signatures séparées.

--verify-files
Identique à --multifile --verify.

--encrypt-files
Identique à --multifile --encrypt.

--decrypt-files
Identique à --multifile --decrypt.

--list-keys
-k
--list-public-keys
Affiche les clés spécifiées. Si aucune clé n’est spécifiée, toutes les clés des anneaux de clés publiques configurés sont affichées.

N’utilisez jamais la sortie de cette commande dans des scripts ou d’autres programmes. La sortie est destinée uniquement aux humains et son format est susceptible de changer. L’option --with-colons émet la sortie dans un format stable et analysable par une machine, qui est destiné à être utilisé par des scripts et d’autres programmes.

--list-secret-keys
-K
Affiche les clés secrètes spécifiées. Si aucune clé n’est spécifiée, toutes les clés secrètes connues sont affichées. Un # après les balises initiales sec ou ssb indique que la clé secrète ou la sous-clé n’est pas actuellement utilisable. On dit également que cette clé a été mise hors ligne (par exemple, une clé primaire peut être mise hors ligne en exportant la clé à l’aide de la commande --export-secret-subkeys). Un > après ces balises indique que la clé est stockée sur une carte à puce. Voir également --list-keys.

--check-signatures
--check-sigs
Identique à --list-keys, mais les signatures de clé sont également vérifiées et affichées. Notez que, pour des raisons de performance, l’état de révocation d’une clé signataire n’est pas affiché. Cette commande a le même effet que l’utilisation de --list-keys avec --with-sig-check.

Le statut de la vérification est indiqué par un indicateur placé immédiatement après la balise « sig » (et donc avant les indicateurs décrits ci-dessous). Un « ! » indique que la signature a été vérifiée avec succès, un « - » indique une signature incorrecte et un « % » est utilisé si une erreur s’est produite lors de la vérification de la signature (par exemple, un algorithme non pris en charge). Les signatures pour lesquelles la clé publique n’est pas disponible ne sont pas répertoriées ; pour afficher leurs keyid, la commande --list-sigs peut être utilisée.

Pour chaque signature répertoriée, il existe plusieurs indicateurs entre l’indicateur de statut de la signature et le keyid. Ces indicateurs fournissent des informations supplémentaires sur chaque signature de clé. De gauche à droite, ce sont les nombres 1 à 3 pour le niveau de vérification du certificat (voir --ask-cert-level), « L » pour une signature locale ou non exportable (voir --lsign-key), « R » pour une signature non révocable (voir la commande --edit-key « nrsign »), « P » pour une signature qui contient une URL de stratégie (voir --cert-policy-url), « N » pour une signature qui contient une notation (voir --cert-notation), « X » pour une signature expirée (voir --ask-cert-expire) et les nombres 1 à 9 ou « T » pour 10 et plus pour indiquer les niveaux de signature de confiance (voir la commande --edit-key « tsign »).

--locate-keys
--locate-external-keys

Localiser les clés fournies en arguments. Cette commande utilise essentiellement le même algorithme que celui utilisé pour localiser les clés pour le chiffrement et peut donc être utilisée pour voir quelles clés GPG pourrait utiliser. En particulier, les méthodes externes définies par --auto-key-locate sont utilisées pour localiser une clé si les arguments contiennent des adresses électroniques valides. Seules les clés publiques sont répertoriées.

La variante --locate-external-keys ne prend pas en compte une clé existant localement et peut donc être utilisée pour forcer l’actualisation d’une clé via les méthodes externes définies. Si un fingerprint est fourni et que les méthodes définies par --auto-key-locate définissent des serveurs LDAP, la clé est récupérée à partir de ces ressources ; les serveurs de clés non LDAP définis sont ignorés.

--show-keys

Cette commande prend des clés OpenPGP en entrée et affiche des informations à leur sujet de la même manière que la commande --list-keys pour les clés stockées localement. De plus, les options de liste show-unusable-uids, show-unusable-subkeys, show-notations et show-policy-urls sont également activées. Comme d’habitude pour le traitement automatisé, cette commande doit être combinée avec l’option --with-colons.

--fingerprint

Répertorier toutes les clés (ou les clés spécifiées) avec leurs empreintes digitales. Il s’agit de la même sortie que --list-keys, mais avec l’ajout d’une ligne contenant l’empreinte digitale. Peut également être combiné avec --check-signatures. Si cette commande est exécutée deux fois, les empreintes digitales de toutes les clés secondaires sont également répertoriées. Cette commande force également l’affichage joli des empreintes digitales si le format keyid est défini sur « none ».

^ -list-packets Affiche uniquement la séquence des paquets. Cette commande est utile uniquement pour le débogage. Lorsqu'elle est utilisée avec l'option --verbose, les valeurs MPI réelles sont affichées et non seulement leurs longueurs. Notez que la sortie de cette commande peut changer avec les nouvelles versions.

`--edit-card`
`--card-edit`
Présente un menu pour travailler avec une carte à puce. La sous-commande « help » fournit un aperçu des
commandes disponibles. Pour une description détaillée, veuillez consulter le guide Card HOWTO à l’adresse
[https://gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO](https://gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO). Veuillez noter que la commande « openpgp » peut être utilisée pour passer à l’application OpenPGP des cartes qui, par défaut,
présentent une autre application (par exemple, PIV).

`--card-status`
Affiche le contenu de la carte à puce.

`--change-pin`
Présente un menu pour permettre de modifier le code PIN d’une carte à puce. Cette fonctionnalité est également disponible sous la forme de la sous-commande « passwd » avec la commande `--edit-card`.

`--delete-keys name`
Supprime une clé du trousseau de clés publiques. En mode batch, `--yes` est obligatoire ou la clé doit être
spécifiée par son empreinte. Il s’agit d’une mesure de sécurité pour éviter la suppression accidentelle de plusieurs
clés. Si la syntaxe du point d’exclamation est utilisée avec l’empreinte d’une sous-clé, seule cette
sous-clé est supprimée ; si le point d’exclamation est utilisé avec l’empreinte de la clé principale,
toute la clé publique est supprimée.

`--delete-secret-keys name`
Supprime une clé du trousseau de clés privées. En mode batch, la clé doit être spécifiée par son empreinte.
L’option `--yes` peut être utilisée pour indiquer à gpg-agent de ne pas demander de confirmation.
Cette précaution supplémentaire est prise parce que gpg ne peut pas être sûr que la clé privée (gérée par gpg-agent)
n’est utilisée que pour la clé publique OpenPGP donnée. Si la syntaxe du point d’exclamation est utilisée avec
l’empreinte d’une sous-clé, seule la partie privée de cette sous-clé est supprimée ; si le point d’exclamation
est utilisé avec l’empreinte de la clé principale, seule la partie privée de la clé principale est supprimée.

`--delete-secret-and-public-key name`
Identique à `--delete-key`, mais si une clé privée existe, elle sera d’abord supprimée. En mode batch,
la clé doit être spécifiée par son empreinte. L’option `--yes` peut être utilisée pour indiquer à gpgagent de ne pas demander de confirmation.

`--export`
Exporte toutes les clés de tous les trousseaux de clés (trousseau de clés par défaut et ceux enregistrés via l’option
`--keyring`), ou si au moins un nom est donné, celles du nom donné. Les clés exportées sont écrites dans STDOUT
ou dans le fichier spécifié avec l’option `--output`. Utilisez-la avec `--armor` pour envoyer ces clés par e-mail.

`--send-keys keyIDs`
Semblable à `--export`, mais envoie les clés à un serveur de clés. Des empreintes peuvent être utilisées
à la place des ID de clé. N’envoyez pas tout votre trousseau de clés à un serveur de clés ; sélectionnez uniquement les
clés qui sont nouvelles ou qui ont été modifiées par vous. Si aucun ID de clé n’est donné, gpg ne fait rien.

Attention : Les serveurs de clés sont conçus pour être des systèmes d’écriture uniquement, il n’est donc pas possible de supprimer
les clés une fois qu’elles ont été envoyées à un serveur de clés.

--export-secret-keys
--export-secret-subkeys

Identique à --export, mais exporte les clés secrètes à la place. Les clés exportées sont écrites sur la sortie standard ou dans le fichier spécifié avec l'option --output. Cette commande est souvent utilisée avec l'option --armor afin de faciliter l'impression de la clé pour une sauvegarde papier ; cependant, l'outil externe paperkey fait un meilleur travail pour créer des sauvegardes sur papier. Notez que l'exportation d'une clé secrète peut être un risque pour la sécurité si les clés exportées sont envoyées sur un canal non sécurisé.

La deuxième forme de la commande a la propriété spéciale de rendre la partie secrète de la clé primaire inutile ; il s'agit d'une extension GNU à OpenPGP et on ne peut pas s'attendre à ce que d'autres implémentations puissent importer avec succès une telle clé. Son objectif est de générer une clé complète avec une sous-clé de signature supplémentaire sur un ordinateur dédié. Cette commande exporte ensuite la clé sans la clé primaire vers l'ordinateur principal.

GnuPG peut vous demander d'entrer le mot de passe de la clé. Ceci est requis, car la méthode de protection interne de la clé secrète est différente de celle spécifiée par le protocole OpenPGP.

--export-ssh-key

Cette commande est utilisée pour exporter une clé au format de clé publique OpenSSH. Elle nécessite la spécification d'une clé par les moyens habituels et exporte la dernière sous-clé valide qui possède une capacité d'authentification vers la sortie standard ou vers le fichier spécifié avec l'option --output. Cette sortie peut être ajoutée directement au fichier « authorized_key » de ssh.

En spécifiant la clé à exporter en utilisant un ID de clé ou un hachage de clé suffixed avec un point d'exclamation (!), une sous-clé spécifique ou la clé primaire peut être exportée. Cela ne nécessite pas non plus que la clé ait le drapeau de capacité d'authentification défini.

--import
--fast-import

Importe/fusionne des clés. Cela ajoute les clés données au trousseau de clés. La version rapide est actuellement juste un synonyme.

Il existe quelques autres options qui contrôlent le fonctionnement de cette commande. La plus notable ici est l'option --import-options merge-only qui n'insère pas de nouvelles clés mais effectue uniquement la fusion de nouvelles signatures, d'ID utilisateur et de sous-clés.

--receive-keys keyIDs
--recv-keys keyIDs

Importe les clés avec les ID de clé donnés à partir d'un serveur de clés.

--refresh-keys

Demande des mises à jour à partir d'un serveur de clés pour les clés qui existent déjà dans le trousseau de clés local. Cela est utile pour mettre à jour une clé avec les dernières signatures, ID utilisateur, etc. En appelant ceci sans arguments, l'ensemble du trousseau de clés sera actualisé.

--search-keys names

Recherche le serveur de clés pour les noms donnés. Plusieurs noms donnés ici seront joints pour créer la chaîne de recherche pour le serveur de clés. Notez que les serveurs de clés recherchent les noms d'une manière différente et plus simple que ne le fait gpg. Le meilleur choix est d'utiliser une adresse électronique. Pour des raisons de confidentialité des données, les serveurs de clés peuvent même ne pas autoriser la recherche par ID utilisateur ou par adresse électronique et peuvent donc uniquement renvoyer des résultats lorsqu'ils sont utilisés avec la commande --recv-key pour rechercher par hachage de clé ou par ID de clé.


--fetch-keys URIs

Récupère les clés situées aux URI spécifiés. Notez que différentes installations de GnuPG peuvent prendre en charge différents protocoles (HTTP, FTP, LDAP, etc.). Lors de l’utilisation de HTTPS, les certificats racine fournis par le système sont utilisés par cette commande.

--update-trustdb

Effectue la maintenance de la base de données de confiance. Cette commande parcourt toutes les clés et construit le réseau de confiance. Il s’agit d’une commande interactive, car elle peut devoir demander les valeurs « ownertrust » pour les clés. L’utilisateur doit donner une estimation du niveau de confiance qu’il accorde au propriétaire de la clé affichée afin de certifier (signer) correctement d’autres clés. GnuPG ne demande la valeur « ownertrust » qu’en cas de non-attribution à une clé. En utilisant le menu --edit-key, la valeur attribuée peut être modifiée à tout moment.

--check-trustdb

Effectue la maintenance de la base de données de confiance sans interaction avec l’utilisateur. De temps en temps, la base de données de confiance doit être mise à jour afin que les clés ou signatures expirées et les changements qui en résultent dans le réseau de confiance puissent être suivis. Normalement, GnuPG calcule quand cela est nécessaire et le fait automatiquement, sauf si --no-auto-check-trustdb est défini. Cette commande peut être utilisée pour forcer une vérification de la base de données de confiance à tout moment. Le traitement est identique à celui de --update-trustdb, mais il ignore les clés pour lesquelles la valeur « ownertrust » n’est pas encore définie.

Pour une utilisation avec des tâches cron, cette commande peut être utilisée avec --batch, auquel cas la vérification de la base de données de confiance n’est effectuée que si une vérification est nécessaire. Pour forcer une exécution même en mode batch, ajoutez l’option --yes.

--export-ownertrust

Envoie les valeurs ownertrust vers STDOUT. Ceci est utile à des fins de sauvegarde, car ces valeurs sont les seules qui ne peuvent pas être recréées à partir d’une trustdb corrompue. Exemple : gpg --export-ownertrust > otrust.txt

--import-ownertrust

Met à jour la trustdb avec les valeurs ownertrust stockées dans des fichiers (ou STDIN si aucun fichier n’est spécifié) ; les valeurs existantes seront écrasées. En cas de trustdb gravement endommagée et si vous disposez d’une sauvegarde récente des valeurs ownertrust (par exemple, dans le fichier « otrust.txt »), vous pouvez recréer la trustdb en utilisant les commandes suivantes : cd ~/.gnupg rm trustdb.gpg gpg --import-ownertrust < otrust.txt

--rebuild-keydb-caches

Lors de la mise à niveau de la version 1.0.6 à la version 1.0.7, cette commande doit être utilisée pour créer des caches de signature dans le trousseau de clés. Cela peut également être utile dans d’autres situations.

--print-md algo
--print-mds

Imprime le hachage de message de l’algorithme algo pour tous les fichiers donnés ou STDIN. Avec la deuxième forme (ou un « * » obsolète pour algo), des hachages pour tous les algorithmes disponibles sont imprimés.

--gen-random 0|1|2|16|30 count

Émet count octets aléatoires du niveau de qualité donné 0, 1 ou 2. Si count n’est pas spécifié ou est égal à zéro, une séquence infinie d’octets aléatoires sera émise. Si utilisé avec --armor, la sortie sera encodée en base64. Le niveau spécial 16 utilise un niveau de qualité de 1 et affiche un flux infini d’octets encodés en hexadécimal. Le niveau spécial 30 affiche des données aléatoires sous forme de 30 caractères zBase-32.


--gen-prime mode bits

Utilisez le code source, Luke ;-) Le format de sortie est susceptible de changer avec chaque version.

--enarmor
--dearmor

Empaqueter ou désempaqueter une entrée arbitraire dans/depuis un format ASCII OpenPGP. Il s'agit d'une extension GnuPG à OpenPGP et, en général, n'est pas très utile. La commande --dearmor peut également être utilisée pour désempaqueter les formats PEM.

--unwrap

Cette option modifie la commande --decrypt afin de renvoyer le message original avec la couche de chiffrement supprimée. Ainsi, la sortie sera une structure de données OpenPGP, ce qui signifie souvent un message OpenPGP signé. Notez que cette option peut ou non supprimer une couche de compression qui se trouve souvent sous la couche de chiffrement.

--tofu-policy {auto|good|unknown|bad|ask} keys

Définir la politique TOFU pour tous les liens associés aux clés spécifiées. Pour plus d'informations sur la signification des politiques, voir : [trust-model-tofu]. Les clés peuvent être spécifiées soit par leur empreinte digitale (de préférence), soit par leur ID de clé.

Comment gérer vos clés

Cette section explique les commandes principales pour la gestion des clés.

--quick-generate-key user-id [algo [usage [expire]]]
--quick-gen-key

Il s'agit d'une commande simple pour générer une clé standard avec un seul ID utilisateur. Contrairement à --generate-key, la clé est générée directement sans qu'il soit nécessaire de répondre à une série d'invites. Sauf si l'option --yes est spécifiée, la création de la clé sera annulée si l'ID utilisateur spécifié existe déjà dans le trousseau.

Si elle est invoquée directement dans la console sans options spéciales, une réponse à une invite de confirmation du type « Continuer ? » est requise. Si l'ID utilisateur existe déjà dans le trousseau, une deuxième invite apparaîtra pour forcer la création de la clé.

Si algo ou usage sont spécifiés, seule la clé primaire est créée et aucune invite n'est affichée. Pour spécifier une date d'expiration tout en créant une clé primaire et une sous-clé, utilisez « default » ou « future-default » pour algo et « default » pour usage. Pour une description de ces arguments optionnels, voir la commande --quick-add-key. L'option usage accepte également la valeur « cert » qui peut être utilisée pour créer une clé primaire de certification uniquement ; par défaut, une clé de certification et de signature est créée.

L'argument expire peut être utilisé pour spécifier une date d'expiration pour la clé. Plusieurs formats sont pris en charge ; les formats ISO « AAAA-MM-JJ » ou « AAAAAAJJThhmmss » sont couramment utilisés. Pour faire expirer la clé dans N secondes, N jours, N semaines, N mois ou N années, utilisez « seconds=N », « Nd », « Nw », « Nm » ou « Ny » respectivement. Ne pas spécifier de valeur, ou utiliser « - » entraîne l'expiration de la clé après un intervalle par défaut raisonnable. Les valeurs « never » ou « none » peuvent être utilisées pour indiquer l'absence de date d'expiration.

Si cette commande est utilisée avec --batch, --pinentry-mode est défini sur loopback, et qu'une des options de phrase secrète (--passphrase, --passphrase-fd ou --passphrase-file) est utilisée, la phrase secrète fournie est utilisée pour la nouvelle clé et l'agent ne la demande pas. Pour créer une clé sans aucune protection, --passphrase '' peut être utilisé.

Pour créer une clé OpenPGP à partir des clés disponibles sur la carte à puce insérée, la chaîne spéciale « card » peut être utilisée pour l’argument algo. Si la carte à puce dispose d’une clé de chiffrement et d’une clé de signature, GPG les identifiera et créera une clé OpenPGP composée de la clé primaire habituelle et d’une sous-clé. Cela ne fonctionne qu’avec certaines cartes à puce. Notez que la commande interactive --full-gen-key permet d’effectuer la même opération, mais avec une plus grande flexibilité dans la sélection des clés de la carte à puce.

Il est possible de créer une clé primaire et une sous-clé en utilisant des algorithmes non par défaut en utilisant « default » et en modifiant les paramètres par défaut à l’aide de l’option --default-new-key-algo.

--quick-set-expire fpr expire [*|subfprs]

Avec deux arguments, définit directement la date d’expiration de la clé primaire identifiée par fpr. Pour supprimer la date d’expiration, 0 peut être utilisé. Avec trois arguments et le troisième argument défini sur un astérisque, la date d’expiration de toutes les sous-clés non révoquées et non expirées est définie. Avec plus de deux arguments et une liste d’empreintes digitales pour subfprs, toutes les sous-clés non révoquées correspondant à ces empreintes digitales sont définies pour expirer.

--quick-add-key fpr [algo [usage [expire]]]

Ajoute directement une sous-clé à la clé identifiée par l’empreinte digitale fpr. Sans les arguments facultatifs, une sous-clé de chiffrement est ajoutée. Si l’un des arguments est donné, une sous-clé plus spécifique est ajoutée.

algo peut être n’importe lequel des algorithmes ou des noms de courbes pris en charge, au format utilisé par les listes de clés. Pour utiliser l’algorithme par défaut, la chaîne « default » ou « - » peut être utilisée. Les algorithmes pris en charge sont « rsa », « dsa », « elg », « ed25519 », « cv25519 » et d’autres courbes ECC. Par exemple, la chaîne « rsa » ajoute une clé RSA avec la longueur de clé par défaut ; une chaîne « rsa4096 » demande que la longueur de la clé soit de 4096 bits. La chaîne « future-default » est un alias pour l’algorithme qui sera probablement utilisé comme algorithme par défaut dans les futures versions de GPG. Pour lister les courbes ECC prises en charge, la commande gpg --with-colons --list-config curve peut être utilisée.

Selon l’argument algo donné, la sous-clé peut être une sous-clé de chiffrement ou une sous-clé de signature. Si un algorithme est capable de signer et de chiffrer et qu’une telle sous-clé est souhaitée, une chaîne d’utilisation doit être donnée. Cette chaîne est soit « default » ou « - » pour conserver la valeur par défaut, soit une liste délimitée par des virgules (ou des espaces) de mots-clés : « sign » pour une sous-clé de signature, « auth » pour une sous-clé d’authentification et « encr » pour une sous-clé de chiffrement (« encrypt » peut être utilisé comme alias pour « encr »). Les combinaisons valides dépendent de l’algorithme.

L’argument expire peut être utilisé pour spécifier une date d’expiration pour la clé. Plusieurs formats sont pris en charge ; les formats ISO « YYYY-MM-DD » ou « YYYYMMDDThhmmss » sont couramment utilisés. Pour faire expirer la clé dans N secondes, N jours, N semaines, N mois ou N années, utilisez « seconds=N », « Nd », « Nw », « Nm » ou « Ny » respectivement. Ne pas spécifier de valeur, ou utiliser « - » entraîne une clé expirant dans un intervalle par défaut raisonnable. Les valeurs « never » et « none » peuvent être utilisées pour aucune date d’expiration.


--quick-add-adsk fpr adskfpr

Ajoute directement une sous-clé de déchiffrement supplémentaire à la clé identifiée par l’empreinte digitale fpr. adskfpr est l’empreinte digitale de la sous-clé de chiffrement d’une autre clé. Une sous-clé est couramment utilisée ici car, par défaut, une clé principale n’a pas de capacité de chiffrement. Utilisez l’option --with-subkey-fingerprint avec une commande list pour afficher les empreintes digitales des sous-clés. Si la chaîne « default » est utilisée pour adskfpr, toutes les ADSK manquantes configurées avec --default-new-key-adsk sont ajoutées.

--generate-key
--gen-key

Génère une nouvelle paire de clés en utilisant les paramètres par défaut actuels. Il s’agit de la commande standard pour créer une nouvelle clé. En plus de la clé, un certificat de révocation est créé et stocké dans le répertoire « openpgp-revocs.d » situé sous le répertoire personnel de GnuPG.

--full-generate-key
--full-gen-key

Génère une nouvelle paire de clés avec des dialogues pour toutes les options. Il s’agit d’une version étendue de --generate-key.

Il existe également une fonctionnalité qui vous permet de créer des clés en mode batch. Consultez la section du manuel « Génération de clés en mode silencieux » pour savoir comment l’utiliser.

--generate-revocation name
--gen-revoke name

Génère un certificat de révocation pour la clé entière. Pour ne révoquer qu’une sous-clé ou une signature de clé, utilisez la commande --edit.

Cette commande crée simplement le certificat de révocation afin qu’il puisse être utilisé pour révoquer la clé si nécessaire. Pour révoquer réellement une clé, le certificat de révocation créé doit être fusionné avec la clé à révoquer. Cela se fait en important le certificat de révocation à l’aide de la commande --import. Ensuite, la clé révoquée doit être publiée, ce qui est préférable en envoyant la clé à un serveur de clés (commande --send-key) et en l’exportant (--export) vers un fichier qui est ensuite envoyé aux partenaires de communication fréquents.

--generate-designated-revocation name
--desig-revoke name

Génère un certificat de révocation désigné pour une clé. Cela permet à un utilisateur (avec la permission du détenteur de la clé) de révoquer la clé de quelqu’un d’autre.

--edit-key

Présente un menu qui vous permet d’effectuer la plupart des tâches liées à la gestion des clés. Il attend la spécification d’une clé sur la ligne de commande.

uid n Active/désactive la sélection de l’ID utilisateur ou de l’ID utilisateur photographique avec l’index n. Utilisez * pour sélectionner
tous et 0 pour désélectionner tous.

key n Active/désactive la sélection de la sous-clé avec l’index n ou l’ID de clé n. Utilisez * pour sélectionner tous et 0 pour
désélectionner tous.

sign Effectue une signature sur la clé de l’utilisateur name. Si la clé n’est pas encore signée par l’utilisateur par défaut (ou les utilisateurs spécifiés avec -u), le programme affiche à nouveau les informations de la clé, ainsi que son empreinte digitale, et demande s’il faut la signer.

Cette question est répétée pour tous les utilisateurs spécifiés avec -u.


lsign   Identique à « sign », mais la signature est marquée comme non exportable et ne sera donc jamais utilisée par d'autres. Ceci peut être utilisé pour rendre les clés valides uniquement dans l'environnement local.

nrsign Identique à « sign », mais la signature est marquée comme non révocable et ne peut donc jamais être révoquée.

tsign   Crée une signature de confiance. Il s'agit d'une signature qui combine les notions de certification (comme une signature normale) et de confiance (comme la commande « trust »). Elle est généralement utile dans des communautés ou des groupes distincts pour implémenter le concept d'un « initiateur de confiance ». Pour plus d'informations, veuillez consulter les sections « Signature de confiance » et « Expression régulière » dans le RFC-4880.

Notez que « l » (pour local/non exportable), « nr » (pour non révocable) et « t » (pour confiance) peuvent être librement combinés et préfixés à « sign » pour créer une signature du type souhaité.

Si l'option --only-sign-text-ids est spécifiée, tous les identifiants utilisateur non basés sur du texte (par exemple, les identifiants photo) ne seront pas sélectionnés pour la signature.

delsig  Supprime une signature. Il n'est pas possible de rétracter une signature une fois qu'elle a été envoyée au public (c'est-à-dire à un serveur de clés). Dans ce cas, il est préférable d'utiliser revsig.

revsig  Révoque une signature. Pour chaque signature générée par l'une des clés privées, GnuPG demande si un certificat de révocation doit être généré.

check   Vérifie les signatures de tous les identifiants utilisateur sélectionnés. Avec l'option supplémentaire selfsig, seules les auto-signatures sont affichées.

adduid  Crée un identifiant utilisateur supplémentaire.

addphoto    Crée un identifiant utilisateur photographique. Cela vous demandera de fournir un fichier JPEG qui sera intégré à l'identifiant utilisateur. Notez qu'un JPEG très volumineux entraînera une clé très volumineuse. De plus, notez que certains programmes afficheront votre JPEG tel quel (GnuPG), et certains programmes le redimensionneront pour l'adapter à une boîte de dialogue (PGP).

showphoto   Affiche l'identifiant utilisateur photographique sélectionné.

deluid  Supprime un identifiant utilisateur ou un identifiant utilisateur photographique. Il n'est pas possible de rétracter un identifiant utilisateur une fois qu'il a été envoyé au public (c'est-à-dire à un serveur de clés). Dans ce cas, il est préférable d'utiliser revuid.

revuid  Révoque un identifiant utilisateur ou un identifiant utilisateur photographique.

primary Définit l'identifiant utilisateur actuel comme identifiant principal, supprime le drapeau d'identifiant principal de tous les autres identifiants utilisateur et avance d'une seconde l'horodatage de toutes les auto-signatures affectées. Notez que définir un identifiant utilisateur photographique comme principal le rend principal par rapport aux autres identifiants utilisateur photographiques, et définir un identifiant utilisateur normal comme principal le rend principal par rapport aux autres identifiants utilisateur normaux.

keyserver   Définit un serveur de clés préféré pour l'identifiant utilisateur spécifié. Cela permet aux autres utilisateurs de savoir à partir de quel serveur vous préférez qu'ils obtiennent votre clé. Voir --keyserver-options honor-keyserver-url pour plus d'informations sur son fonctionnement. Définir une valeur de « none » supprime un serveur de clés préféré existant.

notation    Définit une notation au format nom=valeur pour l'identifiant utilisateur spécifié. Voir --cert-notation pour plus d'informations sur son fonctionnement. Définir une valeur de « none » supprime toutes les notations, définir une notation préfixée par un signe moins (-) supprime cette notation, et définir un nom de notation (sans la valeur) préfixé par un signe moins supprime toutes les notations portant ce nom.

pref  Affiche la liste des préférences de l’ID utilisateur sélectionné. Cela montre les préférences réelles, sans inclure les préférences implicites.

showpref
Liste plus détaillée des préférences pour l’ID utilisateur sélectionné. Cela affiche les préférences en vigueur en incluant les préférences implicites de 3DES (chiffrement), SHA-1 (hachage) et Non compressé (compression) si elles ne sont pas déjà incluses dans la liste des préférences. De plus, le serveur de clés préféré et les notations de signature (le cas échéant) sont affichés.

setpref chaîne
Définit la liste des préférences de l’ID utilisateur à la chaîne pour tous (ou uniquement l’ID utilisateur sélectionné). L’appel de setpref sans arguments définit la liste des préférences sur la valeur par défaut (soit intégrée, soit définie via --default-preference-list), et l’appel de setpref avec « none » comme argument définit une liste de préférences vide. Utilisez gpg --version pour obtenir une liste des algorithmes disponibles. Notez que bien que vous puissiez modifier les préférences d’un ID utilisateur d’attribut (alias « ID photo »), GnuPG ne sélectionne pas les clés via les ID utilisateurs d’attribut, ces préférences ne seront donc pas utilisées par GnuPG. Notez qu’une version non interactive de cette commande est disponible en tant que --quick-update-pref.

Lorsque vous définissez des préférences, vous devez lister les algorithmes dans l’ordre dans lequel vous souhaitez qu’ils soient utilisés par quelqu’un d’autre lors du chiffrement d’un message vers votre clé. Si vous n’incluez pas 3DES, il sera automatiquement ajouté à la fin. Notez qu’il existe de nombreux facteurs qui entrent en ligne de compte dans le choix d’un algorithme (par exemple, votre clé peut ne pas être le seul destinataire), et par conséquent, l’application OpenPGP distante utilisée pour vous envoyer un message peut ou non suivre votre ordre exact pour un message donné. Cependant, elle ne choisira qu’un algorithme qui est présent dans la liste des préférences de chaque clé de destinataire. Voir également la section INTEROPÉRABILITÉ AVEC D’AUTRES PROGRAMMES OPENPGP ci-dessous.

addkey  Ajoute une sous-clé à cette clé.

addcardkey
Génère une sous-clé sur une carte et l’ajoute à cette clé.

keytocard
Transfère la sous-clé secrète sélectionnée (ou la clé primaire si aucune sous-clé n’a été sélectionnée) vers une carte à puce. La clé secrète du trousseau sera remplacée par un stub si la clé peut être stockée avec succès sur la carte et si vous utilisez la commande save ultérieurement. Seuls certains types de clés peuvent être transférés vers la carte. Un sous-menu vous permet de sélectionner la carte sur laquelle stocker la clé. Notez qu’il n’est pas possible de récupérer cette clé à partir de la carte : si la carte est endommagée, votre clé secrète sera perdue, sauf si vous avez une sauvegarde.

bkuptocard fichier
Restaure le fichier donné sur une carte. Cette commande peut être utilisée pour restaurer une clé de sauvegarde (comme générée lors de l’initialisation de la carte) sur une nouvelle carte. Dans la plupart des cas, il s’agira de la clé de chiffrement. Vous devez utiliser cette commande uniquement avec la clé publique correspondante et vous assurer que le fichier donné en argument est bien la sauvegarde à restaurer. Vous devrez ensuite sélectionner 2 pour la restaurer en tant que clé de chiffrement. Vous serez d’abord invité à entrer le mot de passe de la clé de sauvegarde, puis le code PIN administrateur de la carte.

keytotpm
Transfère la sous-clé secrète sélectionnée (ou la clé primaire si aucune sous-clé n’est sélectionnée) vers le format TPM. La clé secrète du trousseau sera remplacée par la représentation TPM de cette clé, qui ne peut être lue que par le TPM spécifique qui l’a créée (le fichier de clé est donc verrouillé sur le ordinateur portable contenant le TPM). Seuls certains types de clés peuvent être transférés vers le TPM (tous les systèmes TPM 2.0 doivent avoir les algorithmes rsa2048 et nistp256, mais les TPM plus récents peuvent en avoir davantage). Notez que la clé elle-même n’est pas transférée dans le TPM, mais simplement chiffrée en place, de sorte que si le fichier de clé est supprimé, la clé sera perdue. Une fois transférée au format TPM, le fichier de clé ne peut plus être reconverti au format non-TPM et la clé disparaîtra lorsque le TPM cessera de fonctionner. Vous devez donc d’abord créer une sauvegarde sur un support hors ligne sécurisé du fichier de clé secrète réel avant la conversion. Il est essentiel d’utiliser le système TPM physique sur lequel vous avez des autorisations de lecture/écriture sur la ressource de gestion TPM (/dev/tpmrm0). En général, cela signifie que vous devez être membre du groupe tss.

delkey Supprime une sous-clé (clé secondaire). Notez qu’il n’est pas possible de rétracter une sous-clé une fois qu’elle a été envoyée au public (c’est-à-dire à un serveur de clés). Dans ce cas, il est préférable d’utiliser revkey. Notez également que cela ne supprime que la partie publique d’une clé.

revkey Révoque une sous-clé.

expire Modifie la date d’expiration de la clé ou de la sous-clé. Si une sous-clé est sélectionnée, la date d’expiration de cette sous-clé sera modifiée. Sans sélection, la date d’expiration de la clé primaire est modifiée.

trust Modifie la valeur de confiance du propriétaire pour la clé. Cela met à jour la base de données de confiance immédiatement et aucune sauvegarde n’est requise.

disable
enable Désactive ou active une clé entière. Une clé désactivée ne peut normalement pas être utilisée pour le chiffrement.

addrevoker
Ajoute un révocateur désigné à la clé. Cela prend un argument facultatif : « sensitive ». Si un révocateur désigné est marqué comme sensible, il ne sera pas exporté par défaut (voir export-options).

addadsk
Ajoute une sous-clé de déchiffrement supplémentaire. L’utilisateur est invité à entrer l’empreinte d’une autre sous-clé de chiffrement. Notez que l’empreinte exacte de la sous-clé de chiffrement d’une autre clé doit être entrée. En effet, généralement, la clé primaire n’a pas de capacité de chiffrement. Utilisez l’option --with-subkey-fingerprint avec une commande list pour afficher les empreintes des sous-clés.

passwd Modifie la phrase de passe de la clé secrète.

toggle Il s’agit d’une commande factice qui n’existe que pour assurer la compatibilité avec les versions antérieures.

clean Compacte (en supprimant toutes les signatures sauf la signature automatique) toute ID utilisateur qui n’est plus utilisable (par exemple, révoquée ou expirée). Ensuite, supprime toutes les signatures qui ne sont plus utilisables par les calculs de confiance. Plus précisément, cela supprime toutes les signatures qui ne sont pas valides, toutes les signatures qui sont remplacées par une signature ultérieure, les signatures révoquées et les signatures émises par des clés qui ne sont pas présentes dans le trousseau.

minimize

Rendre la clé aussi petite que possible. Cela supprime toutes les signatures de chaque identifiant utilisateur, à l'exception de l'auto-signature la plus récente.

change-usage

Modifier les indicateurs d'utilisation (capacités) de la clé primaire ou des sous-clés. Ces indicateurs d'utilisation (par ex. Certify, Sign, Authenticate, Encrypt) sont définis lors de la création de la clé. Il est parfois utile de pouvoir les modifier (par exemple pour ajouter Authenticate) après leur création. Soyez prudent en le faisant ; les indicateurs d'utilisation autorisés dépendent de l'algorithme de la clé.

cross-certify

Ajouter des signatures de certification croisée aux sous-clés de signature qui pourraient ne pas en avoir actuellement. Les signatures de certification croisée protègent contre une attaque subtile visant les sous-clés de signature. Voir --require-cross-certification. Toutes les nouvelles clés générées ont cette signature par défaut, cette commande n'est donc utile que pour mettre à jour les anciennes clés.

save Enregistrer toutes les modifications dans le porte-clés et quitter.

quit Quitter le programme sans mettre à jour le porte-clés.

La liste vous montre la clé avec ses clés secondaires et tous les identifiants utilisateur. L'identifiant utilisateur principal est indiqué par un point, et les clés ou identifiants utilisateur sélectionnés sont indiqués par un astérisque. La valeur de confiance est affichée avec la clé primaire : "trust" est la confiance du propriétaire attribuée et "validity" est la validité calculée de la clé. Les valeurs de validité sont également affichées pour tous les identifiants utilisateur. Pour les valeurs possibles de confiance, voir : [trust-values].

--sign-key name

Signe une clé publique avec votre clé secrète. Ceci est une version raccourcie de la sous-commande "sign" de --edit-key.

--lsign-key name

Signe une clé publique avec votre clé secrète mais la marque comme non exportable. Ceci est une version raccourcie de la sous-commande "lsign" de --edit-key.

--quick-sign-key fpr [names]
--quick-lsign-key fpr [names]

Signer directement une clé à partir de la phrase de passe sans autre interaction de l'utilisateur. Le fpr doit être l'empreinte primaire vérifiée d'une clé dans le porte-clés local. Si aucun nom n'est donné, tous les identifiants utilisateur utiles sont signés ; avec [names] donnés, seuls les identifiants utilisateur utiles correspondant à l'un de ces noms sont signés. Par défaut, ou si un nom est préfixé par '*', une correspondance de sous-chaîne insensible à la casse est utilisée. Si un nom est préfixé par '=', une correspondance exacte sensible à la casse est effectuée.

La commande --quick-lsign-key marque les signatures comme non exportables. Si une telle signature non exportable existe déjà, la commande --quick-sign-key la transforme en signature exportable. Si vous devez mettre à jour une signature existante, par exemple pour ajouter ou modifier des données de notation, vous devez utiliser l'option --force-sign-key.


Cette commande utilise des valeurs par défaut raisonnables et ne fournit donc pas la flexibilité complète de la sous-commande « sign » de --edit-key. Son objectif est de faciliter la signature de clés automatisée en utilisant une liste d’empreintes digitales vérifiées.

--quick-add-uid user-id new-user-id

Cette commande ajoute un nouvel identifiant utilisateur à une clé existante. Contrairement à la sous-commande interactive adduid de --edit-key, le nouvel identifiant utilisateur est ajouté tel quel, avec seulement les espaces blancs de début et de fin supprimés. Il est supposé être encodé en UTF-8, et aucune vérification de sa forme n’est effectuée.

--quick-revoke-uid user-id user-id-to-revoke

Cette commande révoque un identifiant utilisateur sur une clé existante. Elle ne peut pas être utilisée pour révoquer le dernier identifiant utilisateur sur une clé (il doit rester un identifiant utilisateur non révoqué), la raison de la révocation étant « L’identifiant utilisateur n’est plus valide ». Si vous souhaitez spécifier une raison de révocation différente ou fournir un texte de révocation supplémentaire, vous devez utiliser la sous-commande interactive revuid de --edit-key.

--quick-revoke-sig fpr signing-fpr [names]

Cette commande révoque les signatures de clé effectuées par signing-fpr sur la clé spécifiée par l’empreinte digitale fpr. Si des noms sont fournis, seules les signatures sur les identifiants utilisateur de la clé correspondant à l’un des noms donnés sont affectées (voir --quick-sign-key). Si une révocation existe déjà, un message est affiché au lieu de créer une nouvelle révocation ; aucune erreur n’est renvoyée dans ce cas. Notez que les révocations de signature de clé peuvent être remplacées par une signature de clé plus récente et, à leur tour, révoquées à nouveau.

--quick-set-primary-uid user-id primary-user-id

Cette commande définit ou met à jour le drapeau d’identifiant utilisateur principal sur une clé existante. user-id spécifie la clé et primary-user-id l’identifiant utilisateur qui doit être marqué comme identifiant utilisateur principal. Le drapeau d’identifiant utilisateur principal est supprimé de tous les autres identifiants utilisateur et l’horodatage de toutes les signatures personnelles affectées est avancé d’une seconde.

--quick-update-pref user-id

Cette commande met à jour la liste de préférences de la clé à la valeur par défaut actuelle (soit intégrée, soit définie via --default-preference-list). Il s’agit de la version automatisée de l’utilisation de « setpref » dans le menu --key-edit sans fournir de liste. Notez que vous pouvez afficher les préférences d’une clé en utilisant --list-options show-pref ou --list-options show-pref-verbose. Vous devez également redistribuer les clés mises à jour à vos pairs.

--quick-set-ownertrust user-id value

Cette commande définit la valeur ownertrust d’une clé et peut également être utilisée pour définir le drapeau de désactivation d’une clé. Il s’agit de la version automatisée de l’utilisation de « trust », « disable » ou « enable » dans le menu --key-edit.

--change-passphrase user-id
--passwd user-id

Modifie la phrase de passe de la clé secrète appartenant au certificat spécifié en tant que user-id. Il s’agit d’un raccourci pour la sous-commande passwd du menu --edit-key. Lorsqu’elle est utilisée avec l’option --dry-run, elle ne modifiera pas réellement la phrase de passe, mais vérifiera que la phrase de passe actuelle est correcte.

OPTIONS

gpg propose un grand nombre d’options pour contrôler le comportement exact et modifier la configuration par défaut.

Les options longues peuvent être placées dans un fichier d'options (par défaut « ~/.gnupg/gpg.conf »). Les noms d'options courts ne fonctionneront pas ; par exemple, « armor » est une option valide pour le fichier d'options, tandis que « a » ne l'est pas. N'écrivez pas les deux tirets, mais simplement le nom de l'option et tous les arguments requis. Les lignes commençant par un signe dièse (« # ») sont ignorées. Les commandes peuvent également être placées dans ce fichier, mais ce n'est généralement pas utile car la commande sera exécutée automatiquement à chaque exécution de gpg.

N'oubliez pas que l'analyse des options s'arrête dès qu'une option non valide est rencontrée. Vous pouvez arrêter explicitement l'analyse en utilisant l'option spéciale --.

Comment modifier la configuration

Ces options sont utilisées pour modifier la configuration et la plupart d'entre elles se trouvent généralement dans le fichier d'options.

--default-key name
Utilise « name » comme clé par défaut pour la signature. Il est conseillé d'utiliser une empreinte ou au moins un ID de clé long pour « name ». Si cette option n'est pas utilisée, la clé par défaut est la première clé trouvée dans le trousseau de clés secrètes. Notez que -u ou --local-user remplace cette option. Cette option peut être utilisée plusieurs fois. Dans ce cas, la dernière clé pour laquelle une clé secrète est disponible est utilisée. S'il n'y a pas de clé secrète disponible pour l'une des valeurs spécifiées, GnuPG n'émettra pas de message d'erreur, mais continuera comme si cette option n'avait pas été donnée.

--default-recipient name
Utilise « name » comme destinataire par défaut si l'option --recipient n'est pas utilisée et ne demande pas si c'est un destinataire valide. « name » doit être non vide, et il est conseillé d'utiliser une empreinte pour « name ».

--default-recipient-self
Utilise la clé par défaut comme destinataire par défaut si l'option --recipient n'est pas utilisée et ne demande pas si c'est un destinataire valide. La clé par défaut est la première clé du trousseau de clés secrètes ou celle définie avec --default-key.

--no-default-recipient
Réinitialise --default-recipient et --default-recipient-self. Ne doit pas être utilisé dans un fichier d'options.

-v, --verbose
Fournit plus d'informations pendant le traitement. Si utilisé deux fois, les données d'entrée sont affichées en détail.

--no-verbose
Réinitialise le niveau de verbosité à 0. Ne doit pas être utilisé dans un fichier d'options.

-q, --quiet
Essaie d'être aussi silencieux que possible. Ne doit pas être utilisé dans un fichier d'options.

--batch
--no-batch
Utilise le mode batch. Ne pose jamais de questions, n'autorise pas les commandes interactives. --no-batch désactive cette option. Notez que même avec un nom de fichier donné en ligne de commande, gpg peut toujours avoir besoin de lire à partir de STDIN (en particulier si gpg détermine que l'entrée est une signature séparée et qu'aucun fichier de données n'a été spécifié). Ainsi, si vous ne souhaitez pas fournir de données via STDIN, vous devez connecter STDIN à « /dev/null ».

Il est fortement recommandé d'utiliser cette option avec les options --status-fd et --with-colons pour toute utilisation non interactive de gpg. Ne doit pas être utilisé dans un fichier d'options.

--no-tty
S'assure que le TTY (terminal) n'est jamais utilisé pour aucune sortie. Cette option est nécessaire dans certains cas, car GnuPG affiche parfois des avertissements sur le TTY, même si --batch est utilisé.

--yes  Répondre "oui" à la plupart des questions. Ne doit pas être utilisé dans un fichier d'options.

--no   Répondre "non" à la plupart des questions. Ne doit pas être utilisé dans un fichier d'options.

--proc-all-sigs
Cette option annule le comportement de l'option --batch pour arrêter la vérification des signatures
à la première signature non valide.

--list-filter {select=expr}
Un filtre de liste peut être utilisé pour afficher uniquement certaines clés lors des commandes de liste de clés. Pour
les noms de propriétés disponibles, voir la description de --import-filter.

--list-options parameters

Il s'agit d'une chaîne délimitée par des espaces ou des virgules qui donne les options utilisées lors de la liste des clés et des signatures (c'est-à-dire, --list-keys, --check-signatures, --list-public-keys, --list-secret-keys et les fonctions --edit-key). Les options peuvent être précédées de "no-" (après les deux tirets) pour donner le sens opposé. Les options sont les suivantes :

show-photos
Affiche les ID de photo attachés à la clé dans les commandes --list-keys, --check-signatures, --list-public-keys et --list-secret-keys. Par défaut : non. Voir également
--photo-viewer. Ne fonctionne pas avec --with-colons : voir --attribute-fd pour la manière appropriée d'obtenir les données photo pour les scripts et autres interfaces.

show-usage
Affiche les informations d'utilisation pour les clés et les sous-clés dans la liste standard des clés. Il s'agit d'une
liste de lettres indiquant l'utilisation autorisée pour une clé (E = chiffrement, S = signature,
C = certification, A = authentification). Par défaut : oui.

show-ownertrust
Affiche la valeur ownertrust pour les clés également dans la liste standard des clés. Par défaut :
non.

show-policy-urls
Affiche les URL de politique dans les listes --check-signatures. Par défaut : non.

show-notations
show-std-notations
show-user-notations
Affiche toutes les notations de signature, les notations standard IETF ou les notations définies par l'utilisateur dans les listes --check-signatures. Par défaut : non.

show-keyserver-urls
Affiche toute URL de serveur de clés préférée dans les listes --check-signatures. Par défaut :
non.

show-uid-validity
Affiche la validité calculée des ID d'utilisateur lors de la liste des clés. Par défaut : oui.

show-unusable-uids
Affiche les ID d'utilisateur révoqués et expirés dans la liste des clés. Par défaut : non.

show-unusable-subkeys
Affiche les sous-clés révoquées et expirées dans la liste des clés. Par défaut : non.

show-unusable-sigs
Affiche les signatures de clés créées à l'aide d'algorithmes faibles ou non pris en charge.

show-keyring
Affiche le nom du trousseau de clés en haut de la liste des clés pour indiquer à quel trousseau de clés une clé donnée appartient. Par défaut : non.

show-sig-expire
Affiche les dates d'expiration des signatures (le cas échéant) lors des listes --check-signatures. Par défaut : non.

show-sig-subpackets
Inclut les sous-paquets de signature dans la liste des clés. Cette option peut prendre un
argument facultatif, une liste des sous-paquets à afficher. Si aucun argument n'est passé, tous les sous-paquets sont affichés. Par défaut : non. Cette option n'a de sens que lorsque vous utilisez --with-colons
en conjonction avec --check-signatures.

show-only-fpr-mbox
Pour chaque ID d'utilisateur qui a une adresse électronique valide, affiche uniquement l'empreinte suivie
de l'adresse électronique.

sort-sigs

Avec les options --list-sigs et --check-sigs, triez les signatures par keyID et par date de création afin de faciliter la visualisation de l’historique de ces signatures. La signature auto-signée est également affichée avant les autres signatures. La valeur par défaut est oui. Cette option n’a aucun effet en mode -with-colons.

--verify-options parameters

Il s’agit d’une chaîne délimitée par des espaces ou des virgules qui fournit les options utilisées lors de la vérification des signatures. Les options peuvent être précédées de no- pour donner le sens opposé. Les options sont les suivantes :

show-photos

Affiche les ID de photos présents sur la clé qui a émis la signature. La valeur par défaut est non. Voir également --photo-viewer.

show-policy-urls

Affiche les URL de politique dans la signature en cours de vérification. La valeur par défaut est oui.

show-notations
show-std-notations
show-user-notations

Affiche toutes les notations de signature, les notations standard IETF ou les notations définies par l’utilisateur dans la signature en cours de vérification. La valeur par défaut est la notation standard IETF.

show-keyserver-urls

Affiche toute URL de serveur de clés préférée dans la signature en cours de vérification. La valeur par défaut est oui.

show-uid-validity

Affiche la validité calculée des ID d’utilisateur de la clé qui a émis la signature. La valeur par défaut est oui.

show-unusable-uids

Affiche les ID d’utilisateur révoqués et expirés lors de la vérification des signatures. La valeur par défaut est non.

show-primary-uid-only

Affiche uniquement l’ID d’utilisateur principal lors de la vérification des signatures. Cela signifie que toutes les lignes AKA ainsi que les ID de photos ne sont pas affichés avec l’état de vérification de la signature.

--enable-large-rsa
--disable-large-rsa

Permet la création de clés secrètes RSA jusqu’à 8192 bits. Remarque : 8192 bits est plus que ce qui est généralement recommandé. Ces clés volumineuses n’améliorent pas significativement la sécurité, mais elles sont plus coûteuses à utiliser et leurs signatures et certifications sont plus volumineuses. Cette option n’est disponible que si le binaire a été compilé avec la prise en charge de large-secmem.

--enable-dsa2
--disable-dsa2

Permet le hachage de troncature pour toutes les clés DSA, même pour les anciennes clés DSA jusqu’à 1024 bits. Ceci est également la valeur par défaut avec --openpgp. Notez que les versions antérieures de GnuPG nécessitaient également cet indicateur pour autoriser la génération de DSA supérieure à 1024 bits.

--photo-viewer string

Il s’agit de la ligne de commande qui doit être exécutée pour afficher un ID de photo. %i sera remplacé par un nom de fichier contenant la photo. %I fait de même, sauf que le fichier ne sera pas supprimé une fois que le visualiseur se fermera. Les autres indicateurs sont %k pour l’ID de clé, %K pour l’ID de clé long, %f pour l’empreinte de clé, %t pour l’extension du type d’image (par exemple, « jpg »), %T pour le type MIME de l’image (par exemple, « image/jpeg »), %v pour la validité à un seul caractère calculée de l’image en cours d’affichage (par exemple, « f »), %V pour la validité calculée sous forme de chaîne (par exemple, « full »), %U pour un hachage base32 de l’ID d’utilisateur et %% pour un signe de pourcentage réel. Si ni %i ni %I ne sont présents, la photo sera fournie au visualiseur sur l’entrée standard.

Sur Unix, le visualiseur par défaut est xloadimage -fork -quiet -title ‘KeyID 0x%k’ STDIN avec une solution de repli vers display -title ‘KeyID 0x%k’ %i et enfin vers xdg-open %i. Sur Windows, !ShellExecute 400 %i est utilisé ; ici, la commande est une méta-commande pour utiliser cet appel d’API suivi d’un temps d’attente en millisecondes qui est utilisé pour donner au visualiseur le temps de lire le fichier image temporaire avant que gpg ne le supprime à nouveau. Notez que si votre programme de visualisation d’images n’est pas sécurisé, son exécution à partir de gpg ne le rend pas sécurisé.


--exec-path string
Définit une liste de répertoires dans lesquels rechercher les visionneuses de photos. Si cette option n'est pas fournie, les visionneuses de photos utiliseront la variable d'environnement PATH.

--keyring file
Ajoute le fichier à la liste actuelle des anneaux de clés. Si le fichier commence par un tilde et une barre oblique, ceux-ci sont remplacés par le répertoire $HOME. Si le nom de fichier ne contient pas de barre oblique, on suppose qu'il se trouve dans le répertoire personnel de GnuPG (« ~/.gnupg », sauf si --homedir ou $GNUPGHOME est utilisé).

Notez que cela ajoute un anneau de clés à la liste actuelle. Si l'intention est d'utiliser l'anneau de clés spécifié seul, utilisez --keyring ainsi que --no-default-keyring.

Si l'option --no-keyring a été utilisée, aucun anneau de clés ne sera utilisé.

Notez que si l'option use-keyboxd est activée dans « common.conf », aucun anneau de clés n'est utilisé et toutes les clés sont gérées par le processus keyboxd dans sa propre base de données.

--primary-keyring file
Il s'agit d'une variante de --keyring et désigne le fichier comme l'anneau de clés publiques principal. Cela signifie que les nouvelles clés importées (via --import ou keyserver --recv-from) seront placées dans cet anneau de clés.

--secret-keyring file
Cette option est obsolète et ignorée. Toutes les clés privées sont stockées dans le répertoire « private-keys-v1.d » situé dans le répertoire personnel de GnuPG.

--trustdb-name file
Utilise le fichier au lieu de la base de données de confiance par défaut. Si le fichier commence par un tilde et une barre oblique, ceux-ci sont remplacés par le répertoire $HOME. Si le nom de fichier ne contient pas de barre oblique, on suppose qu'il se trouve dans le répertoire personnel de GnuPG (« ~/.gnupg » si --homedir ou $GNUPGHOME n'est pas utilisé).

--homedir dir
Définit le nom du répertoire personnel sur dir. Si cette option n'est pas utilisée, le répertoire personnel par défaut est « ~/.gnupg ». Elle n'est reconnue que lorsqu'elle est donnée sur la ligne de commande. Elle remplace également tout répertoire personnel spécifié via la variable d'environnement « GNUPGHOME » ou (sous Windows) par le biais de l'entrée de registre HKCU\Software\GNU\GnuPG:HomeDir.

Sur les systèmes Windows, il est possible d'installer GnuPG en tant qu'application portable. Dans ce cas, seule cette option de ligne de commande est prise en compte, toutes les autres méthodes de définition d'un répertoire personnel sont ignorées.

--display-charset name
Définit le nom du jeu de caractères natif. Ceci est utilisé pour convertir certaines chaînes d'informations, telles que les ID utilisateur, dans le codage UTF-8 approprié. Notez que cela n'a rien à voir avec le jeu de caractères des données à chiffrer ou à signer ; GnuPG ne re-code pas les données fournies par l'utilisateur. Si cette option n'est pas utilisée, le jeu de caractères par défaut est déterminé à partir des paramètres régionaux actuels. Un niveau de verbosité de 3 affiche l'ensemble choisi. Cette option ne doit pas être utilisée sur Windows. Les valeurs valides pour name sont :

iso-8859-1

L’ensemble Latin 1.

iso-8859-2

L’ensemble Latin 2.

iso-8859-15

C’est actuellement un alias pour l’ensemble Latin 1.

koi8-r L’ensemble russe habituel (RFC-1489).

utf-8 Contourner toutes les traductions et supposer que le système d’exploitation utilise l’encodage UTF-8 natif.

--utf8-strings
--no-utf8-strings

Supposer que les arguments de ligne de commande sont fournis sous forme de chaînes UTF-8. Par défaut (--no-utf8-strings), on suppose que les arguments sont encodés dans l’ensemble de caractères spécifié par --display-charset. Ces options affectent tous les arguments suivants. Les deux options peuvent être utilisées plusieurs fois. Cette option ne doit pas être utilisée dans un fichier d’options.

Cette option n’a aucun effet sur Windows. Là, l’encodage UTF-8 interne est traduit pour les entrées et sorties de la console. Les arguments de ligne de commande sont attendus au format Unicode et traduits en UTF-8. Ainsi, lorsque vous appelez ce programme à partir d’un autre, assurez-vous d’utiliser la version Unicode de CreateProcess.

--options fichier

Lire les options à partir du fichier et ne pas essayer de les lire à partir du fichier d’options par défaut dans le répertoire personnel (voir --homedir). Cette option est ignorée si elle est utilisée dans un fichier d’options.

--no-options

Raccourci pour --options /dev/null. Cette option est détectée avant qu’une tentative d’ouverture d’un fichier d’options ne soit effectuée. L’utilisation de cette option empêchera également la création d’un répertoire « ~/.gnupg ».

-z n
--compress-level n
--bzip2-compress-level n
--no-compress

Définir le niveau de compression à n pour les algorithmes de compression ZIP et ZLIB. Par défaut, utiliser le niveau de compression par défaut de zlib (normalement 6). --bzip2-compress-level définit le niveau de compression pour l’algorithme de compression BZIP2 (par défaut, également 6). Il s’agit d’une option différente de --compress-level, car BZIP2 utilise une quantité importante de mémoire pour chaque niveau de compression supplémentaire.

L’option -z définit les deux. Une valeur de 0 pour n désactive la compression. Une valeur de -1 force la compression en utilisant le niveau par défaut. L’option --no-compress est identique à -z0.

Sauf pour la commande --store, la compression est toujours utilisée, sauf si GnuPG détecte que l’entrée est déjà compressée. Pour inhiber l’utilisation de la compression, utilisez -z0 ou --no-compress ; pour
forcer la compression, utilisez -z-1 ou l’option z avec un autre niveau de compression que la valeur par défaut, comme indiqué par -1. Notez que ce remplacement de la détection par défaut ne fonctionne qu’avec z et
pas avec la version longue de cette option.

--bzip2-decompress-lowmem

Utiliser une méthode de décompression différente pour les fichiers compressés BZIP2. Cette méthode alternative utilise un peu plus de la moitié de la mémoire, mais s’exécute également à moitié de la vitesse. Cela est utile dans des situations de mémoire extrêmement limitée lorsque le fichier a été compressé à un niveau élevé avec --bzip2-compress-level.

--mangle-dos-filenames
--no-mangle-dos-filenames

Les anciennes versions de Windows ne peuvent pas gérer les noms de fichiers contenant plus d’un point. L’option --mangle-dos-filenames fait que GnuPG remplace (au lieu d’ajouter à) l’extension d’un nom de fichier de sortie pour éviter ce problème. Cette option est désactivée par défaut et n’a aucun effet sur les plateformes autres que Windows.


--ask-cert-level
--no-ask-cert-level

Lorsque vous créez une signature de clé, demandez le niveau de certification. Si cette option n’est pas spécifiée, le niveau de certification utilisé est défini via --default-cert-level. Voir --default-cert-level pour plus d’informations sur les niveaux spécifiques et leur utilisation. --no-ask-cert-level désactive cette option. Cette option est désactivée par défaut.

--default-cert-level n

La valeur par défaut à utiliser pour le niveau de vérification lors de la signature d’une clé.

0 signifie que vous ne faites aucune déclaration particulière quant à la rigueur avec laquelle vous avez vérifié la clé.

1 signifie que vous pensez que la clé appartient à la personne qui prétend en être le propriétaire, mais que vous n’avez pas pu, ou n’avez pas, vérifier la clé. Ceci est utile pour une vérification de « personne », où vous signez la clé d’un utilisateur pseudonyme.

2 signifie que vous avez effectué une vérification occasionnelle de la clé. Par exemple, cela pourrait signifier que vous avez vérifié l’empreinte de la clé et que vous avez vérifié l’identité de l’utilisateur sur la clé par rapport à une pièce d’identité.

3 signifie que vous avez effectué une vérification approfondie de la clé. Par exemple, cela pourrait signifier que vous avez vérifié l’empreinte de la clé avec le propriétaire de la clé en personne, et que vous avez vérifié, au moyen d’un document difficile à falsifier avec une pièce d’identité (tel qu’un passeport), que le nom du propriétaire de la clé correspond au nom de l’identité de l’utilisateur sur la clé, et enfin que vous avez vérifié (par échange de courriels) que l’adresse courriel sur la clé appartient au propriétaire de la clé.

Notez que les exemples donnés ci-dessus pour les niveaux 2 et 3 ne sont que cela : des exemples. En fin de compte, c’est à vous de décider ce que « occasionnel » et « approfondi » signifient pour vous.

Cette option a une valeur par défaut de 0 (aucune déclaration particulière).

--min-cert-level

Lors de la création de la base de données de confiance, traitez toutes les signatures dont le niveau de certification est inférieur à ce niveau comme étant non valides. La valeur par défaut est 2, ce qui ignore les signatures de niveau 1. Notez que les signatures de niveau 0 (« aucune déclaration particulière ») sont toujours acceptées.

--trusted-key long key ID ou fingerprint

Considérez que la clé spécifiée (qui doit être donnée sous forme d’empreinte) est aussi digne de confiance qu’une de vos propres clés privées. Cette option est utile si vous ne souhaitez pas conserver vos clés privées (ou l’une d’elles) en ligne, mais que vous souhaitez toujours pouvoir vérifier la validité de la clé d’un destinataire ou d’un signataire donné. Si la clé donnée n’est pas disponible localement, mais qu’un serveur de clés LDAP est configuré, la clé manquante est importée depuis ce serveur. La valeur « none » est explicitement autorisée pour distinguer l’utilisation d’une option --trusted-key de l’absence d’utilisation de cette option (par exemple, en raison de l’option --no-options).

--add-desig-revoker [sensitive:]fingerprint

Ajoutez la clé spécifiée par l’empreinte en tant que révocateur désigné aux nouvelles clés créées. Si l’empreinte est préfixée par le mot-clé « sensitive: », cette information n’est normalement pas exportée avec la clé. Cette option peut être donnée plusieurs fois pour ajouter plus d’un révocateur désigné. Si le mot-clé « clear » est utilisé au lieu d’une empreinte, toutes les empreintes précédemment données sont supprimées. Les révocateurs désignés sont marqués sur la clé comme étant non révocables. Notez qu’un révocateur désigné spécifié à l’aide d’un fichier de paramètres sera également ajouté à la clé.


--default-new-key-adsk fingerprint
Ajoute la sous-clé spécifiée par l’empreinte comme sous-clé de déchiffrement supplémentaire (ADSK) aux nouvelles clés créées. Cette option peut être donnée plusieurs fois pour ajouter plus d’une ADSK. Il est également possible de donner plusieurs empreintes, délimitées par un espace ou une virgule, comme valeur de cette option. Si le mot-clé « clear » est utilisé au lieu d’une empreinte, toutes les empreintes précédemment spécifiées sont supprimées (ce qui est utile pour remplacer les options données dans un fichier de configuration). L’empreinte doit spécifier une sous-clé et n’a pas besoin du point d’exclamation en suffixe ; elle doit être donnée au format compact (40 ou 64 caractères hexadécimaux sans aucun espace).

--trust-model {pgp|classic|tofu|tofu+pgp|direct|always|auto}
Définit le modèle de confiance que GnuPG doit suivre. Les modèles sont :

pgp   Il s’agit du Web of Trust combiné aux signatures de confiance, comme utilisé dans PGP 5.x et les versions ultérieures. C’est le modèle de confiance par défaut lors de la création d’une nouvelle base de données de confiance.

classic
Il s’agit du Web of Trust standard introduit par PGP 2.

tofu

TOFU signifie Trust On First Use (confiance lors de la première utilisation). Dans ce modèle de confiance expérimental, la première fois qu’une clé est vue, elle est mémorisée. Si, ultérieurement, une autre clé avec un ID utilisateur ayant la même adresse e-mail est vue, les deux clés sont marquées comme suspectes. Dans ce cas, la prochaine fois que l’une ou l’autre sera utilisée, un avertissement s’affiche décrivant le conflit, la raison pour laquelle il pourrait s’être produit (soit l’utilisateur a généré une nouvelle clé et n’a pas signé les clés ancienne et nouvelle, soit la clé est une contrefaçon, soit une attaque de type « man-in-the-middle » est en cours), et l’utilisateur est invité à confirmer manuellement la validité de la clé en question.

Étant donné qu’un attaquant potentiel peut contrôler l’adresse e-mail et donc contourner l’algorithme de détection de conflit en utilisant une adresse e-mail qui ressemble à une adresse e-mail de confiance, chaque fois qu’un message est vérifié, des statistiques sur le nombre de messages signés avec la clé sont affichées. De cette manière, un utilisateur peut facilement identifier les attaques utilisant des clés falsifiées pour les correspondants réguliers.

Par rapport au Web of Trust, TOFU offre des garanties de sécurité considérablement plus faibles. En particulier, TOFU n’aide qu’à assurer la cohérence (c’est-à-dire que la liaison entre une clé et une adresse e-mail ne change pas). Un avantage majeur de TOFU est qu’il nécessite peu d’entretien pour être utilisé correctement. Pour utiliser correctement le Web of Trust, vous devez activement signer des clés et désigner des utilisateurs comme présentateurs de confiance. Il s’agit d’un processus long et les preuves anecdotiques suggèrent que même les utilisateurs soucieux de la sécurité prennent rarement le temps de le faire de manière approfondie et s’appuient plutôt sur un processus TOFU ad hoc.

Dans le modèle TOFU, les politiques sont associées à des liaisons entre les clés et les adresses e-mail (qui sont extraites des ID d’utilisateur et normalisées). Il existe cinq politiques, qui peuvent être définies manuellement à l’aide de l’option --tofu-policy. La politique par défaut peut être définie à l’aide de l’option --tofu-default-policy.

Les politiques TOFU sont : auto, good, unknown, bad et ask. La politique auto est utilisée par défaut (sauf si elle est remplacée par --tofu-default-policy) et marque une liaison comme étant partiellement fiable. Les politiques good, unknown et bad marquent une liaison comme étant entièrement fiable, comme ayant une confiance inconnue ou comme n’ayant jamais de confiance, respectivement. La politique unknown est utile pour utiliser TOFU uniquement pour détecter les conflits, mais sans jamais attribuer de confiance positive à une liaison. La dernière politique, ask, invite l’utilisateur à indiquer le niveau de confiance de la liaison. Si le mode batch est activé (ou si la saisie n’est pas appropriée dans le contexte), l’utilisateur n’est pas invité et le niveau de confiance indéfini est renvoyé.

tofu+pgp

Ce modèle de confiance expérimental combine TOFU avec le Web of Trust. Cela se fait en calculant le niveau de confiance pour chaque modèle, puis en prenant le niveau de confiance maximal, les niveaux de confiance étant ordonnés comme suit : unknown < undefined < marginal < fully < ultimate < expired < never.

En définissant --tofu-default-policy=unknown, ce modèle peut être utilisé pour mettre en œuvre le Web of Trust avec l’algorithme de détection des conflits de TOFU, mais sans son attribution de valeurs de confiance positives, ce que certains utilisateurs soucieux de la sécurité n’aiment pas.

direct Le niveau de validité de la clé est défini directement par l’utilisateur et n’est pas calculé via le Web of Trust. Ce modèle est basé uniquement sur la clé et ne fait pas de distinction entre les ID d’utilisateur. Notez que, lors du passage à un autre modèle de confiance, les valeurs de confiance attribuées à une clé sont transformées en valeurs ownertrust, qui indiquent également le niveau de confiance que vous accordez au propriétaire de la clé pour la signature d’autres clés.

always Ignorez la validation de la clé et supposez que les clés utilisées sont toujours entièrement valides. Vous n’utiliserez généralement pas cette option, sauf si vous utilisez un schéma de validation externe. Cette option supprime également la balise "[incertain]" affichée lors des vérifications de signature lorsqu’il n’y a aucune preuve que l’ID d’utilisateur est lié à la clé. Notez que ce modèle de confiance n’autorise toujours pas l’utilisation de clés expirées, révoquées ou désactivées.

auto Sélectionnez le modèle de confiance en fonction de ce que dit la base de données de confiance interne. Il s’agit du modèle par défaut si une telle base de données existe déjà. Notez qu’un modèle de confiance TOFU n’est pas pris en compte ici et doit être activé explicitement.

--always-trust

Identique à --trust-model always.

--assert-signer fpr_or_file

Cette option vérifie qu’au moins une signature valide sur un fichier a été effectuée avec la clé spécifiée. La clé est soit spécifiée sous forme d’empreinte digitale, soit sous forme de fichier répertoriant les empreintes digitales. L’empreinte digitale doit être donnée ou répertoriée au format compact (sans deux-points ni espaces entre les deux). Cette option peut être donnée plusieurs fois et chaque empreinte digitale est vérifiée par rapport à la clé de signature ainsi qu’à la clé primaire correspondante. Si fpr_or_file spécifie un fichier, les lignes vides sont ignorées, ainsi que toutes les lignes commençant par un signe dièse. Avec cette option, gpg garantit de renvoyer un code de sortie de 0 uniquement si une signature a été trouvée, qu’elle est valide et que la clé correspond à l’une des empreintes digitales fournies par cette option.


--assert-pubkey-algo algolist
Lors de la vérification de la signature des données, cette option vérifie si l’algorithme de clé publique utilisé correspond aux algorithmes spécifiés par `algolist`. Cette option peut être donnée plusieurs fois afin de concaténer davantage d’algorithmes à la liste ; les délimiteurs de la liste sont soit des virgules, soit des espaces.

Les noms d’algorithmes donnés dans la liste peuvent être soit des noms littéraux comme « ed25519 » avec un signe égal facultatif en tête, soit précédés de « > », « >= », « <= » ou « < ». Cet opérateur de préfixe est appliqué à la partie numérique du nom de l’algorithme ; par exemple, 2048 dans « rsa2048 » ou 384 dans « brainpoolP384r1 ». Si les caractères non numériques en tête du nom correspondent, l’opérateur de préfixe est utilisé pour comparer la partie numérique, et un suffixe final est ignoré dans ce cas. Par exemple, une liste d’algorithmes « >rsa3000, >=brainpool384r1, =ed25519 » autorise les signatures RSA avec plus de 3 000 bits, les courbes Brainpool 384 et 512, et l’algorithme ed25519.

Avec cette option, gpg (et également gpgv) garantit de renvoyer un code de sortie de 0 uniquement si toutes les signatures valides sur les données sont réalisées à l’aide d’un algorithme correspondant de la liste donnée.

--auto-key-locate mechanisms
--no-auto-key-locate
GnuPG peut automatiquement localiser et récupérer les clés si nécessaire à l’aide de cette option. Cela se produit lors du chiffrement vers une adresse e-mail (sous la forme « _ »), et qu’il n’y a pas de clés « _ » sur le trousseau de clés local. Cette option prend n’importe quel nombre des mécanismes répertoriés ci-dessous, dans l’ordre dans lequel ils doivent être essayés. Au lieu de lister les mécanismes sous forme d’arguments délimités par des virgules, l’option peut également être donnée plusieurs fois pour ajouter d’autres mécanismes. L’option --no-auto-key-locate ou le mécanisme « clear » réinitialise la liste. La valeur par défaut est « local,wkd ».

cert  Localiser une clé à l’aide de DNS CERT, tel que spécifié dans RFC-4398.

dane  Localiser une clé à l’aide de DANE, tel que spécifié dans draft-ietf-dane-openpgpkey-05.txt.

wkd  Localiser une clé à l’aide du protocole Web Key Directory.

ldap  Localiser la clé à l’aide des serveurs LDAP configurés. Cette méthode est similaire au mécanisme keyserver, mais utilise toujours uniquement les serveurs LDAP.

ntds  Localiser la clé à l’aide d’Active Directory (uniquement sous Windows). Cette méthode permet également de rechercher par empreinte à l’aide de la commande --locate-external-key. Notez que ce mécanisme est en fait un raccourci pour le mécanisme « ldap » qui utilise uniquement « ldap:// » comme serveur de clés.

keyserver

Localiser une clé en utilisant un serveur de clés. Cette méthode permet également de rechercher par empreinte à l’aide de la commande --locate-external-key si l’un des serveurs de clés configurés est un serveur LDAP.

keyserver-URL

De plus, une URL de serveur de clés, telle qu’utilisée dans la configuration de dirmngr, peut être utilisée ici pour interroger ce serveur de clés particulier. Cette méthode permet également de rechercher par empreinte à l’aide de la commande --locate-external-key si l’URL spécifie un serveur LDAP.

local

Localiser la clé en utilisant les anneaux de clés locaux. Ce mécanisme permet à l’utilisateur de sélectionner l’ordre dans lequel une recherche de clé locale est effectuée. Ainsi, l’utilisation de « --auto-key-locate local » est identique à « --no-auto-key-locate ».

nodefault

Ce drapeau désactive la recherche de clé locale standard, effectuée avant toute tentative des mécanismes définis par l’option --auto-key-locate. La position de ce mécanisme dans la liste n’a pas d’importance. Il n’est pas obligatoire si « local » est également utilisé.

clear

Efface tous les mécanismes définis. Ceci est utile pour remplacer les mécanismes donnés dans un fichier de configuration. Notez qu’un « nodefault » dans les mécanismes sera également effacé, sauf s’il est donné après le « clear ».

--auto-key-import
--no-auto-key-import

Il s’agit d’un mécanisme hors ligne pour obtenir une clé manquante pour la vérification de la signature et pour le chiffrement ultérieur avec cette clé. Si cette option est activée et qu’une signature inclut une clé intégrée, cette clé est utilisée pour vérifier la signature et, en cas de succès de la vérification, la clé est importée. La valeur par défaut est --no-auto-key-import.

Sur le site de l’expéditeur (signature), l’option --include-key-block doit être utilisée pour placer la partie publique de la clé de signature sous forme de « bloc de clé de sous-paquet » dans la signature.

--auto-key-retrieve
--no-auto-key-retrieve

Ces options permettent ou désactivent la récupération automatique des clés à partir d’un serveur de clés lors de la vérification des signatures effectuées par des clés qui ne se trouvent pas dans l’anneau de clés local. La valeur par défaut est --no-auto-key-retrieve.

L’ordre des méthodes utilisées pour rechercher la clé est le suivant :

Si l’option --auto-key-import est définie et que la signature inclut une clé intégrée,

cette clé est utilisée pour vérifier la signature et, en cas de succès de la vérification, cette clé est importée.

    Si un serveur de clés préféré est spécifié dans la signature et que l’option honor-keyserver-url est active (ce qui n’est pas le cas par défaut), ce serveur de clés est essayé. Notez que le créateur de la signature utilise l’option --sig-keyserver-url pour spécifier le serveur de clés préféré pour les signatures de données.

    Si la signature a l’UID du signataire défini (par exemple, en utilisant l’option --sender lors de la création de la signature), une recherche dans un répertoire de clés Web (WKD) est effectuée. Il s’agit de la configuration par défaut, mais elle peut être désactivée en supprimant WKD de la liste auto-key-locate ou en utilisant l’option --disable-signer-uid.

Si un serveur de clés est configuré et que l’empreinte de l’émetteur fait partie de la signature

(depuis GnuPG 2.1.16), les serveurs de clés configurés sont essayés.

Notez que cette option rend possible un comportement de type « bug Web ». Les opérateurs de serveurs de clés ou de répertoires de clés Web peuvent voir les clés que vous demandez. En vous envoyant un message signé par une clé entièrement nouvelle (que vous n’aurez naturellement pas dans votre anneau de clés local), l’opérateur peut connaître à la fois votre adresse IP et l’heure à laquelle vous avez vérifié la signature.


--keyid-format {none|short|0xshort|long|0xlong}
Sélectionne la façon d’afficher les ID de clé. « none » n’affiche pas l’ID de clé, mais affiche l’empreinte digitale sur une ligne distincte. « short » est l’ID de clé traditionnel de 8 caractères. « long » est l’ID de clé plus précis (mais moins pratique) de 16 caractères. Ajoutez « 0x » à l’un ou l’autre pour inclure « 0x » au début de l’ID de clé, comme dans 0x99242560. Notez que cette option est ignorée si l’option --with-colons est utilisée.

--keyserver name

Cette option est obsolète ; veuillez utiliser l’option --keyserver dans « dirmngr.conf » à la place.

Utilise name comme votre serveur de clés. Il s’agit du serveur avec lequel --receive-keys, --send-keys et --search-keys communiqueront pour recevoir des clés, envoyer des clés et rechercher des clés. Le format du nom est une URI : scheme:[//]keyservername[:port]. Le schéma est le type de serveur de clés : « hkp »/« hkps » pour les serveurs de clés HTTP (ou compatibles), ou « ldap »/« ldaps » pour les serveurs de clés LDAP. Notez que votre installation particulière de GnuPG peut avoir d’autres types de serveurs de clés disponibles. Les schémas de serveur de clés ne distinguent pas les majuscules des minuscules.

La plupart des serveurs de clés se synchronisent entre eux, il n’est donc généralement pas nécessaire d’envoyer des clés à plus d’un serveur. Le serveur de clés hkp://keys.gnupg.net utilise un DNS round robin pour fournir un serveur de clés différent à chaque fois que vous l’utilisez.

--keyserver-options {name=value}

Il s’agit d’une chaîne délimitée par des espaces ou des virgules qui fournit des options pour le serveur de clés. Les options peuvent être précédées de « no- » pour donner le sens inverse. Des import-options ou export-options valides peuvent également être utilisées ici pour les appliquer à l’importation (--recv-key) ou à l’exportation (--send-key) d’une clé depuis un serveur de clés. Bien que toutes les options ne soient pas disponibles pour tous les types de serveurs de clés, certaines options courantes sont les suivantes :

include-revoked

Lorsque vous recherchez une clé avec --search-keys, incluez les clés qui sont marquées comme révoquées sur le serveur de clés. Notez que tous les serveurs de clés ne distinguent pas les clés révoquées et non révoquées, et que pour ces serveurs de clés, cette option n’a aucun sens. Notez également que la plupart des serveurs de clés ne disposent pas d’une vérification cryptographique des révocations de clés, de sorte que la désactivation de cette option peut entraîner l’omission de clés qui sont incorrectement marquées comme révoquées.

include-disabled

Lorsque vous recherchez une clé avec --search-keys, incluez les clés qui sont marquées comme désactivées sur le serveur de clés. Notez que cette option n’est pas utilisée avec les serveurs de clés HKP.

auto-key-retrieve

Il s’agit d’un alias obsolète pour l’option auto-key-retrieve. Veuillez ne pas l’utiliser ; elle sera supprimée dans les versions futures.

honor-keyserver-url

Lorsque vous utilisez --refresh-keys, si la clé en question possède une URL de serveur de clés préférée, utilisez alors ce serveur de clés préféré pour actualiser la clé. De plus, si auto-key-retrieve est défini et que la signature en cours de vérification possède une URL de serveur de clés préférée, utilisez alors ce serveur de clés préféré pour récupérer la clé. Notez que cette option introduit un « bug Web » : le créateur de la clé peut voir quand la clé est actualisée. Ainsi, cette option n’est pas activée par défaut.


include-subkeys

Lors de la réception d'une clé, inclure les sous-clés comme cibles potentielles. Notez que cette option n'est pas utilisée avec les serveurs de clés HKP, car ils ne prennent pas en charge la récupération des clés par ID de sous-clé.

only-pubkeys

Ne pas autoriser l'importation de clés privées.

timeout
http-proxy=valeur
verbose
debug
check-cert

ca-cert-file

Ces options n'ont plus de fonction depuis GnuPG 2.1. Utilisez plutôt les options de configuration de dirmngr.

La liste par défaut des options est : « self-sigs-only, repair-keys, repair-pks-subkey-bug, export-attributes ». Cependant, si la source utilisée est un serveur LDAP, « no-self-sigs-only » est supposé, sauf si « self-sigs-only » a été explicitement configuré.

--completes-needed n

Nombre d'utilisateurs totalement de confiance nécessaires pour introduire un nouveau signataire de clé (la valeur par défaut est 1).

--marginals-needed n

Nombre d'utilisateurs marginalement de confiance nécessaires pour introduire un nouveau signataire de clé (la valeur par défaut est 3).

--tofu-default-policy {auto|good|unknown|bad|ask}

La politique TOFU par défaut (la valeur par défaut est auto). Pour plus d'informations sur la signification de cette option, consultez : [trust-model-tofu].

--max-cert-depth n

Profondeur maximale d'une chaîne de certification (la valeur par défaut est 5).

--no-sig-cache

Ne pas mettre en cache l'état de vérification des signatures de clé. La mise en cache offre de bien meilleures performances dans les listes de clés. Cependant, si vous pensez que votre trousseau de clés publiques n'est pas protégé contre les modifications, vous pouvez utiliser cette option pour désactiver la mise en cache. Cela n'a probablement pas beaucoup de sens de la désactiver, car tout type de dommage peut être causé si quelqu'un d'autre a un accès en écriture à votre trousseau de clés publiques.

--auto-check-trustdb
--no-auto-check-trustdb

Si GnuPG estime que ses informations sur le Web de confiance doivent être mises à jour, il exécute automatiquement la commande --check-trustdb en interne. Cela peut être un processus long. --no-auto-check-trustdb désactive cette option.

--use-agent
--no-use-agent

Il s'agit d'une option factice. gpg nécessite toujours l'agent.

--gpg-agent-info

Il s'agit d'une option factice. Elle n'a aucun effet lorsqu'elle est utilisée avec gpg.

--agent-program file

Spécifiez un programme d'agent à utiliser pour les opérations sur les clés privées. La valeur par défaut est déterminée en exécutant gpgconf avec l'option --list-dirs. Notez que le symbole de pipe (|) est utilisé pour un hack de suite de tests de régression et ne peut donc pas être utilisé dans le nom du fichier.

--dirmngr-program file

Spécifiez un programme dirmngr à utiliser pour l'accès au serveur de clés. La valeur par défaut est « /usr/bin/dirmngr ».

--disable-dirmngr

Désactive complètement l'utilisation de Dirmngr.

--no-autostart

Ne démarrez pas le gpg-agent ou le dirmngr s'ils n'ont pas encore été démarrés et que leur service est requis. Cette option est principalement utile sur les machines où la connexion à gpg-agent a été redirigée vers une autre machine. Si dirmngr est requis sur la machine distante, il peut être démarré manuellement en utilisant gpgconf --launch dirmngr.


--lock-once
Verrouille les bases de données la première fois qu'une demande de verrouillage est effectuée et ne relâche pas le verrouillage tant que le processus n'est pas terminé.

--lock-multiple
Relâche les verrouillages chaque fois qu'un verrouillage n'est plus nécessaire. Utilisez cette option pour remplacer un paramètre --lock-once défini dans un fichier de configuration.

--lock-never
Désactive complètement le verrouillage. Cette option ne doit être utilisée que dans des environnements très spécifiques, où il peut être garanti qu'un seul processus accède à ces fichiers. Une disquette amorçable avec un système de chiffrement autonome utilisera probablement cette option. Une utilisation incorrecte de cette option peut entraîner une corruption des données et des clés.

--exit-on-status-write-error
Cette option fera en sorte que les erreurs d'écriture sur le descripteur de fichier d'état entraînent l'arrêt immédiat du processus. Cela devrait en fait être le comportement par défaut, mais cela n'a jamais fonctionné ainsi, et nous avons donc besoin d'une option pour l'activer, afin de ne pas perturber les applications qui ferment trop tôt l'extrémité d'un descripteur de fichier d'état connecté à un pipe. L'utilisation de cette option avec --enable-progress-filter peut être utilisée pour annuler proprement les opérations GPG longues.

--limit-card-insert-tries n
Si n est supérieur à 0, le nombre d'invites demandant l'insertion d'une carte à puce est limité à N-1. Ainsi, avec une valeur de 1, GPG ne demandera pas du tout l'insertion d'une carte si aucune n'a été insérée au démarrage. Cette option est utile dans le fichier de configuration dans le cas où une application ne prend pas en charge les cartes à puce et attend indéfiniment l'insertion d'une carte.

--no-random-seed-file
GnuPG utilise un fichier pour stocker son pool aléatoire interne entre les invocations. Cela rend la génération aléatoire plus rapide ; cependant, parfois, les opérations d'écriture ne sont pas souhaitées. Cette option peut être utilisée pour y parvenir, au prix d'une génération aléatoire plus lente.

--no-greeting
Supprime le message de copyright initial.

--no-secmem-warning
Supprime l'avertissement concernant l'« utilisation d'une mémoire non sécurisée ».

--no-permission-warning
Supprime l'avertissement concernant les autorisations de fichier et de répertoire personnel (--homedir) non sécurisées. Notez que les vérifications d'autorisation que GnuPG effectue ne sont pas destinées à être définitives, mais elles se contentent d'alerter sur certains problèmes d'autorisation courants. Ne supposez pas que l'absence d'avertissement signifie que votre système est sécurisé.

Notez que l'avertissement concernant les autorisations --homedir non sécurisées ne peut pas être supprimé dans le fichier gpg.conf, car cela permettrait à un attaquant de placer un fichier gpg.conf non sécurisé et d'utiliser ce fichier pour supprimer les avertissements le concernant. L'avertissement concernant les autorisations --homedir peut uniquement être supprimé à partir de la ligne de commande.

--require-secmem
--no-require-secmem
Refuse de s'exécuter si GnuPG ne peut pas obtenir de mémoire sécurisée. Par défaut, l'option est désactivée (c'est-à-dire que l'exécution est autorisée, mais un avertissement est affiché).

--require-cross-certification
--no-require-cross-certification
Lors de la vérification d'une signature créée à partir d'une sous-clé, assurez-vous que la « signature de validation croisée » sur la sous-clé est présente et valide. Cela protège contre une attaque subtile contre les sous-clés qui peuvent signer. Par défaut, l'option est --require-cross-certification pour gpg.

--expert
--no-expert

Permet à l'utilisateur d'effectuer certaines actions absurdes ou « amusantes », comme signer une clé expirée ou révoquée, ou certaines actions potentiellement incompatibles, comme générer des types de clés inhabituels. Cela désactive également certains messages d'avertissement concernant les actions potentiellement incompatibles. Comme le nom l'indique, cette option est réservée aux experts. Si vous ne comprenez pas parfaitement les implications de ce que cela vous permet de faire, ne l'utilisez pas. --no-expert désactive cette option.

Options relatives aux clés

--recipient name
-r Encrypte pour l'ID utilisateur name. Si cette option ou --hidden-recipient n'est pas spécifiée, GnuPG demande l'ID utilisateur, sauf si --default-recipient est donné.

--hidden-recipient name
-R Encrypte pour l'ID utilisateur name, mais masque l'ID de clé de la clé de cet utilisateur. Cette option permet de masquer le destinataire du message et constitue une contre-mesure limitée contre l'analyse du trafic.

Si cette option ou --recipient n'est pas spécifiée, GnuPG demande l'ID utilisateur, sauf si --default-recipient est donné.

--recipient-file file
-f Cette option est similaire à --recipient, sauf qu'elle chiffre vers une clé stockée dans le fichier spécifié. file doit être le nom d'un fichier contenant exactement une clé. gpg suppose que la clé dans ce fichier est entièrement valide.

--hidden-recipient-file file
-F Cette option est similaire à --hidden-recipient, sauf qu'elle chiffre vers une clé stockée dans le fichier spécifié. file doit être le nom d'un fichier contenant exactement une clé. gpg suppose que la clé dans ce fichier est entièrement valide.

--encrypt-to name

Identique à --recipient, mais cette option est destinée à être utilisée dans le fichier d'options et peut être utilisée avec votre propre ID utilisateur en tant que « encrypt-to-self ». Il est suggéré d'utiliser une empreinte ou au moins un long ID de clé pour name. Ces clés ne sont utilisées que lorsqu'il existe d'autres destinataires, soit par l'utilisation de --recipient, soit par l'ID utilisateur demandé. Aucune vérification de confiance n'est effectuée pour ces ID utilisateur et même les clés désactivées peuvent être utilisées.

--hidden-encrypt-to name

Identique à --hidden-recipient, mais cette option est destinée à être utilisée dans le fichier d'options et peut être utilisée avec votre propre ID utilisateur en tant que « hidden-encrypt-to-self ». Il est suggéré d'utiliser une empreinte ou au moins un long ID de clé pour name. Ces clés ne sont utilisées que lorsqu'il existe d'autres destinataires, soit par l'utilisation de --recipient, soit par l'ID utilisateur demandé. Aucune vérification de confiance n'est effectuée pour ces ID utilisateur et même les clés désactivées peuvent être utilisées.

--no-encrypt-to

Désactive l'utilisation de toutes les clés --encrypt-to et --hidden-encrypt-to.

--group {name=value}

Définit un groupe nommé, qui est similaire aux alias dans les programmes de messagerie. Chaque fois que le nom du groupe est un destinataire (-r ou --recipient), il sera étendu aux valeurs spécifiées. Plusieurs groupes portant le même nom sont automatiquement fusionnés en un seul groupe.


Les valeurs sont des ID de clé ou des empreintes digitales, mais toute description de clé est acceptée. Notez qu’une valeur contenant des espaces sera traitée comme deux valeurs distinctes. Notez également qu’il n’y a qu’un seul niveau d’expansion : vous ne pouvez pas créer un groupe qui pointe vers un autre groupe. Lorsqu’il est utilisé en ligne de commande, il peut être nécessaire de mettre l’argument entre guillemets pour éviter que le shell ne le traite comme plusieurs arguments.

--ungroup nom Supprime une entrée donnée de la liste --group.

--no-groups Supprime toutes les entrées de la liste --group.

--local-user nom     -u    Utilisez « nom » comme clé pour signer. Notez que cette option annule --default-key.

--sender mbox Cette option a deux objectifs. « mbox » doit être un ID utilisateur complet contenant une adresse e-mail valide ou simplement une adresse e-mail. L’option peut être donnée plusieurs fois.

Lors de la création d’une signature, cette option indique à GPG l’ID utilisateur de la clé de signature utilisé pour créer la signature et inclut cet ID utilisateur dans la signature créée (en utilisant le sous-paquet « ID utilisateur du signataire » d’OpenPGP). Si l’option est donnée plusieurs fois, un ID utilisateur approprié est sélectionné. Cependant, si la clé de signature a été spécifiée directement en utilisant une adresse e-mail (c’est-à-dire sans utiliser une empreinte digitale ou un ID de clé), cette option est utilisée et l’adresse e-mail est incluse dans la signature créée.

Lors de la vérification d’une signature, « mbox » est utilisé pour limiter les informations imprimées par le code TOFU aux ID utilisateurs correspondants. Si cette option est utilisée et que la signature contient un sous-paquet « ID utilisateur du signataire », cette information est également utilisée pour limiter les informations imprimées. Notez que GnuPG ne prend en compte que la partie adresse e-mail d’un ID utilisateur.

Si cette option ou ledit sous-paquet est disponible, les lignes TRUST telles qu’elles sont imprimées par l’option status-fd correspondent à l’ID utilisateur correspondant ; si aucun ID utilisateur n’est connu, les lignes TRUST sont calculées directement sur la clé et ne donnent aucune information sur l’ID utilisateur. Dans ce dernier cas, il est fortement recommandé aux scripts et autres interfaces de vérifier la ligne VALIDSIG, de récupérer la clé et d’imprimer tous les ID utilisateurs ainsi que leurs informations de validité (confiance).

--try-secret-key nom Pour les destinataires cachés, GPG a besoin de connaître les clés à utiliser pour le déchiffrement d’essai. La clé définie avec --default-key est toujours essayée en premier, mais ce n’est souvent pas suffisant. Cette option permet de définir d’autres clés à utiliser pour le déchiffrement d’essai. Bien qu’il soit possible d’utiliser n’importe quel ID utilisateur valide pour « nom », il est logique d’utiliser au moins l’ID de clé long pour éviter toute ambiguïté. Notez que gpg-agent peut afficher une fenêtre pinentry pour de nombreuses clés afin d’effectuer le déchiffrement d’essai. Si vous souhaitez arrêter tout déchiffrement d’essai supplémentaire, vous pouvez utiliser le bouton « Fermer la fenêtre » au lieu du bouton « Annuler ».

--try-all-secrets Ne tenez pas compte de l’ID de clé stocké dans le message, mais essayez toutes les clés secrètes à tour de rôle pour trouver la clé de déchiffrement appropriée. Cette option force le comportement utilisé par les destinataires anonymes (créés en utilisant les options --throw-keyids ou --hidden-recipient) et peut être utile dans le cas où un message chiffré contient un ID de clé incorrect.


--skip-hidden-recipients
--no-skip-hidden-recipients

Pendant le déchiffrement, ignorer tous les destinataires anonymes. Cette option est utile dans le cas où les personnes utilisent la fonction de destinataires cachés pour masquer leur propre clé de chiffrement auprès des autres. Si l'on dispose de nombreuses clés secrètes, cela peut devenir gênant, car toutes les clés sont essayées à tour de rôle pour déchiffrer quelque chose qui n'était pas réellement destiné à elles. L'inconvénient de cette option est qu'il n'est actuellement pas possible de déchiffrer un message qui contient de réels destinataires anonymes.

Entrée et sortie

--armor
-a Créer une sortie ASCII formatée. Par défaut, le format OpenPGP binaire est créé.

--no-armor

Supposer que les données d'entrée ne sont pas au format ASCII formaté.

--output file
-o file

Écrire la sortie dans un fichier. Pour écrire dans stdout, utilisez - comme nom de fichier.

--max-output n

Cette option définit une limite sur le nombre d'octets qui seront générés lors du traitement d'un fichier. Étant donné qu'OpenPGP prend en charge divers niveaux de compression, il est possible que le texte clair d'un message donné soit significativement plus grand que le message OpenPGP d'origine. Bien que GnuPG fonctionne correctement avec de tels messages, il existe souvent un désir de définir une taille de fichier maximale qui sera générée avant que le traitement ne soit forcé de s'arrêter par les limites du système d'exploitation. Par défaut, la valeur est 0, ce qui signifie "pas de limite".

--chunk-size n

Le mode de chiffrement AEAD chiffre les données en blocs, de sorte qu'un côté récepteur puisse vérifier les erreurs de transmission ou la falsification à la fin de chaque bloc et n'a pas besoin de retarder cette vérification jusqu'à ce que toutes les données aient été reçues. La taille du bloc utilisée est de 2^n octets. La valeur la plus basse autorisée pour n est 6 (64 octets) et la valeur la plus élevée est la valeur par défaut de 22, qui crée des blocs non plus grands que 4 Mio.

--input-size-hint n

Cette option peut être utilisée pour indiquer à GPG la taille des données d'entrée en octets. n doit être un nombre positif en base 10. Cette option n'est utile que si l'entrée ne provient pas d'un fichier. GPG peut utiliser cet indice pour optimiser sa stratégie d'allocation de mémoire tampon. Il est également utilisé par la ligne --status-fd "PROGRESS" pour fournir une valeur pour "total" si celle-ci n'est pas disponible par d'autres moyens.

--key-origin string[,url]

gpg peut suivre l'origine d'une clé. Certaines origines sont implicitement connues (par exemple, serveur de clés, répertoire de clés web) et sont définies. Pour une importation standard, l'origine des clés importées peut être définie avec cette option. Pour lister les valeurs possibles, utilisez "help" pour string. Certaines origines peuvent stocker un argument d'URL facultatif. Cette URL peut être ajoutée à string après une virgule.

--import-options parameters

Il s'agit d'une chaîne délimitée par des espaces ou des virgules qui donne des options pour l'importation de clés. Les options peuvent être précédées de `no-' pour donner le sens opposé. Les options sont :


import-local-sigs

Autoriser l’importation de signatures de clés marquées comme « locales ». Cela n’est généralement utile que si un schéma de trousseau de clés partagé est utilisé. Par défaut, la valeur est « non ».

keep-ownertrust

Normalement, les valeurs existantes de « ownertrust » d’une clé sont effacées lorsqu’une clé est importée. Ceci est généralement souhaitable afin qu’une clé qui a été supprimée ne récupère pas automatiquement une valeur « ownertrust » simplement en raison de l’importation. D’un autre côté, il est parfois nécessaire de réimporter un ensemble de clés de confiance tout en conservant les valeurs « ownertrust » déjà attribuées. Cela peut être réalisé en utilisant cette option.

repair-pks-subkey-bug

Lors de l’importation, tenter de corriger les dommages causés par le bug du serveur de clés PKS (version antérieure à 0.9.6) qui modifie les clés comportant plusieurs sous-clés. Notez que cela ne peut pas réparer complètement la clé endommagée, car certaines données cruciales sont supprimées par le serveur de clés, mais cela vous permet au moins de récupérer une sous-clé. Par défaut, la valeur est « non » pour l’option « --import » standard et « oui » pour « keyserver --receive-keys ».

import-show
show-only

Afficher une liste de la clé telle qu’elle est importée juste avant qu’elle ne soit stockée. Cela peut être combiné avec l’option « --dry-run » pour simplement examiner les clés ; l’option « show-only » est un raccourci pour cette combinaison. La commande « --show-keys » est un autre raccourci pour cela. Notez que les suffixes tels que « # » pour les lignes « sec » et « sbb » peuvent ou non être affichés.

import-export

Exécuter l’ensemble du code d’importation, mais au lieu de stocker la clé dans le trousseau de clés local, l’écrire dans la sortie. L’option d’exportation « export-dane » affecte la sortie. Cette option peut par exemple être utilisée pour supprimer toutes les parties non valides d’une clé sans avoir besoin de la stocker.

merge-only

Lors de l’importation, autoriser les mises à jour des clés existantes, mais ne pas autoriser l’importation de nouvelles clés. Par défaut, la valeur est « non ».

import-clean

Après l’importation, compresser (supprimer toutes les signatures sauf l’auto-signature) tous les ID utilisateur de la nouvelle clé qui ne sont pas utilisables. Ensuite, supprimer toutes les signatures de la nouvelle clé qui ne sont pas utilisables. Cela inclut les signatures qui ont été émises par des clés qui ne sont pas présentes dans le trousseau de clés. Cette option est la même que l’exécution de la commande « --edit-key « clean » » après l’importation. Par défaut, la valeur est « non ».

self-sigs-only

Accepter uniquement les auto-signatures lors de l’importation d’une clé. Toutes les autres signatures de clé sont ignorées à un stade précoce de l’importation. Cette option peut être utilisée avec les options du serveur de clés pour atténuer les tentatives de surcharge d’une clé avec des signatures non valides provenant d’un serveur de clés. L’inconvénient est que toutes les autres signatures de clé valides, comme l’exige le Web de confiance, ne sont pas non plus importées. Notez que lors de l’utilisation de cette option avec « import-clean », cela supprime l’étape de nettoyage finale après la fusion de la clé importée dans la clé existante.

ignore-attributes

Ignorer tous les ID utilisateur d’attribut (ID de photo) et leurs signatures lors de l’importation d’une clé.

repair-keys

Après l’importation, corriger divers problèmes avec les clés. Par exemple, cela réorganise les signatures et supprime les signatures en double. Par défaut, la valeur est « oui ».


bulk-import

Lorsque l'option use-keyboxd dans ‘common.conf’ est utilisée, l'importation est effectuée dans une seule transaction.

import-minimal

Importe la clé la plus petite possible. Cela supprime toutes les signatures, à l'exception de la signature auto la plus récente pour chaque ID utilisateur. Cette option est la même que l'exécution de la commande --edit-key "minimize" après l'importation. Par défaut, cette option est désactivée.

restore
import-restore

Importe en mode de restauration de clé. Cela importe toutes les données qui sont généralement ignorées pendant l'importation, y compris toutes les données spécifiques à GnuPG. Toutes les autres options contradictoires sont ignorées.

--import-filter {name=expr}
--export-filter {name=expr}

Ces options définissent un filtre d'importation/exportation qui est appliqué au bloc de clés importé/exporté juste avant qu'il ne soit stocké/écrit. name définit le type de filtre à utiliser, et expr l'expression à évaluer. L'option peut être utilisée plusieurs fois, ce qui ajoute alors d'autres expressions au même nom.

Les types de filtres disponibles sont :

keep-uid

Ce filtre conserve un paquet d'ID utilisateur et ses paquets dépendants dans le bloc de clés si l'expression est évaluée à vrai.

drop-subkey

Ce filtre supprime les sous-clés sélectionnées. Actuellement, il n'est implémenté que pour --export-filter.

drop-sig

Ce filtre supprime les signatures de clé sélectionnées sur les ID utilisateur. Les signatures auto ne sont pas prises en compte. Actuellement, il n'est implémenté que pour --import-filter.

select Ce filtre n'est implémenté que par --list-filter. Tous les noms de propriétés peuvent être utilisés.

Pour la syntaxe de l'expression, voir le chapitre "EXPRESSIONS DE FILTRE". Les noms de propriétés pour les expressions dépendent du type de filtre réel et sont indiqués dans le tableau suivant. Notez que tous les noms de propriétés peuvent également être utilisés par --list-filter.

Les noms de propriétés peuvent être préfixés par une portée délimitée par une barre oblique. Les portées valides sont "pub" pour les clés primaires publiques et secrètes, "sub" pour les sous-clés publiques et secrètes, "uid" pour les paquets d'ID utilisateur et "sig" pour les paquets de signature. Les portées non valides sont actuellement ignorées.

Les propriétés disponibles sont :

uid    Une chaîne avec l'ID utilisateur. (keep-uid)

mbox   La partie addr-spec d'un ID utilisateur avec une adresse de messagerie ou une chaîne vide. (keep-uid)

algostr

Une chaîne avec la description de l'algorithme de clé. Par exemple "rsa3072" ou "ed25519".

key_algo

Un nombre avec l'algorithme de clé publique d'une clé ou d'un paquet de sous-clé. (drop-subkey)

key_size

Un nombre avec la taille de clé effective d'une clé ou d'un paquet de sous-clé. (drop-subkey)

key_created
key_created_d

La première est l'horodatage auquel un paquet de clé publique ou de sous-clé a été créé. La seconde est la même, mais est donnée sous forme de chaîne ISO, par exemple "2016-08-17". (drop-subkey)

key_expires
key_expires_d

La date d'expiration d'une clé ou d'une sous-clé publique ou 0 si elle n'expire pas. La seconde est la même, mais est donnée sous forme de chaîne de date ISO ou d'une chaîne vide, par exemple "2038-01-19".

fpr    L'empreinte hexadécimale de la sous-clé ou de la clé primaire actuelle. (drop-subkey)

primary

Booléen indiquant si l'ID utilisateur est le principal. (keep-uid)

expired

Booléen indiquant si un ID utilisateur (keep-uid), une clé (drop-subkey) ou une signature (drop-sig) a expiré.

revoked

Booléen indiquant si un ID utilisateur (keep-uid) ou une clé (drop-subkey) a été révoqué.

disabled

Booléen indiquant si une clé primaire est désactivée.

secret

Booléen indiquant si une clé ou une sous-clé est une clé secrète. (drop-subkey)

usage

Une chaîne indiquant les indicateurs d'utilisation pour la sous-clé, tirée de la séquence « ecsa ? ». Par exemple, une sous-clé capable uniquement de signer et d'authentifier correspondrait exactement à « sa ». (drop-subkey)

sig_created
sig_created_d

La première est l'horodatage auquel un paquet de signature a été créé. La seconde est la même, mais donnée sous forme de chaîne de date ISO, par exemple « 2016-08-17 ». (drop-sig)

sig_expires
sig_expires_d

La date d'expiration d'un paquet de signature ou 0 si elle n'expire pas. La seconde est la même, mais donnée sous forme de chaîne de date ISO ou d'une chaîne vide, par exemple « 2038-01-19 ».

sig_algo

Un nombre représentant l'algorithme de clé publique d'un paquet de signature. (drop-sig)

sig_digest_algo

Un nombre représentant l'algorithme de hachage d'un paquet de signature. (drop-sig)

origin

Une chaîne indiquant l'origine de la clé ou un point d'interrogation. Par exemple, la chaîne « wkd » est utilisée si une clé provient d'une recherche dans un répertoire de clés Web.

lastupd

L'horodatage auquel la clé a été mise à jour pour la dernière fois à partir d'un serveur de clés ou du répertoire de clés Web.

url

Une chaîne contenant l'URL associée à la dernière recherche de clé.

--export-options parameters

Il s'agit d'une chaîne délimitée par des espaces ou des virgules qui donne des options pour l'exportation des clés. Les options peuvent être précédées de « no- » pour donner le sens opposé. Les options sont les suivantes :

export-local-sigs

Autoriser l'exportation des signatures de clé marquées comme « locales ». Ce n'est généralement pas utile, sauf si un schéma de trousseau de clés partagé est utilisé. Par défaut : non.

export-attributes

Inclure les ID utilisateur d'attribut (ID photo) lors de l'exportation. Ne pas inclure les ID utilisateur d'attribut est utile pour exporter des clés qui seront utilisées par un programme OpenPGP qui n'accepte pas les ID utilisateur d'attribut. Par défaut : oui.

export-sensitive-revkeys

Inclure les informations de révocateur désignées qui ont été marquées comme « sensibles ». Par défaut : non.

backup
export-backup

Exporter pour une utilisation comme sauvegarde. Les données exportées incluent toutes les données nécessaires pour restaurer ultérieurement la ou les clés avec GnuPG. Le format est essentiellement le format OpenPGP, mais amélioré avec les données spécifiques à GnuPG. Toutes les autres options contradictoires sont ignorées.

export-clean

Compresser (supprimer toutes les signatures) des ID utilisateur de la clé en cours d'exportation si les ID utilisateur ne sont pas utilisables. De plus, ne pas exporter les signatures qui ne sont pas utilisables. Cela inclut les signatures émises par des clés qui ne sont pas présentes dans le trousseau de clés. Cette option est la même que l'exécution de la commande « clean » dans la commande --edit-key avant l'exportation, sauf que la copie locale de la clé n'est pas modifiée. Par défaut : non.


export-minimal
Exporte la clé la plus petite possible. Cela supprime toutes les signatures sauf la signature auto-signature la plus récente de chaque ID utilisateur. Cette option est la même que l’exécution de la commande `––edit-key "minimize"` avant l’exportation, sauf que la copie locale de la clé n’est pas modifiée. Par défaut, cette option n’est pas activée.

export-revocs
N’exporte que les certificats de révocation autonomes de la clé. Cette option n’exporte pas les révocation de certificats tiers.

export-dane
Au lieu de générer la clé, génère les enregistrements OpenPGP DANE à insérer dans les fichiers de zone DNS. Une ligne ORIGIN est affichée avant chaque enregistrement, ce qui permet de rediriger les enregistrements vers le fichier de zone correspondant.

mode1003
Active l’utilisation d’un nouveau format d’exportation de clé secrète. Ce format évite le rechiffrement requis par le format OpenPGP actuel et améliore également la sécurité de la clé secrète si elle est protégée par un mot de passe. Notez qu’une clé non protégée est exportée telle quelle et n’est donc pas sécurisée ; la règle générale consistant à transmettre les clés secrètes dans un fichier OpenPGP chiffré s’applique toujours dans ce mode. Les versions de GnuPG antérieures à 2.4.0 ne peuvent pas importer un tel fichier de clé secrète.

--with-colons
Affiche les listes de clés délimitées par des deux-points. Notez que la sortie sera encodée en UTF-8, quel que soit le paramètre --display-charset. Ce format est utile lorsque GnuPG est appelé à partir de scripts et d’autres programmes, car il est facilement analysable par une machine. Les détails de ce format sont documentés dans le fichier « doc/DETAILS », qui est inclus dans la distribution source de GnuPG.

--fixed-list-mode
Ne fusionne pas l’ID utilisateur principal et la clé principale dans le mode de liste --with-colons et affiche tous les horodatages en secondes depuis 1970-01-01. Depuis GnuPG 2.0.10, ce mode est toujours utilisé et cette option est donc obsolète ; il n’est pas nuisible de l’utiliser, cependant.

--legacy-list-mode
Rétablit le mode de liste de clés publiques pré-2.1. Cela n’affecte que la sortie lisible par l’homme et non l’interface machine (c’est-à-dire --with-colons). Notez que le format hérité ne transmet pas d’informations appropriées pour les courbes elliptiques.

--with-fingerprint
Identique à la commande --fingerprint, mais ne modifie que le format de la sortie et peut être utilisé avec une autre commande.

--with-subkey-fingerprint
Si une empreinte est affichée pour la clé primaire, cette option force l’affichage de l’empreinte de toutes les sous-clés. Cela pourrait également être obtenu en utilisant l’option --with-fingerprint deux fois, mais en utilisant cette option avec le format keyid "none", une empreinte compacte est affichée.

--with-v5-fingerprint
Dans un mode de liste en colonnes, affiche les lignes « fp2 » pour les clés OpenPGP version 4 disposant d’une empreinte de clé de type V5.

--with-icao-spelling
Affiche l’orthographe ICAO de l’empreinte en plus des chiffres hexadécimaux.

--with-keygrip
Inclut le keygrip dans les listes de clés. En mode --with-colons, cette option est implicitement activée pour les clés secrètes.

--with-key-origin
Inclure les informations locales sur l’origine et la dernière mise à jour d’une clé dans une liste de clés. En mode --with-colons, ces informations sont toujours affichées. Ces données sont actuellement expérimentales et ne doivent pas être considérées comme faisant partie de l’API stable.

--with-wkd-hash
Afficher un identifiant du répertoire de clés Web avec chaque ID utilisateur dans les listes de clés. Il s’agit d’une fonctionnalité expérimentale et la sémantique peut changer.

--with-secret
Inclure des informations sur la présence d’une clé secrète dans les listes de clés publiques générées avec --with-colons.

Options spécifiques au protocole OpenPGP

--force-ocb
--force-aead
Forcer l’utilisation du chiffrement AEAD au lieu du chiffrement MDC. AEAD est une méthode de chiffrement authentifié moderne et plus rapide que l’ancienne méthode MDC. --force-aead est un alias et est déprécié. Voir également l’option --chunk-size.

--force-mdc
--disable-mdc
Ces options sont obsolètes et n’ont aucun effet depuis GnuPG 2.2.8. Le MDC est toujours utilisé, sauf si les clés indiquent qu’un algorithme AEAD peut être utilisé, auquel cas AEAD est utilisé. Mais notez : si la création d’un message non-MDC hérité est exceptionnellement requise, l’option --rfc2440 le permet.

--disable-signer-uid
Par défaut, l’ID utilisateur de la clé de signature est intégré dans la signature de données. Pour le moment, cela n’est fait que si la clé de signature a été spécifiée avec local-user en utilisant une adresse e-mail, ou avec sender. Ces informations peuvent être utiles au vérificateur pour localiser la clé ; voir l’option --auto-key-retrieve.

--include-key-block
--no-include-key-block
Cette option est utilisée pour intégrer la clé de signature réelle dans une signature de données. La clé intégrée est réduite à un seul ID utilisateur et n’inclut que la sous-clé de signature utilisée pour créer la signature, ainsi que les sous-clés de chiffrement valides. Toutes les autres informations sont supprimées de la clé afin de la réduire, et donc la signature. Cette option est la contrepartie OpenPGP de l’option gpgsm --include-certs et permet au destinataire d’un message signé de répondre en mode chiffré à l’expéditeur sans utiliser de répertoires en ligne pour rechercher la clé. La valeur par défaut est --no-include-key-block. Voir également l’option --auto-key-import.

--personal-cipher-preferences string
Définir la liste des préférences de chiffrement personnelles sur la chaîne spécifiée. Utilisez gpg --version pour obtenir une liste des algorithmes disponibles et utilisez none pour ne définir aucune préférence. Cela permet à l’utilisateur de remplacer en toute sécurité l’algorithme choisi par les préférences du destinataire, car GPG ne sélectionnera qu’un algorithme utilisable par tous les destinataires. L’algorithme de chiffrement le mieux classé dans cette liste est également utilisé pour la commande de chiffrement symétrique.

--personal-digest-preferences string
Définir la liste des préférences de hachage personnelles sur la chaîne spécifiée. Utilisez gpg --version pour obtenir une liste des algorithmes disponibles et utilisez none pour ne définir aucune préférence. Cela permet à l’utilisateur de remplacer en toute sécurité l’algorithme choisi par les préférences du destinataire, car GPG ne sélectionnera qu’un algorithme utilisable par tous les destinataires. L’algorithme de hachage le mieux classé dans cette liste est également utilisé lors de la signature sans chiffrement (par exemple, --clear-sign ou --sign).

--personal-compress-preferences chaîne
Définit la liste des préférences de compression personnelles sur la chaîne spécifiée. Utilisez `gpg --version` pour obtenir une liste des algorithmes disponibles et utilisez `none` pour ne définir aucune préférence. Cela permet à l’utilisateur de remplacer en toute sécurité l’algorithme choisi par les préférences de la clé du destinataire, car GPG ne sélectionnera qu’un algorithme utilisable par tous les destinataires. L’algorithme de compression le mieux classé dans cette liste est également utilisé lorsqu’il n’y a pas de clés de destinataire à prendre en compte (par exemple, avec l’option `--symmetric`).

--s2k-cipher-algo nom
Utilise `nom` comme algorithme de chiffrement pour le chiffrement symétrique avec une phrase de passe si `--personal-cipher-preferences` et `--cipher-algo` ne sont pas spécifiés. La valeur par défaut est AES-128.

--s2k-digest-algo nom
Utilise `nom` comme algorithme de hachage utilisé pour modifier les phrases de passe pour le chiffrement symétrique. La valeur par défaut est SHA-1.

--s2k-mode n
Sélectionne la manière dont les phrases de passe pour le chiffrement symétrique sont modifiées. Si `n` est égal à 0, une phrase de passe simple (ce qui n’est généralement pas recommandé) sera utilisée ; si `n` est égal à 1, un sel (qui ne doit pas être utilisé) est ajouté à la phrase de passe ; et si `n` est égal à 3 (la valeur par défaut), l’ensemble du processus est répété un certain nombre de fois (voir `--s2k-count`).

--s2k-count n
Spécifie le nombre de fois que la modification des phrases de passe pour le chiffrement symétrique est répétée. Cette valeur peut varier entre 1024 et 65011712 inclus. La valeur par défaut est récupérée auprès de `gpg-agent`. Notez que toutes les valeurs de la plage 1024-65011712 ne sont pas valides, et si une valeur non valide est sélectionnée, GnuPG arrondira à la valeur valide la plus proche. Cette option n’est significative que si `--s2k-mode` est défini sur la valeur par défaut de 3.

Options de conformité

Ces options contrôlent la conformité de GnuPG. Seule l’une de ces options peut être active à la fois. Si plusieurs options sont spécifiées, la dernière option prévaut sur toutes les autres. Notez que le paramètre par défaut est presque toujours le bon. Voir la section « INTEROPÉRABILITÉ AVEC D’AUTRES PROGRAMMES OPENPGP » avant d’utiliser l’une de ces options.

--gnupg
Utilise le comportement standard de GnuPG. Il s’agit maintenant du comportement de LibrePGP, qui est un autre brouillon de protocole qui se chevauche dans certains cas avec OpenPGP.

--openpgp
Définit tous les paramètres de paquet, de chiffrement et de hachage sur un comportement compatible avec OpenPGP (RFC-9580). Notez que toutes les parties de RFC-9580 ne sont pas implémentées par GnuPG. Il s’agit de l’option par défaut, il n’est donc généralement pas nécessaire de l’utiliser, mais elle peut être utile pour remplacer une autre option de conformité dans le fichier `gpg.conf`.

--rfc4880
Définit tous les paramètres de paquet, de chiffrement et de hachage sur un comportement strict conforme à RFC-4880. RFC-4880 est la version héritée de la norme OpenPGP. Cette option implique `--allow-old-cipher-algos`.

--rfc4880bis
Cette option est obsolète ; elle est traitée comme un alias pour `--gnupg`.

--rfc2440
Définit tous les paramètres de paquet, de chiffrement et de hachage sur un comportement strict conforme à RFC-2440. RFC-2440 est une version très ancienne d’OpenPGP. Notez qu’en utilisant cette option, les paquets de chiffrement sont créés en mode hérité sans protection MDC. Ceci est dangereux et ne doit donc être utilisé que pour des expériences. Cette option implique `--allow-old-cipher-algos`. Voir également l’option `--ignore-mdc-error`.

--pgp6 Cette option est obsolète ; elle est gérée comme un alias de --pgp7.

--pgp7 Configure toutes les options pour qu’elles soient aussi conformes que possible à PGP 7. Cela permet les chiffrements IDEA, 3ES, CAST5, AES128, AES192, AES256 et TWOFISH, les hachages MD5, SHA1 et RIPEMD160, et les algorithmes de compression none et ZIP. Cette option implique --escape-from-lines et désactive --throw-keyids.

--pgp8 Configure toutes les options pour qu’elles soient aussi conformes que possible à PGP 8. PGP 8 est beaucoup plus proche de la norme OpenPGP que les versions précédentes de PGP. Par conséquent, cette option désactive simplement --throw-keyids et définit --escape-from-lines. Tous les algorithmes sont autorisés, à l’exception des hachages SHA224, SHA384 et SHA512.

--compliance string

Cette option peut être utilisée à la place de l’une des options ci-dessus. Les valeurs valides pour string sont les noms des options ci-dessus (sans le double tiret) et éventuellement d’autres, comme indiqué lorsque vous utilisez « help » pour string.

--min-rsa-length n

Cette option ajuste le mode de conformité « de-vs » pour des exigences de taille de clé plus strictes. Par exemple, une valeur de 3 000 transforme les clés rsa2048 et dsa2048 en clés non conformes à VS-NfD.

--require-compliance

Pour vérifier que les données ont été chiffrées conformément aux règles du mode de conformité actuel, un utilisateur gpg doit évaluer les lignes d’état. Cela permet aux interfaces de gérer la vérification de la conformité de manière plus flexible. Cependant, pour une utilisation dans des scripts, la vérification obligatoire de la ligne d’état nécessite beaucoup d’efforts ; cette option peut être utilisée à la place pour s’assurer que le processus gpg se termine avec une erreur si les règles de conformité ne sont pas respectées. Notez que cette option n’a actuellement d’effet que dans le mode « de-vs ».

Effectuer des opérations que l’on ne souhaite généralement pas effectuer

-n
--dry-run

Ne rien modifier (ce n’est pas entièrement implémenté).

--list-only

Modifie le comportement de certaines commandes. C’est comme --dry-run, mais différent dans certains cas. La sémantique de cette option peut être étendue à l’avenir. Actuellement, elle ne fait que supprimer le passage de déchiffrement réel et permet ainsi une liste rapide des clés de chiffrement.

-i
--interactive

Demander confirmation avant de remplacer des fichiers.

--compatibility-flags flags

Définit des indicateurs de compatibilité pour contourner les problèmes liés aux clés ou aux données non conformes. Les indicateurs sont fournis sous la forme d’une liste séparée par des virgules et sont combinés avec l’opérateur OU. L’indicateur spécial « none » efface la liste et permet de recommencer avec une liste vide. Pour obtenir une liste des indicateurs disponibles, utilisez simplement le mot « help ».

--debug-level level

Sélectionne le niveau de débogage pour résoudre les problèmes. level peut être une valeur numérique ou un mot-clé :

none   Aucun débogage. Une valeur inférieure à 1 peut être utilisée à la place du mot-clé.

basic Quelques messages de débogage de base. Une valeur comprise entre 1 et 2 peut être utilisée à la place du mot-clé.

advanced Messages de débogage plus détaillés. Une valeur comprise entre 3 et 5 peut être utilisée à la place du mot-clé.

expert Messages encore plus détaillés. Une valeur comprise entre 6 et 8 peut être utilisée à la place du mot-clé.

guru Tous les messages de débogage possibles. Une valeur supérieure à 8 peut être utilisée à la place du mot-clé. La création de fichiers de traçage de hachage n’est activée que si le mot-clé est utilisé.

La façon dont ces messages sont mappés aux drapeaux de débogage réels n’est pas spécifiée et peut changer avec les versions ultérieures de ce programme. Cependant, ils sont soigneusement sélectionnés pour faciliter au mieux le débogage.

--debug flags
Définir les drapeaux de débogage. Tous les drapeaux sont combinés par un opérateur OU et les drapeaux peuvent être fournis en syntaxe C (par exemple, 0x0042) ou sous forme de liste séparée par des virgules de noms de drapeaux. Pour obtenir une liste de tous les drapeaux pris en charge, le mot unique « help » peut être utilisé. Cette option n’est utile que pour le débogage et son comportement peut changer à tout moment sans préavis.

--debug-all
Définir tous les drapeaux de débogage utiles.

--debug-iolbf
Définir stdout en mode tampon de ligne. Cette option n’est prise en compte que lorsqu’elle est fournie sur la ligne de commande.

--debug-set-iobuf-size n
Modifier la taille du tampon des IOBUFs à n kilo-octets. L’utilisation de 0 affiche la taille actuelle.
Remarque importante : il s’agit d’une option réservée aux développeurs et peut donc être modifiée ou supprimée à tout moment sans préavis.

--debug-allow-large-chunks
Afin de faciliter les tests logiciels et les expériences, cette option permet de spécifier une limite allant jusqu’à 4 EiB (--chunk-size 62).

--debug-ignore-expiration
Cette option tente de remplacer certaines dates d’expiration des clés. Elle n’est utile que pour certains tests de régression.

--faked-system-time epoch
Cette option est uniquement utile pour les tests ; elle renvoie ou avance l’heure du système à une époque, qui est le nombre de secondes écoulées depuis l’année 1970. Alternativement, l’époque peut être donnée sous forme de chaîne de temps ISO complète (par exemple, « 20070924T154812 »).

Si vous ajoutez un point d’exclamation (!) à la fin de l’époque, l’heure du système semblera être figée à l’heure spécifiée.

--full-timestrings
Modifier le format des dates et heures de création et d’expiration imprimées, de sorte qu’elles n’affichent plus seulement la date, mais aussi la date et l’heure. En général, cela n’est pas utile et les mêmes informations sont de toute façon disponibles en mode --with-colons. Ces chaînes plus longues ne sont pas non plus bien alignées avec les autres données imprimées.

--enable-progress-filter
Activer certaines sorties d’état PROGRESS. Cette option permet aux interfaces de niveau supérieur d’afficher une barre de progression pendant le traitement des fichiers plus volumineux par gpg. Cela entraîne une légère surcharge des performances.

--status-fd n
Écrire des chaînes d’état spéciales dans le descripteur de fichier n. Voir le fichier DETAILS dans la documentation pour une liste de ces chaînes.

--status-file file
Identique à --status-fd, sauf que les données d’état sont écrites dans le fichier file.

--logger-fd n
Écrire la sortie du journal dans le descripteur de fichier n et non dans STDERR.

--log-file file
--logger-file file
Identique à --logger-fd, sauf que les données du journal sont écrites dans le fichier file. Utilisez « socket:// » pour enregistrer dans un socket.

--log-time

Ajoute un horodatage au début de toutes les sorties de journal, même si aucun fichier journal n'est utilisé.

--attribute-fd n

Écrit les sous-paquets d'attribut dans le descripteur de fichier n. Ceci est particulièrement utile avec --status-fd, car les messages d'état sont nécessaires pour séparer les différents sous-paquets du flux transmis au descripteur de fichier.

--attribute-file file

Identique à --attribute-fd, sauf que les données d'attribut sont écrites dans le fichier file.

--comment string
--no-comments

Utilise string comme chaîne de commentaire dans les signatures en clair et les messages ou clés ASCII blindés (voir --armor). Le comportement par défaut est de ne pas utiliser de chaîne de commentaire. --comment peut être répété plusieurs fois pour obtenir plusieurs chaînes de commentaire. --no-comments supprime tous les commentaires. Il est conseillé de maintenir la longueur d'un seul commentaire en dessous de 60 caractères pour éviter les problèmes avec les programmes de messagerie qui pourraient tronquer ces lignes. Notez que les lignes de commentaire, comme toutes les autres lignes d'en-tête, ne sont pas protégées par la signature.

--emit-version
--no-emit-version

Force l'inclusion de la chaîne de version dans la sortie ASCII blindée. Si l'option est donnée une seule fois, seul le nom du programme et le numéro de version principal sont affichés. Si elle est donnée deux fois, le numéro de version mineur est également affiché, si elle est donnée trois fois, le numéro de version micro est ajouté, et si elle est donnée quatre fois, une identification du système d'exploitation est également ajoutée. --no-emit-version (par défaut) désactive la ligne de version.

--sig-notation {name=value}
--cert-notation {name=value}
-N, --set-notation {name=value}

Place la paire nom-valeur dans la signature en tant que données de notation. Le nom doit contenir uniquement des caractères imprimables ou des espaces, et doit contenir un caractère '@' sous la forme _ (en substituant le nom de clé et le nom de domaine appropriés, bien sûr). Cela permet d'éviter la pollution de l'espace de noms de notation réservé par l'IETF. L'option --expert annule la vérification du caractère '@'. La valeur peut être n'importe quelle chaîne de caractères imprimables ; elle sera encodée en UTF-8, il est donc conseillé de vérifier que votre option --display-charset est correctement définie. Si vous préfixez le nom avec un point d'exclamation (!), les données de notation seront marquées comme critiques (rfc4880:5.2.3.16). --sig-notation définit une notation pour les signatures de données. --cert-notation définit une notation pour les signatures de clés (certifications). --set-notation définit les deux.

Il existe des codes spéciaux qui peuvent être utilisés dans les noms de notation. "%k" sera remplacé par l'ID de clé de la clé signée, "%K" par l'ID de clé long de la clé signée, "%f" par l'empreinte de la clé signée, "%s" par l'ID de clé de la clé effectuant la signature, "%S" par l'ID de clé long de la clé effectuant la signature, "%g" par l'empreinte de la clé effectuant la signature (qui peut être une sous-clé), "%p" par l'empreinte de la clé primaire de la clé effectuant la signature, "%c" par le nombre de signatures provenant de la carte à puce OpenPGP, et "%%" donne un seul "%". %k, %K et %f n'ont de sens que lors de la création d'une signature de clé (certification), et %c n'a de sens que lors de l'utilisation de la carte à puce OpenPGP.


--known-notation name

Ajoute le nom à la liste des notations de signature critiques connues. L'effet est que gpg ne marquera pas une signature avec une notation de signature critique de ce nom comme étant incorrecte. Notez que gpg connaît déjà par défaut quelques noms de notations de signature critiques.

--sig-policy-url string
--cert-policy-url string
--set-policy-url string

Utilise string comme URL de stratégie pour les signatures (rfc4880 : 5.2.3.20). Si vous le préfixez avec un point d'exclamation (!), le paquet d'URL de stratégie sera marqué comme critique. --sig-policy-url définit une URL de stratégie pour les signatures de données. --cert-policy-url définit une URL de stratégie pour les signatures de clés (certifications). --set-policy-url définit les deux.

Les mêmes expansions de type % utilisées pour les données de notation sont également disponibles ici.

--sig-keyserver-url string

Utilise string comme URL de serveur de clés préférée pour les signatures de données. Si vous le préfixez avec un point d'exclamation (!), le paquet d'URL du serveur de clés sera marqué comme critique.

Les mêmes expansions de type % utilisées pour les données de notation sont également disponibles ici.

--set-filename string

Utilise string comme nom de fichier qui est stocké dans les messages. Cela remplace la valeur par défaut, qui consiste à utiliser le nom de fichier réel du fichier en cours de chiffrement. L'utilisation d'une chaîne vide pour string supprime effectivement le nom de fichier de la sortie.

--for-your-eyes-only
--no-for-your-eyes-only

Définit le drapeau « pour vos yeux seulement » dans le message. Cela amène GnuPG à refuser de sauvegarder le fichier à moins que l'option --output ne soit spécifiée, et PGP à utiliser un « visualiseur sécurisé » avec une police prétendument résistante à Tempest pour afficher le message. Cette option remplace --set-filename. --no-for-your-eyes-only désactive cette option.

--use-embedded-filename
--no-use-embedded-filename

Essaie de créer un fichier avec un nom intégré dans les données. Cela peut être une option dangereuse car elle permet de remplacer des fichiers en donnant au destinataire le contrôle sur la manière dont les fichiers sont stockés. Par défaut, cette option est désactivée. Notez que l'option --output remplace cette option.

Une meilleure approche que l'utilisation de cette option consiste à déchiffrer vers un nom de fichier temporaire, puis
à renommer ce fichier avec le nom de fichier intégré après avoir vérifié que le nom de fichier intégré est sûr. Lors de l'utilisation de l'option --status-fd, gpg indique le nom de fichier dans le message d'état PLAINTEXT. Si le nom de fichier est important, l'utilisation de gpgtar est une autre option,
car gpgtar ne remplacera jamais un fichier mais déchiffrera les fichiers dans un nouveau répertoire.

Notez également que, à moins qu'une signature de version 5 moderne ne soit utilisée, le nom de fichier intégré ne fait pas partie des données signées.

--cipher-algo name

Utilise name comme algorithme de chiffrement. L'exécution du programme avec la commande --version renvoie une liste des algorithmes pris en charge. Si cette option n'est pas utilisée, l'algorithme de chiffrement est sélectionné à partir des préférences stockées avec la clé. En général, vous ne voulez pas utiliser cette option car elle vous permet de violer la norme OpenPGP. L'option --personal-cipher-preferences est le moyen sûr d'obtenir le même résultat.


--digest-algo nom
Utilise l'algorithme de hachage de message nommé. L'exécution du programme avec la commande --version
renvoie une liste des algorithmes pris en charge. En général, vous ne devez pas utiliser cette option, car
elle vous permet de violer la norme OpenPGP. L'option --personal-digest-preferences est le moyen sûr
d'obtenir le même résultat.

--compress-algo nom
Utilise l'algorithme de compression nommé. « zlib » est la compression ZLIB RFC-1950. « zip » est la
compression ZIP RFC-1951 utilisée par PGP. « bzip2 » est un schéma de compression plus moderne qui peut
compresser certaines choses mieux que zip ou zlib, mais au prix d'une plus grande quantité de mémoire
utilisée pendant la compression et la décompression. « non compressé » ou « aucun » désactive la
compression. Si cette option n'est pas utilisée, le comportement par défaut consiste à examiner les
préférences de l'algorithme du destinataire pour voir quels algorithmes il prend en charge. Si tout
échoue, ZIP est utilisé pour une compatibilité maximale.

ZLIB peut donner de meilleurs résultats de compression que ZIP, car la taille de la fenêtre de
compression n'est pas limitée à 8 Ko. BZIP2 peut donner des résultats de compression encore meilleurs,
mais utilisera une quantité de mémoire beaucoup plus importante pendant la compression et la
décompression. Cela peut être important dans les situations de faible mémoire. Notez cependant que PGP
(toutes les versions) ne prend en charge que la compression ZIP. L'utilisation d'un algorithme autre
que ZIP ou « aucun » rendra le message illisible avec PGP. En général, vous ne devez pas utiliser
cette option car elle vous permet de violer la norme OpenPGP. L'option --personal-compress-preferences
est le moyen sûr d'obtenir le même résultat.

--cert-digest-algo nom
Utilise le nom comme algorithme de hachage de message utilisé lors de la signature d'une clé.
L'exécution du programme avec la commande --version renvoie une liste des algorithmes pris en charge.
Soyez conscient que si vous choisissez un algorithme que GnuPG prend en charge mais que d'autres
implémentations OpenPGP ne prennent pas en charge, certains utilisateurs ne pourront pas utiliser les
signatures de clé que vous créez, ou même votre clé entière. Notez également qu'un algorithme de clé
publique doit être compatible avec l'algorithme de hachage spécifié ; par conséquent, la sélection
d'un algorithme de hachage arbitraire peut entraîner des messages d'erreur provenant des couches
cryptographiques inférieures ou entraîner des failles de sécurité.

--disable-cipher-algo nom
N'autorise jamais l'utilisation de nom en tant qu'algorithme de chiffrement. Le nom donné ne sera pas
vérifié de sorte qu'un algorithme chargé ultérieurement sera également désactivé.

--disable-pubkey-algo nom
N'autorise jamais l'utilisation de nom en tant qu'algorithme de clé publique. Le nom donné ne sera pas
vérifié de sorte qu'un algorithme chargé ultérieurement sera également désactivé.

--throw-keyids
--no-throw-keyids
Ne placez pas les ID de clé du destinataire dans les messages chiffrés. Cela permet de masquer les
destinataires du message et constitue une contre-mesure limitée contre l'analyse du trafic.
(En utilisant un peu d'ingénierie sociale, toute personne capable de déchiffrer le message peut vérifier
si l'un des autres destinataires est celui qu'elle soupçonne.) Côté réception, cela peut ralentir le
processus de déchiffrement, car toutes les clés secrètes disponibles doivent être essayées.
--no-throw-keyids désactive cette option. Cette option est essentiellement la même que l'utilisation de
--hidden-recipient pour tous les destinataires.

--not-dash-escaped

Cette option modifie le comportement des signatures en clair afin qu'elles puissent être utilisées pour les fichiers de correctifs. Vous ne devez pas envoyer un tel fichier armé par e-mail, car tous les espaces et les fins de ligne sont également hachés. Vous ne pouvez pas utiliser cette option pour les données qui commencent par cinq tirets sur une ligne, car les fichiers de correctifs n'ont pas cela. Une ligne d'en-tête spéciale dans l'armure indique à GnuPG l'utilisation de cette option de signature en clair.

--escape-from-lines
--no-escape-from-lines

Comme certains programmes de messagerie modifient les lignes commençant par « From » en « >From », il est bon de gérer ces lignes d'une manière spéciale lors de la création de signatures en clair afin d'empêcher le système de messagerie de corrompre la signature. Notez que toutes les autres versions de PGP le font de cette façon. Activé par défaut. --no-escape-from-lines désactive cette option.

--passphrase-repeat n

Spécifie le nombre de fois que gpg demandera la répétition du nouveau mot de passe. Ceci est utile pour aider à mémoriser un mot de passe. Par défaut, la répétition est de 1 ; elle peut être définie sur 0 pour désactiver toute répétition de mot de passe. Notez qu'une valeur de n supérieure à 1 affichera la fenêtre pinentry n + 1 fois, même si un pinentry moderne avec deux champs de saisie est utilisé.

--passphrase-fd n

Lit le mot de passe à partir du descripteur de fichier n. Seule la première ligne sera lue à partir du descripteur de fichier n. Si vous utilisez 0 pour n, le mot de passe sera lu à partir de STDIN. Cela ne peut être utilisé que si un seul mot de passe est fourni.

Notez que depuis la version 2.0, ce mot de passe n’est utilisé que si l’option --batch a également été spécifiée. Depuis la version 2.1, l’option --pinentry-mode doit également être définie sur loopback.

--passphrase-file file

Lit le mot de passe à partir du fichier file. Seule la première ligne sera lue dans le fichier file. Cela ne peut être utilisé que si un seul mot de passe est fourni. De toute évidence, un mot de passe stocké dans un fichier présente une sécurité douteuse si d’autres utilisateurs peuvent lire ce fichier. N’utilisez pas cette option si vous pouvez l’éviter.

Notez que depuis la version 2.0, ce mot de passe n’est utilisé que si l’option --batch a également été spécifiée. Depuis la version 2.1, l’option --pinentry-mode doit également être définie sur loopback.

--passphrase string

Utilise string comme mot de passe. Cela ne peut être utilisé que si un seul mot de passe est fourni. De toute évidence, cela présente une sécurité très douteuse sur un système multi-utilisateur. N’utilisez pas cette option si vous pouvez l’éviter.

Notez que depuis la version 2.0, ce mot de passe n’est utilisé que si l’option --batch a également été spécifiée. Depuis la version 2.1, l’option --pinentry-mode doit également être définie sur loopback.

--pinentry-mode mode

Définit le mode pinentry sur mode. Les valeurs autorisées pour mode sont :

default

Utilise la valeur par défaut de l’agent, qui est ask.


ask    Force l’utilisation de Pinentry.

cancel Simule l’utilisation du bouton « Annuler » de Pinentry.

error  Retourne une erreur Pinentry (« Pas de Pinentry »).

loopback

Redirige les requêtes Pinentry vers l’appelant. Notez que contrairement à Pinentry, l’utilisateur n’est pas invité à nouveau s’il entre un mot de passe incorrect.

--no-symkey-cache

Désactive la mémoire cache de phrases secrètes utilisée pour le chiffrement et le déchiffrement symétriques. Cette mémoire cache est basée sur la valeur de sel spécifique au message (cf. --s2k-mode).

--request-origin origin

Indique à gpg de supposer que l’opération a finalement été initiée à partir d’« origin ». En fonction de l’origine, certaines restrictions sont appliquées et Pinentry peut inclure une note supplémentaire sur l’origine. Les valeurs prises en charge pour « origin » sont : local, qui est la valeur par défaut, remote pour indiquer une origine distante, ou browser pour une opération demandée par un navigateur web.

--command-fd n

Ceci remplace le mode d’IPC basé sur la mémoire partagée, qui est obsolète. Si cette option est activée, l’entrée utilisateur pour les questions n’est pas attendue à partir du TTY, mais à partir du descripteur de fichier donné. Elle doit être utilisée avec --status-fd. Voir le fichier doc/DETAILS dans la distribution source pour plus de détails sur la façon de l’utiliser.

--command-file file

Identique à --command-fd, sauf que les commandes sont lues à partir du fichier « file ».

--allow-non-selfsigned-uid
--no-allow-non-selfsigned-uid

Autorise l’importation et l’utilisation de clés avec des ID d’utilisateur qui ne sont pas auto-signés. Ceci n’est pas recommandé, car un ID d’utilisateur non auto-signé est trivial à falsifier. --no-allow-non-selfsigned-uid désactive cette option.

--allow-freeform-uid

Désactive tous les contrôles sur le format de l’ID d’utilisateur lors de la génération d’un nouvel ID. Cette option ne doit être utilisée que dans des environnements très spécifiques, car elle ne garantit pas le format standard de facto des ID d’utilisateur.

--ignore-time-conflict

GnuPG vérifie normalement que les horodatages associés aux clés et aux signatures ont des valeurs plausibles. Cependant, parfois, une signature semble être plus ancienne que la clé en raison de problèmes d’horloge. Cette option transforme ces vérifications en un simple avertissement. Voir également --ignore-valid-from pour les problèmes d’horodatage sur les sous-clés.

--ignore-valid-from

GnuPG ne sélectionne et n’utilise normalement pas les sous-clés créées dans le futur. Cette option permet l’utilisation de ces clés et présente ainsi le comportement antérieur à la version 1.0.7. Vous ne devez pas utiliser cette option, sauf s’il existe un problème d’horloge. Voir également --ignore-time-conflict pour les problèmes d’horodatage avec les signatures.

--ignore-crc-error

L’armure ASCII utilisée par OpenPGP est protégée par une somme de contrôle CRC contre les erreurs de transmission. Parfois, la CRC est altérée quelque part dans le canal de transmission, mais le contenu réel (qui est protégé par le protocole OpenPGP) est toujours correct. Cette option permet à GnuPG d’ignorer les erreurs CRC.

--ignore-mdc-error

Cette option transforme un échec de la protection d’intégrité MDC en un avertissement. Elle est nécessaire pour déchiffrer les anciens messages qui n’utilisaient pas de MDC. Elle peut également être utile si un message est partiellement corrompu, mais qu’il est nécessaire d’extraire autant de données que possible de ce message corrompu. Soyez conscient qu’un MDC manquant ou défaillant peut être une indication d’une attaque. Utilisez cette option avec beaucoup de prudence ; voir également l’option --rfc2440.


--allow-old-cipher-algos

Les anciens algorithmes de chiffrement comme 3DES, IDEA ou CAST5 chiffrent les données en utilisant des blocs de 64 bits ; les algorithmes modernes utilisent des blocs de 128 bits. Pour éviter certaines attaques sur ces anciens algorithmes, il est conseillé de ne pas chiffrer plus de 150 Mo en utilisant la même clé. Pour cette raison, gpg n'autorise pas l'utilisation d'algorithmes de taille de bloc de 64 bits pour le chiffrement, sauf si cette option est spécifiée. Certains modes de conformité définissent ou effacent déjà ce drapeau, et ce drapeau doit donc être utilisé après le réglage d'un mode de conformité.

--allow-weak-digest-algos

Les signatures créées avec des algorithmes de hachage connus pour être faibles sont normalement rejetées avec un message « algorithme de hachage invalide ». Cette option permet de vérifier les signatures créées avec de tels algorithmes faibles. MD5 est le seul algorithme de hachage considéré comme faible par défaut. Voir également --weak-digest pour rejeter d'autres algorithmes de hachage.

--weak-digest name

Traitez l'algorithme de hachage spécifié comme étant faible. Les signatures créées sur des algorithmes de hachage faibles sont normalement rejetées. Cette option peut être fournie plusieurs fois si plusieurs algorithmes doivent être considérés comme faibles. Voir également --allow-weak-digest-algos pour désactiver le rejet des hachages faibles. MD5 est toujours considéré comme faible et n'a pas besoin d'être répertorié explicitement.

--allow-weak-key-signatures

Pour éviter un risque mineur d'attaques par collision sur les signatures de clés tierces créées à l'aide de SHA-1, ces signatures de clés sont considérées comme non valides. Cette option permet de remplacer cette restriction.

--override-compliance-check

Cette option a été introduite temporairement et n'a plus d'effet.

--no-default-keyring

N'ajoutez pas le trousseau de clés par défaut à la liste des trousseaux de clés. Notez que GnuPG a besoin d'un trousseau de clés pour presque toutes les opérations. Ainsi, si vous utilisez cette option et que vous ne fournissez pas de trousseaux de clés alternatifs via --keyring, GnuPG utilisera quand même le trousseau de clés par défaut.

Notez que si l'option use-keyboxd est activée dans « common.conf », aucun trousseau de clés n'est utilisé et toutes les clés sont gérées par le processus keyboxd dans sa propre base de données.

--no-keyring

N'utilisez aucun trousseau de clés. Cela remplace la valeur par défaut et toutes les options qui spécifient les trousseaux de clés.

--skip-verify

Ignorez l'étape de vérification de la signature. Cela peut être utilisé pour accélérer le déchiffrement si la vérification de la signature n'est pas nécessaire.

--with-key-data

Affichez les listes de clés délimitées par des deux-points (comme --with-colons) et affichez les données de clé publique.

--list-signatures
--list-sigs

Identique à --list-keys, mais les signatures sont également affichées. Cette commande a le même effet que l'utilisation de --list-keys avec --with-sig-list. Notez qu'en contraste avec --check-signatures, les signatures de clés ne sont pas vérifiées. Cette commande peut être utilisée pour créer une liste de clés de signature manquantes dans le trousseau de clés local ; par exemple :


gpg --list-sigs --with-colons USERID | \
awk -F: '$1=="sig" && $2=="?" {if($13){print $13}else{print $5}}'

--fast-list-mode
Modifie la sortie des commandes de liste pour un fonctionnement plus rapide ; cela est obtenu en laissant certaines parties vides. Certaines applications n’ont pas besoin de l’ID utilisateur et des informations de confiance fournies dans les listes. En utilisant ces options, elles peuvent obtenir une liste plus rapide. Le comportement exact de cette option peut changer dans les versions futures. Si certaines informations vous manquent, n’utilisez pas cette option.

--no-literal
Ce n’est pas pour une utilisation normale. Consultez le code source pour savoir à quoi cela pourrait servir.

--set-filesize
Ce n’est pas pour une utilisation normale. Consultez le code source pour savoir à quoi cela pourrait servir.

--show-session-key
Affiche la clé de session utilisée pour un message. Voir --override-session-key pour l’option correspondante.

Nous pensons que le dépôt de clés est une mauvaise chose ; cependant, l’utilisateur doit avoir le droit de décider s’il préfère aller en prison ou révéler le contenu d’un message spécifique sans compromettre tous les messages jamais chiffrés pour une clé secrète.

Vous pouvez également utiliser cette option si vous recevez un message chiffré qui est abusif ou offensant, afin de prouver aux administrateurs du système de messagerie que le texte chiffré correspond à un texte brut inapproprié, afin qu’ils puissent prendre des mesures contre l’utilisateur fautif.

--override-session-key string
--override-session-key-fd fd
N’utilisez pas la clé publique, mais la clé de session (string) ou la clé de session lue à partir de la première ligne du descripteur de fichier fd. Le format de cette chaîne est le même que celui affiché par --show-session-key. Cette option n’est normalement pas utilisée, mais elle peut être utile si quelqu’un vous force à révéler le contenu d’un message chiffré ; en utilisant cette option, vous pouvez le faire sans divulguer la clé secrète. Notez que l’utilisation de --override-session-key peut révéler la clé de session à tous les utilisateurs locaux via la table des processus globale. Il est souvent utile de combiner cette option avec --no-keyring.

--ask-sig-expire
--no-ask-sig-expire
Lors de la création d’une signature de données, demander une date d’expiration. Si cette option n’est pas spécifiée, la date d’expiration définie via --default-sig-expire est utilisée. --no-ask-sig-expire désactive cette option.

--default-sig-expire
La date d’expiration par défaut à utiliser pour la signature. Les valeurs valides sont : « 0 » pour aucune expiration, un nombre suivi de la lettre d (pour les jours), w (pour les semaines), m (pour les mois) ou y (pour les années) (par exemple, « 2 m » pour deux mois, ou « 5 y » pour cinq ans), ou une date absolue au format AAAA-MM-JJ. La valeur par défaut est « 0 ».

--ask-cert-expire
--no-ask-cert-expire
Lors de la création d’une signature de clé, demander une date d’expiration. Si cette option n’est pas spécifiée, la date d’expiration définie via --default-cert-expire est utilisée. --no-ask-cert-expire désactive cette option.

--default-cert-expire
La date d’expiration par défaut à utiliser pour la signature de clé. Les valeurs valides sont : « 0 » pour aucune expiration, un nombre suivi de la lettre d (pour les jours), w (pour les semaines), m (pour les mois) ou y (pour les années) (par exemple, « 2 m » pour deux mois, ou « 5 y » pour cinq ans), ou une date absolue au format AAAA-MM-JJ.

--default-new-key-algo string

Cette option peut être utilisée pour modifier les algorithmes par défaut pour la génération de clés. La chaîne de caractères est similaire aux arguments requis pour la commande --quick-add-key, mais légèrement différente. Vous devez consulter le code source pour connaître les détails. Notez que les commandes avancées de génération de clés peuvent toujours être utilisées pour spécifier directement un algorithme de clé. Définir un mode de conformité définira ou effacera ce drapeau, il ne doit donc être utilisé qu'après le réglage d'un mode de conformité.

--no-auto-trust-new-key

Lors de la création d'une nouvelle clé, la valeur ownertrust de la nouvelle clé est définie sur ultimate. Cette option désactive cette fonctionnalité et l'utilisateur doit attribuer manuellement une valeur ownertrust.

--force-sign-key

Cette option modifie le comportement des commandes --quick-sign-key, --quick-lsign-key et des sous-commandes "sign" de --edit-key en forçant la création d'une signature de clé, même si elle existe déjà.

--forbid-gen-key

Cette option est destinée à être utilisée dans le fichier de configuration global pour interdire l'utilisation des commandes de génération de clés. Ces commandes échoueront alors avec le code d'erreur "Not Enabled".

--allow-secret-key-import

Cette option est obsolète et n'est utilisée nulle part.

--allow-multiple-messages

--no-allow-multiple-messages

Ce sont des options obsolètes ; elles n'ont plus d'effet depuis GnuPG 2.2.8.

--enable-special-filenames

Cette option active un mode dans lequel les noms de fichiers de la forme '-&n', où n est un nombre décimal non négatif, font référence au descripteur de fichier n et non à un fichier portant ce nom.

--no-expensive-trust-checks

Utilisation expérimentale uniquement.

--preserve-permissions

Ne modifiez pas les permissions d'un trousseau de clés privées pour qu'elles redeviennent en lecture/écriture pour l'utilisateur uniquement. N'utilisez cette option que si vous savez vraiment ce que vous faites.

--default-preference-list string

Définissez la liste des préférences par défaut sur string. Cette liste de préférences est utilisée pour les nouvelles clés et devient la valeur par défaut pour "setpref" dans le menu --edit-key.

--default-keyserver-url name

Définissez l'URL du serveur de clés par défaut sur name. Ce serveur de clés sera utilisé comme URL du serveur de clés lors de l'écriture d'une auto-signature sur une clé, ce qui inclut la génération de clés et la modification des préférences.

--list-config

Affiche divers paramètres de configuration internes de GnuPG. Cette option est destinée aux programmes externes qui appellent GnuPG pour effectuer des tâches, et n'est donc généralement pas utile. Consultez le fichier « doc/DETAILS » dans la distribution source pour connaître les détails des éléments de configuration qui peuvent être répertoriés. --list-config ne peut être utilisé qu'avec l'option --with-colons.

--list-gcrypt-config

Affiche divers paramètres de configuration internes de Libgcrypt.

--gpgconf-list

Cette commande est similaire à --list-config mais est généralement utilisée en interne par l'outil gpgconf.


--gpgconf-test

Il s'agit en quelque sorte d'une action factice. Cependant, elle analyse le fichier de configuration et renvoie une erreur si le fichier de configuration empêcherait le démarrage de gpg. Ainsi, elle peut être utilisée pour effectuer une vérification de la syntaxe du fichier de configuration.

--chuid uid

Modifie l'utilisateur actuel en uid, qui peut être un nombre ou un nom. Cela peut être utilisé à partir du compte root pour exécuter gpg pour un autre utilisateur. Si uid n'est pas l'UID actuel, un PATH standard est défini et la variable d'environnement GNUPGHOME est effacée. Pour remplacer cette dernière, l'option --homedir peut être utilisée. Cette option n'a d'effet que lorsqu'elle est utilisée sur la ligne de commande. Cette option n'a actuellement aucun effet sur Windows.

Options obsolètes

-t, --textmode
--no-textmode

Traite les fichiers d'entrée comme du texte et les stocke dans le format texte canonique OpenPGP avec les fins de ligne "CRLF" standard. Cela définit également les indicateurs nécessaires pour informer le destinataire que les données chiffrées ou signées sont du texte et que leurs fins de ligne peuvent devoir être reconverties en fonction du système local. Cette option était utile lors de la communication entre deux plateformes avec des conventions de fin de ligne différentes (UNIX-like vers Mac, Mac vers Windows, etc.). --no-textmode désactive cette option, et c'est la valeur par défaut. Notez qu'il s'agit d'une option héritée qui ne devrait plus être utilisée par aucun logiciel moderne.

--force-v3-sigs
--no-force-v3-sigs

--force-v4-certs
--no-force-v4-certs

Ces options sont obsolètes et n'ont plus d'effet depuis GnuPG 2.1.

--show-photos
--no-show-photos

Force les commandes --list-keys, --list-signatures, --list-public-keys, --list-secret-keys et la vérification d'une signature à afficher également l'ID de photo associé à la clé, le cas échéant. Voir également --photo-viewer. Ces options sont obsolètes. Utilisez --list-options [no-]show-photos et/ou --verify-options [no-]show-photos à la place.

--show-keyring

Affiche le nom du trousseau de clés en haut des listes de clés pour indiquer sur quel trousseau de clés se trouve une clé donnée. Cette option est obsolète : utilisez --list-options [no-]show-keyring à la place.

--show-notation
--no-show-notation

Affiche les annotations de signature dans les listes --list-signatures ou --check-signatures ainsi que lors de la vérification d'une signature avec une annotation. Ces options sont obsolètes. Utilisez --list-options [no-]show-notation et/ou --verify-options [no-]show-notation à la place.

--show-policy-url
--no-show-policy-url

Affiche les URL de stratégie dans les listes --list-signatures ou --check-signatures ainsi que lors de la vérification d'une signature avec une URL de stratégie. Ces options sont obsolètes. Utilisez --list-options [no-]show-policy-url et/ou --verify-options [no-]show-policy-url à la place.

--personal-aead-preferences string

Cette option est obsolète et n'a plus d'effet depuis la version 2.3.9.

--aead-algo name

Cette option est obsolète et n'a plus d'effet depuis la version 2.3.9.

EXEMPLES

gpg -se -r Bob file

signe et chiffre pour l'utilisateur Bob


gpg --clear-sign file
crée une signature en texte clair

gpg -sb file
crée une signature détachée

gpg -u 0x12345678 -sb file
crée une signature détachée avec la clé 0x12345678

gpg --list-keys user_ID
affiche les clés

gpg --fingerprint user_ID
affiche l’empreinte digitale

gpg --verify pgpfile
gpg --verify sigfile [datafile]
Vérifie la signature du fichier, mais n’affiche pas les données, sauf si demandé. La deuxième
forme est utilisée pour les signatures détachées, où sigfile est la signature détachée (au format ASCII ou binaire) et datafile sont les données signées ; si cela n’est pas spécifié, le nom du fichier contenant les données signées est construit en supprimant l’extension (".asc" ou ".sig") de sigfile ou en demandant le nom de fichier à l’utilisateur. Si l’option --output est également utilisée, les données signées sont écrites dans le fichier spécifié par cette option ; utilisez - pour écrire les données signées dans stdout.

COMMENT SPÉCIFIER UN ID UTILISATEUR

Il existe différentes manières de spécifier un ID utilisateur à GnuPG. Certaines de ces méthodes ne sont valables que pour gpg, tandis que d’autres ne sont valables que pour gpgsm. Voici la liste complète des manières de spécifier une clé :

Par ID de clé. Ce format est déduit de la longueur de la chaîne et de son contenu ou du préfixe 0x. L’ID de clé d’un certificat X.509 est les 64 bits inférieurs de son empreinte digitale SHA-1. L’utilisation des ID de clé n’est qu’un raccourci, pour tout traitement automatisé, l’empreinte digitale doit être utilisée.

Lors de l’utilisation de gpg, un point d’exclamation (!) peut être ajouté pour forcer l’utilisation de la clé primaire ou secondaire spécifiée, et pour ne pas essayer de calculer quelle clé primaire ou secondaire utiliser.

Dans les quatre dernières lignes de l’exemple, l’ID de clé est donné sous sa forme longue, telle qu’elle est utilisée en interne par le protocole OpenPGP. Vous pouvez voir l’ID de clé longue à l’aide de l’option --with-colons.

2345674
034E556E
0134756A
0AB123456

234ABBCC34567C4
0323456784E56EAB
01B3FED1347A5612
0234AABBCC34567C4

Par empreinte digitale. Ce format est déduit de la longueur de la chaîne et de son contenu ou du préfixe 0x. Notez que seule la version de 20 octets de l’empreinte digitale est disponible avec gpgsm (c’est-à-dire le hachage SHA-1 du certificat).

Lors de l’utilisation de gpg, un point d’exclamation (!) peut être ajouté pour forcer l’utilisation de la clé primaire ou secondaire spécifiée, et pour ne pas essayer de calculer quelle clé primaire ou secondaire utiliser.

La meilleure façon de spécifier un ID de clé est d’utiliser l’empreinte digitale. Cela évite toute ambiguïté dans le cas où il y aurait des ID de clé dupliqués.

1234343434343434434343434343434
1234343434343433434343434343734349A3434
012343434343434343434EAB3484343434343434
0E12343434343434343434EAB3484343434343434

gpgsm accepte également des deux-points entre chaque paire de chiffres hexadécimaux, car c’est la norme de facto pour la présentation des empreintes digitales X.509. gpg permet également l’utilisation de l’empreinte digitale SHA-1 séparée par des espaces, telle qu’elle est affichée par les commandes de liste des clés.

Par correspondance exacte de l’ID utilisateur OpenPGP. Ceci est indiqué par un signe égal en tête. Cela n’a pas de sens pour les certificats X.509.

=Heinrich Heine <_>

Par correspondance exacte d’une adresse e-mail. Ceci est indiqué en plaçant l’adresse e-mail entre les chevrons habituels.


<_>

Par correspondance partielle d'une adresse e-mail. Cela est indiqué en préfixant la chaîne de recherche avec un @. Cela utilise une recherche de sous-chaîne mais ne prend en compte que l'adresse e-mail (c'est-à-dire à l'intérieur des chevrons).

@heinrichh

Par correspondance exacte du DN du sujet. Cela est indiqué par un slash en tête, suivi directement par le DN encodé RFC-2253 du sujet. Notez que vous ne pouvez pas utiliser la chaîne affichée par gpgsm --list-keys, car celle-ci a été réorganisée et modifiée pour une meilleure lisibilité ; utilisez --with-colons pour afficher la chaîne brute (mais standard et échappée) au format RFC-2253.

/CN=Heinrich Heine,O=Poets,L=Paris,C=FR

Par correspondance exacte du DN de l'émetteur. Cela est indiqué par un signe dièse en tête, suivi d'un slash, puis directement suivi du DN encodé RFC-2253 de l'émetteur. Cela doit renvoyer le certificat racine de l'émetteur. Voir la note ci-dessus.

#/CN=Root Cert,O=Poets,L=Paris,C=FR

Par correspondance exacte du numéro de série et du DN de l'émetteur. Cela est indiqué par un signe dièse, suivi de la représentation hexadécimale du numéro de série, puis suivi d'un slash et du DN encodé RFC-2253 de l'émetteur. Voir la note ci-dessus.

#4F03/CN=Root Cert,O=Poets,L=Paris,C=FR

Par keygrip. Cela est indiqué par un esperluette suivi des 40 chiffres hexadécimaux d'un keygrip. gpgsm affiche le keygrip lorsqu'il utilise la commande --dump-cert.

&D75F22C3F86E355877348498CDC92BD21010A480

Par correspondance de sous-chaîne. C'est le mode par défaut, mais les applications peuvent souhaiter l'indiquer explicitement en plaçant l'astérisque en tête. La correspondance n'est pas sensible à la casse.

Heine *Heine

Préfixes . et +

Ces préfixes sont réservés à la recherche d'e-mails ancrés à la fin et pour un mode de recherche de mots. Ils ne sont pas encore implémentés et leur utilisation est indéfinie.

Veuillez noter que nous avons réutilisé l'identificateur de signe dièse qui était utilisé dans les anciennes versions de GnuPG pour indiquer ce qu'on appelait le "local-id". Il n'est plus utilisé et il ne devrait pas y avoir de conflit lors de son utilisation avec des éléments X.509.

L'utilisation du format RFC-2253 des DN présente l'inconvénient qu'il n'est pas possible de les remapper à l'encodage d'origine, mais nous n'avons pas besoin de le faire car notre base de données de clés stocke cet encodage sous forme de métadonnées.

EXPRESSIONS DE FILTRE

Les options --import-filter et --export-filter utilisent des expressions avec cette syntaxe (les crochets indiquent une partie facultative et les accolades une répétition, les espaces entre les éléments sont autorisés) :

[lc] {[{flag}] PROPNAME op VALUE [lc]}

Le nom d'une propriété (PROPNAME) ne peut contenir que des lettres, des chiffres et des tirets bas. La description du type de filtre décrit les propriétés définies. Si une propriété non définie est utilisée, elle est évaluée à une chaîne vide. Sauf indication contraire, la VALEUR doit toujours être fournie et ne peut pas être une chaîne vide. Aucun guillemet n'est défini pour la valeur, la valeur ne peut donc pas contenir les chaînes && ou ||, qui sont utilisées comme opérateurs de connexion logiques. L'indicateur -- peut être utilisé pour supprimer cette restriction.


Les valeurs numériques sont calculées en tant que long int ; la notation C standard s’applique. lc est l’opérateur de connexion logique : && pour une conjonction ou || pour une disjonction. Une conjonction est supposée au début d’une expression. Les conjonctions ont une priorité plus élevée que les disjonctions. Si VALUE commence par l’un des caractères utilisés dans un opérateur, un espace après l’opérateur est requis.

Les opérateurs pris en charge (op) sont :

=~  La sous-chaîne doit correspondre.

!~  La sous-chaîne ne doit pas correspondre.

=   La chaîne entière doit correspondre.

<>  La chaîne entière ne doit pas correspondre.

==  La valeur numérique doit correspondre.

!=  La valeur numérique ne doit pas correspondre.

<=  La valeur numérique du champ doit être inférieure ou égale à la valeur.

<   La valeur numérique du champ doit être inférieure à la valeur.

>   La valeur numérique du champ doit être supérieure à la valeur.

>=  La valeur numérique du champ doit être supérieure ou égale à la valeur.

-le La valeur de chaîne du champ doit être inférieure ou égale à la valeur.

-lt La valeur de chaîne du champ doit être inférieure à la valeur.

-gt La valeur de chaîne du champ doit être supérieure à la valeur.

-ge La valeur de chaîne du champ doit être supérieure ou égale à la valeur.

-n  Vrai si la valeur n’est pas vide (aucune valeur autorisée).

-z  Vrai si la valeur est vide (aucune valeur autorisée).

-t  Alias de « `PROPNAME != 0` » (aucune valeur autorisée).

-f  Alias de « `PROPNAME == 0` » (aucune valeur autorisée).

Les valeurs pour flag doivent être séparées par des espaces. Les flags pris en charge sont :

--  `VALUE` s’étend jusqu’à la fin de l’expression.

-c  La correspondance de chaîne dans cette partie est effectuée en respectant la casse.

-t  Les espaces de début et de fin ne sont pas supprimés de `VALUE`. L’espace unique facultatif après l’opérateur est requis ici.

Les options de filtre concatènent plusieurs spécifications pour un filtre du même type. Par exemple, les quatre options de cet exemple :

--import-filter keep-uid="uid =~ Alfa"
--import-filter keep-uid="&& uid !~ Test"
--import-filter keep-uid="|| uid =~ Alpha"
--import-filter keep-uid="uid !~ Test"

qui est équivalent à

--import-filter \
keep-uid="uid =~ Alfa" && uid !~ Test" || uid =~ Alpha" && "uid !~ Test"

importe uniquement les ID utilisateur d’une clé contenant les chaînes « Alfa » ou « Alpha » mais pas la chaîne « Test ».

VALEURS DE CONFIANCE

Les valeurs de confiance sont utilisées pour indiquer la confiance accordée au propriétaire et la validité des clés et des ID utilisateur. Elles sont affichées avec des lettres ou des chaînes :

unknown

Aucune confiance accordée au propriétaire / non encore calculée.

e
expired

Le calcul de la confiance a échoué ; probablement en raison d’une clé expirée.

q
undefined, undef

Pas assez d’informations pour le calcul.

n
never

Ne jamais faire confiance à cette clé.

m
marginal

Confiance marginale.

f
full

Confiance totale.

u
ultimate

Confiance ultime.

r
revoked

Uniquement pour la validité : la clé ou l’ID utilisateur a été révoqué.

?
err

Le programme a rencontré une valeur de confiance inconnue.

FICHIERS

Il existe quelques fichiers de configuration pour contrôler certains aspects du fonctionnement de gpg. Sauf indication contraire, ils doivent se trouver dans le répertoire personnel actuel (voir : [option --homedir]).


gpg.conf

Il s'agit du fichier de configuration standard lu par gpg au démarrage. Il peut contenir n'importe quelle option longue valide ; les deux tirets initiaux ne doivent pas être saisis et l'option ne doit pas être abrégée. Ce nom par défaut peut être modifié sur la ligne de commande (voir : [gpg-option --options]). Vous devez sauvegarder ce fichier.

common.conf

Il s'agit d'un fichier de configuration facultatif lu par gpg au démarrage. Il peut contenir des options applicables à tous les composants de GnuPG. Son utilisation principale actuelle est pour l'option « use-keyboxd ». Si le répertoire personnel par défaut « ~/.gnupg » n'existe pas, GnuPG crée ce répertoire et un fichier « common.conf » avec « use-keyboxd ».

Notez que, dans les installations plus importantes, il est utile de placer des fichiers prédéfinis dans le répertoire « /etc/skel/.gnupg » afin que les nouveaux utilisateurs démarrent avec une configuration fonctionnelle. Pour les utilisateurs existants, un petit script d'aide est fourni pour créer ces fichiers (voir : [addgnupghome]).

À des fins internes, gpg crée et maintient quelques autres fichiers ; ils se trouvent tous dans le répertoire personnel actuel (voir : [option --homedir]). Seul le programme gpg peut modifier ces fichiers.

~/.gnupg

Il s'agit du répertoire personnel par défaut qui est utilisé si ni la variable d'environnement GNUPGHOME ni l'option --homedir n'est spécifiée.

~/.gnupg/pubring.gpg

Le trousseau de clés publiques utilisant un format hérité. Vous devez sauvegarder ce fichier.

Si ce fichier n'est pas disponible, gpg utilise par défaut le nouveau format de trousseau de clés et crée un fichier « pubring.kbx » à moins que ce fichier n'existe déjà, auquel cas ce fichier sera également utilisé pour les clés OpenPGP.

Notez que, dans le cas où les deux fichiers, « pubring.gpg » et « pubring.kbx », existent mais que ce dernier ne contient pas de clés OpenPGP, le fichier hérité « pubring.gpg » sera utilisé. Soyez prudent : les versions de GnuPG antérieures à 2.1 utiliseront toujours le fichier « pubring.gpg » car elles ne connaissent pas le nouveau format de trousseau de clés. Dans le cas où vous devez utiliser GnuPG 1.4 pour déchiffrer des données archivées, vous devez conserver ce fichier.

~/.gnupg/pubring.gpg.lock

Le fichier de verrouillage du trousseau de clés publiques.

~/.gnupg/pubring.kbx

Le trousseau de clés publiques utilisant le nouveau format de trousseau de clés. Ce fichier est partagé avec gpgsm. Vous devez sauvegarder ce fichier. Voir ci-dessus pour la relation entre ce fichier et son prédécesseur.

Pour convertir un fichier « pubring.gpg » existant vers le format de trousseau de clés, vous devez d'abord sauvegarder les valeurs « ownertrust », puis renommer « pubring.gpg » en « publickeys.backup », afin qu'il ne soit pas reconnu par une version de GnuPG, exécuter la commande import, puis restaurer les valeurs « ownertrust » :

$ cd ~/.gnupg
$ gpg --export-ownertrust >otrust.lst
$ mv pubring.gpg publickeys.backup
$ gpg --import-options restore --import publickeys.backup
$ gpg --import-ownertrust otrust.lst

~/.gnupg/pubring.kbx.lock

Le fichier de verrouillage de « pubring.kbx ».

~/.gnupg/secring.gpg

Le trousseau de clés privées hérité tel qu'utilisé par les versions de GnuPG antérieures à 2.1. Il n'est pas utilisé par GnuPG 1 et les versions ultérieures. Vous pouvez éventuellement le conserver au cas où vous devriez utiliser GnuPG 1.4 pour déchiffrer des données archivées.


~/.gnupg/secring.gpg.lock

Le fichier de verrouillage pour l’anneau de clés sec hérité.

~/.gnupg/.gpg-v21-migrated

Fichier indiquant qu’une migration vers GnuPG 2.1 a été effectuée.

~/.gnupg/trustdb.gpg

La base de données de confiance. Il n’est pas nécessaire de sauvegarder ce fichier ; il est préférable de sauvegarder les valeurs d’ownertrust (voir : [option --export-ownertrust]).

~/.gnupg/trustdb.gpg.lock

Le fichier de verrouillage pour la base de données de confiance.

~/.gnupg/random_seed

Un fichier utilisé pour conserver l’état du pool de nombres aléatoires interne.

~/.gnupg/openpgp-revocs.d/

C’est le répertoire où gpg stocke les certificats de révocation pré-générés. Le nom du fichier correspond à l’empreinte OpenPGP de la clé respective. Il est conseillé de sauvegarder ces certificats et, si la clé privée principale n’est pas stockée sur le disque, de les déplacer vers un périphérique de stockage externe. Toute personne ayant accès à ces fichiers est en mesure de révoquer la clé correspondante. Vous pouvez les imprimer. Vous devez sauvegarder tous les fichiers de ce répertoire et veiller à ce que cette sauvegarde soit conservée en lieu sûr.

Le fonctionnement est également contrôlé par quelques variables d’environnement :

HOME Utilisé pour localiser le répertoire personnel par défaut.

GNUPGHOME Si défini, le répertoire utilisé à la place de « ~/.gnupg ».

GPG_AGENT_INFO

Cette variable est obsolète ; elle était utilisée par les versions de GnuPG antérieures à 2.1.

PINENTRY_USER_DATA

Cette valeur est transmise via gpg-agent à pinentry. Il est utile de transmettre des informations supplémentaires à un pinentry personnalisé.

COLUMNS
LINES Utilisé pour dimensionner certains affichages à la taille réelle de l’écran.

LANGUAGE

En plus de son utilisation par GNU, il est utilisé dans la version W32 pour remplacer la sélection de la langue effectuée via le Registre. Si elle est utilisée et définie sur un nom de langue valide et disponible (langid), le fichier contenant la traduction est chargé à partir de gpgdir/gnupg.nls/langid.mo. Ici, gpgdir est le répertoire à partir duquel le binaire gpg a été chargé. S’il ne peut pas être chargé, le Registre est essayé et, en dernier recours, le système de langue natif de Windows est utilisé.

GNUPG_BUILD_ROOT

Cette variable est uniquement utilisée par la suite de tests de régression en tant qu’aide sur les systèmes d’exploitation sans prise en charge appropriée pour déterminer le nom du fichier texte d’un processus.

GNUPG_EXEC_DEBUG_FLAGS

Cette variable permet d’activer les diagnostics pour la gestion des processus. Une valeur décimale numérique est attendue. Le bit 0 active les diagnostics généraux, le bit 1 active certains avertissements sur Windows.

Lorsque le composant gpg-agent est appelé, gpg envoie un ensemble de variables d’environnement à gpg-agent. Les noms de ces variables peuvent être répertoriés à l’aide de la commande :

gpg-connect-agent 'getinfo std_env_names' /bye | awk '$1=="D" {print $2}'

NOTES

gpg est souvent utilisé comme moteur de traitement par d’autres logiciels. Pour faciliter cela, une interface machine a été définie pour avoir une méthode non ambiguë pour ce faire. Les options --status-fd et --batch sont presque toujours requises pour cela.


Utilisation programmatique de GnuPG

Veuillez envisager d’utiliser GPGME au lieu d’appeler directement gpg. GPGME offre une interface stable et indépendante du backend pour de nombreuses opérations cryptographiques. Il prend en charge OpenPGP et S/MIME, et permet également d’interagir avec divers composants de GnuPG.

GPGME fournit une API C et est livré avec des liaisons pour C++, Qt et Python. Des liaisons pour d’autres langages sont disponibles.

Répertoires personnels éphémères

Parfois, vous souhaitez isoler les effets d’une opération. Par exemple, vous souhaitez importer une clé pour l’inspecter, mais vous ne voulez pas que cette clé soit ajoutée à votre trousseau. Dans les versions antérieures de GnuPG, il était possible de spécifier des fichiers de trousseau alternatifs pour les clés publiques et privées. Cependant, dans les versions modernes de GnuPG, nous avons modifié la façon dont les clés privées sont stockées afin de mieux protéger le matériel de clé privée, et il n’était plus possible de conserver cette interface.

La méthode préférée consiste à utiliser des répertoires personnels éphémères. Cette technique fonctionne avec toutes les versions de GnuPG.

Créez un répertoire temporaire, créez (ou copiez) une configuration qui répond à vos besoins, et faites en sorte que gpg utilise ce répertoire, soit en utilisant la variable d’environnement GNUPGHOME, soit en utilisant l’option --homedir. GPGME prend également cela en charge, par contexte, en modifiant les informations du moteur des contextes. Ensuite, exécutez l’opération souhaitée, importez et exportez le matériel de clé si nécessaire. Une fois terminé, vous pouvez supprimer le répertoire. Tous les services backend GnuPG qui ont été démarrés détecteront cela et s’arrêteront.

L’interface de manipulation rapide des clés

Les versions récentes de GnuPG disposent d’une interface pour manipuler les clés sans utiliser la commande interactive --edit-key. Cette interface a été ajoutée principalement pour le bénéfice de GPGME (veuillez envisager d’utiliser GPGME, voir la sous-section du manuel « Utilisation programmatique de GnuPG »). Cette interface est décrite dans la sous-section « Comment gérer vos clés ».

Génération de clés sans assistance

La commande --generate-key peut être utilisée avec l’option --batch pour une génération de clés sans assistance. Il s’agit de la méthode la plus flexible pour générer des clés, mais c’est aussi la plus complexe. Envisagez d’utiliser l’interface de manipulation rapide des clés décrite dans la sous-section précédente « L’interface de manipulation rapide des clés ».

Les paramètres de la clé sont lus à partir de l’entrée standard ou sont fournis dans un fichier sur la ligne de commande. Le format du fichier de paramètres est le suivant : texte uniquement, la longueur de la ligne est limitée à environ 1000 caractères. L’encodage UTF-8 doit être utilisé pour spécifier les caractères non ASCII. Les lignes vides sont ignorées. Les espaces blancs en début et en fin de ligne sont ignorés. Une ligne commençant par un signe dièse indique une ligne de commentaire. Les instructions de contrôle sont indiquées par un signe pourcentage en début de ligne, et leurs arguments sont séparés par des espaces du mot-clé. Les paramètres sont spécifiés par un mot-clé, suivi de deux points ; les arguments sont séparés par des espaces. Le premier paramètre doit être « Key-Type », mais les instructions de contrôle peuvent être placées n’importe où. L’ordre des paramètres n’a pas d’importance, sauf pour « Key-Type ». Les paramètres ne sont utilisés que pour le bloc de clés généré (clé primaire et sous-clés) ; les paramètres des ensembles précédents ne sont pas utilisés. Certaines vérifications de syntaxe peuvent être effectuées. La génération de clé se termine lorsque la fin du fichier de paramètres est atteinte, qu’un nouveau paramètre « Key-Type » est rencontré, ou que l’instruction de contrôle « %commit » est rencontrée.


Instructions de contrôle :

%echo texte
Affiche le texte en tant que message de diagnostic.

%dry-run
Supprime la génération réelle de clé (utile pour la vérification de la syntaxe).

%commit
Effectue la génération de clé. Notez qu’un commit implicite est effectué au prochain paramètre.

%pubring nom_fichier
N’écrit pas la clé dans le trousseau par défaut ou celui spécifié en ligne de commande, mais dans le fichier « nom_fichier ».
Cela doit être spécifié avant le premier commit pour être pris en compte, la spécification répétée du même nom de fichier est ignorée, le dernier nom de fichier avant un commit est utilisé. Le nom de fichier est utilisé jusqu’à ce qu’un nouveau nom de fichier soit utilisé (aux points de commit), et toutes les clés sont écrites dans ce fichier. Si un nouveau nom de fichier est donné, ce fichier est créé (et remplace un fichier existant).

Consultez la sous-section précédente « Répertoires personnels éphémères » pour une méthode plus robuste de gestion des effets secondaires.

%secring nom_fichier
Cette option n’a aucun effet pour GnuPG 2.1 et versions ultérieures.

Consultez la sous-section précédente « Répertoires personnels éphémères ».

%ask-passphrase
%no-ask-passphrase
Cette option n’a aucun effet depuis GnuPG version 2.1.

%no-protection
L’utilisation de cette option permet de créer des clés sans protection par phrase de passe. Cette option est principalement destinée aux tests de régression.

%transient-key
Si cette option est spécifiée, les clés sont créées en utilisant un générateur de nombres aléatoires plus rapide et légèrement moins sécurisé. Cette option peut être utilisée pour les clés qui ne sont utilisées que pendant une courte période et qui ne nécessitent pas une sécurité cryptographique complète. Elle n’est prise en compte que si elle est utilisée conjointement avec l’instruction de contrôle « %no-protection ».

Paramètres généraux :

Key-Type : algo
Démarre un nouveau bloc de paramètres en spécifiant le type de clé primaire. L’algorithme doit être capable de signer. Il s’agit d’un paramètre obligatoire. « algo » peut être soit un numéro d’algorithme OpenPGP, soit une chaîne contenant le nom de l’algorithme. La valeur spéciale « default » peut être utilisée pour « algo » afin de créer le type de clé par défaut ; dans ce cas, « Key-Usage » ne doit pas être spécifié et « default » doit également être utilisé pour « Subkey-Type ».

Key-Length : nbits
Longueur demandée de la clé générée en bits. La valeur par défaut est renvoyée en exécutant la commande « gpg --gpgconf-list ». Pour les clés ECC, ce paramètre est ignoré.

Key-Curve : curve
La courbe elliptique demandée pour la clé générée. Il s’agit d’un paramètre obligatoire pour les clés ECC. Il est ignoré pour les clés non-ECC.

Key-Grip : hexstring
Cette option est facultative et est utilisée pour générer une CSR ou un certificat pour une clé déjà existante. Key-Length sera ignoré lorsqu’elle est spécifiée.

Key-Usage : liste_d’utilisations
Liste d’utilisations de clé délimitée par des espaces ou des virgules. Les valeurs autorisées sont « encrypt », « sign » et « auth ». Ceci est utilisé pour générer les indicateurs de clé. Assurez-vous que l’algorithme est capable de cette utilisation. Notez qu’OpenPGP exige que toutes les clés primaires soient capables de certification, de sorte que, quelle que soit l’utilisation spécifiée ici, l’indicateur « cert » sera activé. Si aucun « Key-Usage » n’est spécifié et que « Key-Type » n’est pas « default », toutes les utilisations autorisées pour cet algorithme particulier sont utilisées ; s’il n’est pas spécifié mais que « default » est utilisé, l’utilisation sera « sign ».

Subkey-Type: algo

Génère une clé secondaire (sous-clé). Actuellement, une seule sous-clé peut être gérée. Voir également « Key-Type » ci-dessus.

Subkey-Length: nbits

Longueur de la clé secondaire (sous-clé) en bits. La valeur par défaut est renvoyée en exécutant la commande « gpg --gpgconf-list ».

Subkey-Curve: curve

Courbe de clé pour une sous-clé ; similaire à « Key-Curve ».

Subkey-Usage: usage-list

Listes d’utilisation de clé pour une sous-clé ; similaire à « Key-Usage ».

Passphrase: string

Si vous souhaitez spécifier une phrase de passe pour la clé privée, entrez-la ici. Par défaut, la boîte de dialogue Pinentry est utilisée pour demander une phrase de passe.

Name-Real: name
Name-Comment: comment
Name-Email: email

Les trois parties d’un nom d’utilisateur. N’oubliez pas d’utiliser l’encodage UTF-8 ici. Si vous ne fournissez aucune de ces informations, aucun ID d’utilisateur ne sera créé.

Expire-Date: iso-date|(number[d|w|m|y])

Définissez la date d’expiration de la clé (et de la sous-clé). Elle peut être entrée au format de date ISO (par exemple, « 20000815T145012 ») ou sous forme de nombre de jours, de semaines, de mois ou d’années après la date de création. La notation spéciale « seconds=N » est également autorisée pour spécifier un nombre de secondes depuis la création. Sans lettre, les jours sont supposés. Notez qu’il n’y a pas de vérification effectuée sur le dépassement de capacité du type utilisé par OpenPGP pour les horodatages. Vous devez donc vous assurer que la valeur donnée a du sens. Bien qu’OpenPGP fonctionne avec des intervalles de temps, GnuPG utilise une valeur absolue en interne, et donc la dernière année que nous pouvons représenter est 2105.

Creation-Date: iso-date

Définissez la date de création de la clé telle qu’elle est stockée dans les informations de la clé et qui fait également partie du calcul de l’empreinte. Soit une date comme « 1986-04-26 », soit un horodatage complet comme « 19860426T042640 » peut être utilisé. L’heure est considérée comme étant UTC. La notation spéciale « seconds=N » peut être utilisée pour spécifier directement le nombre de secondes depuis l’époque (temps Unix). Si elle n’est pas fournie, l’heure actuelle est utilisée.

Preferences: string

Définissez les valeurs de préférence de chiffrement, de hachage et de compression pour cette clé. Cela attend le même type de chaîne que la sous-commande « setpref » dans le menu « --edit-key ».

Revoker: algo:fpr [sensitive]

Ajoutez un révocateur désigné à la clé générée. Algo est l’algorithme de clé publique du révocateur désigné (par exemple, RSA=1, DSA=17, etc.). fpr est l’empreinte du révocateur désigné. fpr ne peut pas contenir d’espaces ou de deux-points. L’indicateur « sensitive » facultatif marque le révocateur désigné comme une information sensible. Seules les clés v4 et v5 peuvent être des révocateurs désignés.


Keyserver : chaîne de caractères

Il s’agit d’un paramètre facultatif qui spécifie l’URL du serveur de clés préféré pour la clé.

Handle : chaîne de caractères

Il s’agit d’un paramètre facultatif qui n’est utilisé que pour les lignes d’état KEY_CREATED et KEY_NOT_CREATED. La chaîne de caractères peut contenir jusqu’à 100 caractères et ne doit pas contenir d’espaces. Il est utile pour la génération de clés par lots afin d’associer un bloc de paramètres de clé à une ligne d’état.

Voici un exemple de création d’une clé dans un répertoire personnel éphémère : $ export GNUPGHOME="$(mktemp -d)" $ cat >foo <<EOF %echo Génération d’une clé OpenPGP de base Key-Type: DSA Key-Length: 1024 Subkey-Type: ELG-E Subkey-Length: 1024 Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Effectuer une validation ici, afin de pouvoir imprimer « terminé » plus tard :-) %commit %echo done EOF $ gpg --batch --generate-key foo [...] $ gpg --list-secret-keys /tmp/tmp.0NQxB74PEf/pubring.kbx ------------------------------sec dsa1024 2016-12-16 [SCA] 768895903FC1C44045C8CB95EEBDB71E9E849D0 uid [ultimate] Joe Tester (with stupid passphrase) <_> ssb elg1024 2016-12-16 [E]

Si vous souhaitez créer une clé avec les algorithmes par défaut, vous utiliserez les paramètres suivants : %echo Génération d’une clé par défaut Key-Type: default Subkey-Type: default Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Effectuer une validation ici, afin de pouvoir imprimer « terminé » plus tard :-) %commit %echo done

BUGS

Sur les anciens systèmes, ce programme doit être installé en tant que setuid(root). Ceci est nécessaire pour verrouiller les pages de mémoire. Le verrouillage des pages de mémoire empêche le système d’exploitation d’écrire des pages de mémoire (qui peuvent contenir des phrases de passe ou d’autres informations sensibles) sur le disque. Si vous ne recevez aucun message d’avertissement concernant une mémoire non sécurisée, votre système d’exploitation prend en charge le verrouillage sans être root. Le programme abandonne les privilèges root dès que la mémoire verrouillée est allouée.

Notez également que certains systèmes (en particulier les ordinateurs portables) ont la possibilité de « suspendre sur disque » (également connu sous le nom de « mise en veille sécurisée » ou « hibernation »). Ceci écrit toute la mémoire sur le disque avant de passer dans un mode basse consommation ou même hors tension. À moins que des mesures ne soient prises dans le système d’exploitation pour protéger la mémoire enregistrée, les phrases de passe ou autres informations sensibles peuvent être récupérées ultérieurement.

Avant de signaler un bug, vous devez d’abord rechercher dans les archives de la liste de diffusion les problèmes similaires et, deuxièmement, vérifier si un tel bug a déjà été signalé à notre système de suivi des bugs à l’adresse https://bugs.gnupg.org.

VOIR AUSSI

gpgv(1), gpgsm(1), gpg-agent(1)

La documentation complète de cet outil est conservée sous forme de manuel Texinfo. Si GnuPG et le programme info sont correctement installés sur votre site, la commande

info gnupg

devrait vous donner accès au manuel complet, y compris une structure de menu et un index.