GnuPG en ligne de commande

GnuPG

Générer une paire de clés

gpg --gen-key

Signer une clé :

gpg --sign-key keyID

Liste des clés

Lister les clés publiques présentes :

gpg --list-keys

Lister les clés privées présentes :

gpg --list-secret-keys

Calculer le fingerprint d’une clé :

gpg --fingerprint keyID

Renouveler une clé

gpg --expert --edit-key 34C29329
expire
save

Exporter une clé

Clé publique :

gpg --armor --export ID > 34C29329.pub.asc

Clé privée :

gpg --armor --export-secret-key 34C29329 > 34C29329.priv.asc

Sous-clé privée :

gpg --armor --export-secret-subkeys ID > ID.sub_priv.asc

Crée un fichier appelé ‘privatekey.pgp.asc’ avec la représentation de la clé privée pour l’entrée ID().

gpg -a --export-secret-keys <keyid> | gpg -aco privatekey.pgp.asc

Ecriture clé publique dans un fichier ASCII blindé ‘publickey.asc ‘(remplacer “name@domain.com’ avec l’adresse e-mail pour votre clé).

gpg -ao publickey.asc --export name@domain.com

Serveurs de clés publiques

Exporter une clé publique sur un serveur de clé :

gpg --send-key <id> --keyserver <serveur>

Vous pouvez spécifier un serveur de clé spécifique avec l’option « ‘’–keyserver '' », c'est aussi bien pour la recherche, l'importation ou exportation de clé.

Rechercher une clé publique sur un serveur de clé :

gpg --search-keys <identifiant>

Ajouter une clé publique depuis un serveur de clé :

gpg --recv-keys <identifiant>

Révocation

Créer un certificat de révocation

On conserve précieusement ID.rev.asc à l’abri en espérant qu’il ne servira jamais.

gpg --gen-revoke ID --output ID.rev.asc

Révoquer une clé à partir d’un certificat de révocation

gpg --import 34C29329-revcert.asc
gpg --edit-key 34C29329

On constate que la clé ainsi que les sous-clés ont été révoquées :

gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

La clef secrète est disponible.

La clef suivante a été révoquée le 2014-02-23 par la clef RSA 34C29329 Prenom Nom <mail@domain.com>
pub  4096R/34C29329  créé : 2014-02-23  révoquée : 2014-02-23  utilisation : SC
                     confiance : inconnu       validité : révoquée
La clef suivante a été révoquée le 2014-02-23 par la clef RSA 34C29329 Prenom Nom <mail@domain.com>
sub  4096R/ADE52043  créé : 2014-02-23  révoquée : 2014-02-23  utilisation : E
La clef suivante a été révoquée le 2014-02-23 par la clef RSA 34C29329 Prenom Nom <mail@domain.com>
sub  4096R/B9CF7863  créé : 2014-02-23  révoquée : 2014-02-23  utilisation : S
[ révoquée] (1). Prenom Nom <mail@domain.com>

On pense à envoyer la clé révoquée sur les serveurs de clés :

gpg --send-keys 34C29329

Révoquer une sous-clé

Dans l’exemple je vais révoquer la sous-clé ADE52043, la clé maîtresse étant 34C29329.

gpg --edit-key 34C29329
key 1
revkey

Un astérisque doit apparaître à coter de là ou des clés sélectionnées.
On pense à envoyer la clé révoquée sur les serveurs de clés :

gpg --send-keys 34C29329

Supprimer une clé

Clé publique :

gpg --delete-key 34C29329

Clé privée :

gpg --delete-secret-keys 34C29329

Les deux :

gpg --delete-secret-and-public-key 34C29329

Importer une clé

Clé ou sous-clé publique ou privée :

gpg --import 34C29329.pub.asc
gpg --import 34C29329.priv.asc
gpg --import 34C29329.sub_priv.asc

Importer une clé privée :

gpg --allow-secret-key-import --import private.key

Importer une clé publique depuis un serveur de clé :

gpg --keyserver serverurl --recv-key XXXXXXX

On obtient une clé avec l’ID ‘XXXXXXXX “dans un serveur de clés avec l’URL« serverURL »(par exemple [[hkp://pool.sks-keyservers.net]])

Ajouter une clé publique contenue dans le presse papier (vous avez reçu la clé publique par courriel par exemple) :

gpg --import

Collez ensuite la clé dans le terminal. et taper Ctrl D

Envoyer une clé publique sur serveur de clés :

gpg --keyserver serverurl --send-keys XXXXXXXX

Envoie une clé avec l’ID ‘XXXXXXXX’ à un serveur de clés avec l’option URL ‘serverURL »(par exemple [[hkp://pool.sks-key-servers.net]]).

Envoyer sa clé sur le réseau des serveurs de clés publiques

gpg --send-key 34C29329

Chiffrer/Signer

un message

gpg-sea -r keyID

puis taper le message et terminer par CTRL+Z

Signer un message en clair :

gpg --clearsign -a -r keyID

puis taper le message et terminer par CTRL+Z

Signer un fichier (signature ascii dans un fichier séparé) :

gpg--armor --detach-sign nomFichier

(Cela va créer nomFichier.asc contenant la signature)

vérifier les signatures

Vérifier la signature détachée d’un fichier asc :

gpg nomFichier.asc

Signer un fichier (signature sig dans un fichier séparé) :

gpg --output doc.sig --sign doc

Vérifier la signature sig :

gpg --output mydoc --decrypt doc.sig

Chiffrer/Déchiffrer symétrique

on utilise le même mot de passe pour chiffrer et déchiffrer.

un fichier

gpg -c fichier.ext gpg –armor –symmetric –cipher-algo AES256 –compress-algo zlib \ –output ~/archive_chiffre.tar.gz.gpg archive_a_chiffrer.tar.gz

Chiffrement symétrique avec la progression

apt-get install pv
pv archive_a_chiffrer.tar.gz | gpg2 --symmetric --cipher-algo AES256 \
--output archive_chiffre.tar.gz.gpg

Déchiffrement symétrique :

gpg -o fichier.ext -d fichier.ext.gpg

Chiffrer/Déchiffrer asymétrique

Le chiffrement symétrique implique que l’on puisse communiquer à son correspondant le mot de passe de façon sécurisée. C’est très bien pour un usage familial. Mais si votre correspondant est journaliste en Corée du Nord, ça peut être plus compliqué.

Il faut alors utiliser le chiffrement asymétrique, qui consiste à générer une paire de clés, liées entre elle : la clé publique et la clé privée. Tout ce qui est chiffré avec la clé publique ne peut être déchiffré qu’avec la clé privée. Le principe d’utilisation est donc le suivant :

  • votre correspondant génère la paire de clé, et vous transmet la clé publique.
  • vous chiffrez le message avec la clé publique, et vous le lui envoyez
  • votre correspondant peut déchiffrer le message avec sa clé privée.

un fichier

Chiffrement asymétrique par clé publique :

gpg --recipient 34C29329 --encrypt --armor fichier.ext

Déchiffrement asymétrique par clé publique :

gpg --decrypt fichier.ext.asc > fichier.ext

Chiffrer un fichier

gpg -e -u "sender username" -r "receiver username" somefile

Options -u clé secrète utilisée , -r indique la clé publique du destinataire.

gpg -e -u "yourname" -r "receivername" yourfile.zip

Déchiffrer un fichier :

gpg -d yourfile.zip.gpg

Vous serez invité à entrer votre mot de passe.

texte dans un terminal

Chiffrer :

gpg --recipient 34C29329 -a -e <<EOF
Ce texte est secret
Allons-y Alonso
EOF

Ce qui retournera :

-----BEGIN PGP MESSAGE-----

hQIMA2Yu7vqt5SBDAQ//UeC2r1Wl/ag1FDIqYVizmPvmWIJ90haSE6GtR2XVzz5d
ADaBD1LV/CV4WMmBNaDhttn1mHZFKdBKc8xUqo36+nY3dlVZ/+M/BDbJkIJ3Wflv
2lJCc8N4Cy7CT+ZYjGmUNTWPIW+SuLERSiIJWPTvcEUF4TxCW4mrImux0WXiReZK
zh8lTpqZeMWNS6F6pWZZx2/MFLnSHvaR25ScM8+viWoX6ER9qR95GKLgDHHhZo33
lp9DYYgA/xxRDEr2kPLYkWCFcxP54Zbz6YhWfMnaAYgbO7YAHKb9uh5OXVRHDHiE
oH7UttvdtjKAH+H3qxGahRA61Ocy4sL7Y7TtTNmJtg4QJ+YoTZ99h2PPJckMkHGJ
iRl5RGNxQaSXczOOKVZ/AOj250E0mA/tRQXJS5dNxUX7lcU3Dy9TuUspF+MjXJH5
Op3G3bPF8JJhlYre6kzGLcQBlxt88XiDA4tLRx23w1N5+O5vmDoCvQTVdW0oxuif
Wd3HnhTLWw825YKsxrODoGOQ32ILROIRfMC4w5/iSuxgi81VSdPGHeD/7x+s1NRh
YodVdor4N9GUEvK/AEBW+X12KYEymgjreUQEDNq2Y3hOn1o+qNa/Q1zr/kZYJLAg
3En0F8ZKhp8kUkwM+6FckGGN/b9w4/SyihrNpvg77WduPjMBT0zJzKcy1XemyZHS
awFPWB0RKc6Gv4bT+bQCBGch3APBfEd61D1rAYb1dooyMCyc22u6sDwECbxHRhZD
fSjhrZy/YuvtpXDxEkiCdUK6ofD0VmCa6sWmUKiHQ+hw23A9P7MLNi/vWkWhmEzO
k+0TK83vuUMtFIt0
=aNdl
-----END PGP MESSAGE-----

Déchiffrer :

gpg --decrypt <<EOF
-----BEGIN PGP MESSAGE-----

hQIMA2Yu7vqt5SBDAQ//UeC2r1Wl/ag1FDIqYVizmPvmWIJ90haSE6GtR2XVzz5d
ADaBD1LV/CV4WMmBNaDhttn1mHZFKdBKc8xUqo36+nY3dlVZ/+M/BDbJkIJ3Wflv
2lJCc8N4Cy7CT+ZYjGmUNTWPIW+SuLERSiIJWPTvcEUF4TxCW4mrImux0WXiReZK
zh8lTpqZeMWNS6F6pWZZx2/MFLnSHvaR25ScM8+viWoX6ER9qR95GKLgDHHhZo33
lp9DYYgA/xxRDEr2kPLYkWCFcxP54Zbz6YhWfMnaAYgbO7YAHKb9uh5OXVRHDHiE
oH7UttvdtjKAH+H3qxGahRA61Ocy4sL7Y7TtTNmJtg4QJ+YoTZ99h2PPJckMkHGJ
iRl5RGNxQaSXczOOKVZ/AOj250E0mA/tRQXJS5dNxUX7lcU3Dy9TuUspF+MjXJH5
Op3G3bPF8JJhlYre6kzGLcQBlxt88XiDA4tLRx23w1N5+O5vmDoCvQTVdW0oxuif
Wd3HnhTLWw825YKsxrODoGOQ32ILROIRfMC4w5/iSuxgi81VSdPGHeD/7x+s1NRh
YodVdor4N9GUEvK/AEBW+X12KYEymgjreUQEDNq2Y3hOn1o+qNa/Q1zr/kZYJLAg
3En0F8ZKhp8kUkwM+6FckGGN/b9w4/SyihrNpvg77WduPjMBT0zJzKcy1XemyZHS
awFPWB0RKc6Gv4bT+bQCBGch3APBfEd61D1rAYb1dooyMCyc22u6sDwECbxHRhZD
fSjhrZy/YuvtpXDxEkiCdUK6ofD0VmCa6sWmUKiHQ+hw23A9P7MLNi/vWkWhmEzO
k+0TK83vuUMtFIt0
=aNdl
-----END PGP MESSAGE-----
EOF

Ce qui retournera :

Une phrase de passe est nécessaire pour déverrouiller la clef secrète de
l'utilisateur : « Prenom Nom <mail@domain.com> »
clef RSA de 4096 bits, identifiant ADE52043, créée le 2014-02-23 (identifiant de clef principale 34C29329)

gpg: chiffré avec une clef RSA de 4096 bits, identifiant ADE52043, créée le 2014-02-23
      « Prenom Nom <mail@domain.com> »
Ce texte est secret
Allons-y Alonso

gpg-zip crypter ou signer des fichiers dans une archive

gpg-zip chiffre ou signe les fichiers dans une archive.

gpg-zip est invoqué de cette façon :

gpg-zip[options] nom de fichier1[nom de fichier2, ....] répertoire[répertoire2, ....]].

gpg-zip comprend ces options :

–encrypt , -e ** Crypter les données. Cette option peut être combinée avec –symétrique (pour une sortie qui peut être décryptée via une clé secrète ou une phrase de passe).
**–decrypt , -d ** Décrypter les données.
**–symmetric , -c
Crypter à l’aide d’un chiffrement symétrique à l’aide d’une phrase de chiffrement. Le chiffrement symétrique par défaut utilisé est CAST5, mais peut être choisi avec l’option –cipher-algo à gpg.
–sign , -s Faites une signature.
–recipient user , -r user Crypter pour l’identification de l’utilisateur.
–local-user user , -u user ** Utilisez l’utilisateur comme clé pour signer avec.
**—list-archive ** Énumérer le contenu de l’archive spécifiée.
**–output file , -o file
Ecrire la sortie dans le fichier spécifié.
–gpg gpgcmd Utilisez la commande spécifiée gpgcmd au lieu de gpg.
—gpg-args args Passez les options spécifiées à gpg.
–tar tarcmd Utilisez la commande tarcmd au lieu de tar.
–tar-args args Passez les options spécifiées à tar.
–version Imprimer la version du programme et quitter.
–help Affichez une brève page d’aide et quittez.

Le programme retourne 0 si tout va bien, 1 sinon.

Crypter le contenu du répertoire mydocs de l’utilisateur Bob pour classer test1 :

gpg-zip --encrypt --output test1 --gpg-args  -r Bob mydocs

Lister le contenu de l’archive test1 :

gpg-zip --list-archive test1

Autre

gpg-zip --encrypt --recipient curtis-backup@serverascode.com test > test.tar.gz.gpg
file test.tar.gz.gpg 
    test.tar.gz.gpg: data

Signer/Vérifier

un fichier

Signer :

gpg -sa fichier.ext

Qui générera la signature fichier.ext.asc.

Vérifier :

gpg --verify fichier.ext.asc

un texte

Signer :

gpg --clearsign <<EOF
Ce texte est signé
Les Daleks ne pourront pas le falsifier !
EOF

Ce qui retournera :

Une phrase de passe est nécessaire pour déverrouiller la clef secrète de
l'utilisateur : « Prenom Nom <mail@domain.com> »
clef RSA de 4096 bits, identifiant B9CF7863, créée le 2014-02-23 (identifiant de clef principale 34C29329)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Ce texte est signé
Les Daleks ne pourront pas le falsifier !
-----BEGIN PGP SIGNATURE-----

iQIcBAEBCgAGBQJTCWFIAAoJEMtw0ha5z3hjn8wP/3XX+WUtVArucpI5AXc8Uaaz
BtRTvdKivFYdsC2hVjY1Wsj9mXwbxAY3QuuiBp5ndL4O0ldtr73V3Zhq+lgqPMwi
kdobLZtMf95VElUH1c1IoeLrpRFRsu7YZcUAEOMWWDpkYPEylSgFL8oWgu6GAOcS
Aj+gQjt2mP9RPGq5IUf1jKCMam/iAh4fwdwfPBhmwXY+dTufHHPlqwRWuc4OdSA8
6+vxEr+1dAi7lU8bnBjTazQ8Th1I38ARe6h8FSDp+FtePSq3YMxbewNLuzooZlAn
Xonjm8KIa2aoGzTLpWj5sjgxJksMuGUt53g1tgYEiUqm2EaJ4Jv0hrzUFY8Zl9Ot
LhP9inz/5573f3dFmJSTJC+/a2JU94IBKNVh8E24DzfDi6kqc+/jFUV6wB4k62HM
6Fl6vVa3lcAHUnYl73btS7bb7vocgdM9i2tBq+bXGhlUF+/bP0/7E+1LEjdVrayC
ifsp9TjrnlIr913NkR6GQHbOGqDAqmv9THYAw+wYK/IaaU2zoMNgKUdxZ46+ylnZ
iBDcgUu+L6ulOp7tecmcK/xoYVvF+aHyCevlXGAApesPooCM3TVZKLOagffSdZYW
OmLsVV76yH/pO2EbIErOBbPxUeiLZqxNbx3Ws1m4TLIlE0MnS47geKoI/GIFozjE
t4y++ndgQnmyGOto3iqV
=+qML
-----END PGP SIGNATURE-----

Vérifier :

gpg --verify <<EOF
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Ce texte est signé
Les Daleks ne pourront pas le falsifier !
-----BEGIN PGP SIGNATURE-----

iQIcBAEBCgAGBQJTCWFIAAoJEMtw0ha5z3hjn8wP/3XX+WUtVArucpI5AXc8Uaaz
BtRTvdKivFYdsC2hVjY1Wsj9mXwbxAY3QuuiBp5ndL4O0ldtr73V3Zhq+lgqPMwi
kdobLZtMf95VElUH1c1IoeLrpRFRsu7YZcUAEOMWWDpkYPEylSgFL8oWgu6GAOcS
Aj+gQjt2mP9RPGq5IUf1jKCMam/iAh4fwdwfPBhmwXY+dTufHHPlqwRWuc4OdSA8
6+vxEr+1dAi7lU8bnBjTazQ8Th1I38ARe6h8FSDp+FtePSq3YMxbewNLuzooZlAn
Xonjm8KIa2aoGzTLpWj5sjgxJksMuGUt53g1tgYEiUqm2EaJ4Jv0hrzUFY8Zl9Ot
LhP9inz/5573f3dFmJSTJC+/a2JU94IBKNVh8E24DzfDi6kqc+/jFUV6wB4k62HM
6Fl6vVa3lcAHUnYl73btS7bb7vocgdM9i2tBq+bXGhlUF+/bP0/7E+1LEjdVrayC
ifsp9TjrnlIr913NkR6GQHbOGqDAqmv9THYAw+wYK/IaaU2zoMNgKUdxZ46+ylnZ
iBDcgUu+L6ulOp7tecmcK/xoYVvF+aHyCevlXGAApesPooCM3TVZKLOagffSdZYW
OmLsVV76yH/pO2EbIErOBbPxUeiLZqxNbx3Ws1m4TLIlE0MnS47geKoI/GIFozjE
t4y++ndgQnmyGOto3iqV
=+qML
-----END PGP SIGNATURE-----
EOF

Ce qui retournera dans le cas où la signature est bonne :

gpg: Signature faite le dim. 23 févr. 2014 03:47:36 CET avec la clef RSA d'identifiant B9CF7863
gpg: Bonne signature de « Prenom Nom <mail@domain.com> »

Si le texte a été falsifié :

gpg: Signature faite le dim. 23 févr. 2014 03:47:36 CET avec la clef RSA d'identifiant B9CF7863
gpg: MAUVAISE signature de « Prenom Nom <mail@domain.com> »

Signer la clé (niveau de confiance d’un correspondant)

Signer la clé de David Tennant :

gpg --edit-key "David Tennant"
sign

Définir le niveau de confiance de David Tennant :

gpg --edit-key "David Tennant"
trust

Modification d’une clé

gpg --edit-key <user-id>

On peut ensuite entre en ligne de commande les différentes modifications de sa clé

  • quit : quitter la ligne de commande
  • save : enregistrer et quitter
  • help ou ? : afficher cette aide
  • fpr : afficher l’empreinte
  • list : lister la clé et les noms d’utilisateurs
  • uid : sélectionner le nom d’utilisateur N
  • key : sélectionner la clé secondaire N
  • check : lister les signatures
  • sign : signer la clé
  • lsign : signer la clé localement
  • adduid : ajouter un utilisateur
  • deluid : enlever un utilisateur
  • addkey : ajouter une clé secondaire
  • delkey : enlever une clé secondaire
  • delsig : supprimer les signatures
  • expire : changer la date d’expiration
  • toggle : passer de la liste des clés secrètes aux clés privées et inversement
  • pref : lister les préférences
  • passwd : changer le mot de passe
  • trust : changer la confiance
  • revsig : révoquer les signatures
  • revkey : révoquer une clé secondaire
  • disable : désactiver une clé
  • enable : activer une clé

Récapitulatif des commandes

  • Pour avoir une liste des options disponibles :
gpg --help
  • Générer une paire de clefs :
gpg --gen-key
  • Lister les clefs présentes :
gpg --list-keys
  • Lister les clefs privées présentes :
gpg --list-secret-keys
  • Exporter une clef privée dans un fichier :
gpg -a --export-secret-keys <keyid> | gpg -aco privatekey.pgp.asc

Crée un fichier appelé ‘privatekey.pgp.asc’ avec la représentation de la clé privée pour l’entrée ID().

  • Exporter une clef publique dans un fichier :
gpg -ao publickey.asc --export name@domain.com

Ecriture clé publique dans un fichier ASCII blindé ‘publickey.asc ‘(remplacer “name@domain.com’ avec l’adresse e-mail pour votre clé).

  • Exporter une clef publique :
gpg --armor --export keyID
  • Exporter une clef publique sur un serveur de clef :
gpg --send-key <id> --keyserver <serveur>

Vous pouvez spécifier un serveur de clef spécifique avec l’option « ‘’–keyserver '' », c'est aussi bien pour la recherche, l'importation ou exportation de clef.

  • Rechercher une clef publique sur un serveur de clef :
gpg --search-keys <identifiant>
  • Ajouter une clef publique depuis un serveur de clef :
gpg --recv-keys <identifiant>
  • Ajouter une clef publique contenue dans le presse papier (vous avez reçu la clef publique par courriel par exemple) :
gpg --import

Collez ensuite la clef dans le terminal. et taper Ctrl D

  • Supprimer une clef publique :
gpg --delete-keys <identifiant>
  • Importer une clef publique :
gpg --import nomFichier
  • Importer une clef publique d’un serveur de clef :
gpg --keyserver serverurl --recv-key XXXXXXX

Obtient une clé avec l’ID ‘XXXXXXXX “dans un serveur de clés avec l’URL« serverURL »(par exemple [[hkp://pool.sks-keyservers.net]]).

  • Envoyer une clef publique sur serveur de clefs :
gpg --keyserver serverurl --send-keys XXXXXXXX

Envoie une clé avec l’ID ‘XXXXXXXX’ à un serveur de clés avec l’option URL ‘serverURL »(par exemple [[hkp://pool.sks-key-servers.net]]).

  • Importer une clef privée :
gpg --allow-secret-key-import --import private.key
  • Calculer le fingerprint d’une clef :
gpg --fingerprint keyID
  • Envoyer une clef sur serveur de clefs :
gpg --send-key keyID
  • Signer une clef :
gpg --sign-key keyID
  • Chiffrer et signer un message :
gpg-sea -r keyID

puis taper le message et terminer par CTRL+Z

  • Signer un message en clair :
gpg --clearsign -a -r keyID

puis taper le message et terminer par CTRL+Z

  • Déchiffrer un message et/ou vérifier sa signature :
gpg < message.txt
  • Signer un fichier (signature ascii dans un fichier séparé) :
gpg--armor --detach-sign nomFichier

(Cela va créer nomFichier.asc contenant la signature)

  • Vérifier la signature détachée d’un fichier (*.asc) :
gpg nomFichier.asc
  • Signer un fichier (signature sig dans un fichier séparé) :
gpg --output doc.sig --sign doc
  • Vérifier la signature sig :
gpg --output mydoc --decrypt doc.sig
  • Chiffrer un fichier :
gpg -e -u "sender username" -r "receiver username" somefile

Options -u clé secrète utilisée , -r indique la clé publique du destinataire.

gpg -e -u "yourname" -r "receivername" yourfile.zip
  • Déchiffrer un fichier :
gpg -d yourfile.zip.gpg

Vous serez invité à entrer votre mot de passe.

  • Modification d’une clef
gpg ――edit-key <user-id>
  • Modification d’une clef - On peut ensuite entre en ligne de commande les différentes modifications de sa clef

    • quit : quitter la ligne de commande
    • save : enregistrer et quitter
    • help ou ? : afficher cette aide
    • fpr : afficher l’empreinte
    • list : lister la clef et les noms d’utilisateurs
    • uid : sélectionner le nom d’utilisateur N
    • key : sélectionner la clef secondaire N
    • check : lister les signatures
    • sign : signer la clef
    • lsign : signer la clef localement
    • adduid : ajouter un utilisateur
    • deluid : enlever un utilisateur
    • addkey : ajouter une clef secondaire
    • delkey : enlever une clef secondaire
    • delsig : supprimer les signatures
    • expire : changer la date d’expiration
    • toggle : passer de la liste des clefs secrètes aux clefs privées et inversement
    • pref : lister les préférences
    • passwd : changer le mot de passe
    • trust : changer la confiance
    • revsig : révoquer les signatures
    • revkey : révoquer une clef secondaire
    • disable : désactiver une clef
    • enable : activer une clef
  • Destruction d’une clef secrète

gpgp ――delete-secret-key <user-id>