gpg:accueil

Ceci est une ancienne révision du document !


GPG

gpg --full-generate-key

Sélectionner RSA and RSA, une longueur de 4096 bits, une date d'expiration (jamais), les informations personnelles et une passphrase.

gpg --list-keys
gpg --list-secret-keys --keyid-format LONG

Ce qui se trouve après rsa4096/ est l'ID de la clé, c'est cet identifiant qui est utilisé pour manipuler la clé.

gpg --armor --export <id>

--output public-key.asc sauvegarde directement la clé dans un fichier.

# depuis le serveur par défaut dans la configuration de GnuPG:
gpg --search-keys edward-fr@fsf.org
 
# en précisant le serveur de clés:
gpg --keyserver hkp://pool.sks-keyservers.net --search-keys edward-fr@fsf.org
 
# depuis un fichier:
gpg --import edward.asc
 
# depuis l'ID:
gpg --recv-keys DEADBEEF
# ou:
gpg --recv-keys 0xDEADBEEF

Ensuite, il faut signer la clé importée, pour la marquer comme valide:

gpg --edit-key edward-fr@fsf.org
 
# afficher l'empreinte:
gpg> fpr
 
# si l'empreinte correspond à ce qui est annoncé, on peut la signer avec notre clé:
gpg> sign
gpg> quit

Il est possible de préciser avec quelle clé signer la clé:

gpg -u ID --edit-key edward-fr@fsf.org

Pour chiffrer:

gpg --output config.js.gpg --encrypt --recipient ${adresse_mail} .thelounge/config.js

L'adresse mail fournie sert à identifier la clé à utiliser pour chiffrer.

  • Pour répondre par défaut oui aux questions, ajouter l'option --yes.
  • Pour qu'il ne pose pas de question si la clé n'est pas signée, ajouter l'option --trust-model always.

Pour déchiffrer:

gpg --decrypt encrypted.asc
gpg --verify fichier.sig fichier

La clé publique utilisée pour la signature doit être dans le trousseau de GPG.

gpg --edit-key <id>
gpg> adduid
[...]
gpg> save

Définir une clé comme principale:

gpg --edit-key <id>
gpg> <numéro de l identité à définir comme principale>
gpg> primary
gpg> save
gpg --delete-keys <id>

Rafraîchir les clés connues:

gpg --refresh-keys

Publier sa clé (ou mettre à jour sa clé sur un serveur de clés):

gpg --send-keys alice@example.org

Rajouter --keyserver certserver.pgp.com pour préciser le serveur de clés à utiliser.

Quelques serveurs de clés:

On peut configurer le serveur par défaut dans ~/.gnupg/gpg.conf:

keyserver hkps://keys.openpgp.org

Faire signer sa clé :

  1. distribuer le résultat de
    gpg --fingerprint DEADBEEF
  2. une fois sa clé signée reçue par mail:
    gpg --import key.signed.asc
  3. mettre à jour sa clé sur les serveurs de clés:
    gpg --send-keys DEADBEEF

Signer une clé :

  1. importer la clé :
    gpg --recv-keys DEADBEEF
  2. s'assurer que le fingerprint et l'identité clamée correspond à ce que dit le propriétaire de la clé
  3. signer la clé:
    gpg --sign-key DEADBEEF
  4. exporter la clé signée et l'envoyer par mail à son propriétaire :
    gpg --armor --output DEADBEEF.signed.asc --export DEADBEEF

Avec caff (du paquet signing-party) :

caff DEADBEEF

Divers

Il est possible de voir les signatures des clés:

gpg --list-sigs

Avec les programmes fournis par le paquet signing-party, il est possible de générer une liste de fingerprints prêts à imprimer:

gpg-key2latex DEADBEEF > gpg.tex

Il est possible de visualiser le graphe des signatures des clés connues localement:

gpg --list-sigs --keyid-format long | sig2dot > sigs.dot 
springgraph < sigs.dot > sigs.png
gpg --edit-key DEADBEEF
gpg> expire
gpg> 1y
gpg> key 1
gpg> expire
gpg> 1y
gpg> save

Envoyer la clé sur les serveurs de clés.

gpg-connect-agent reloadagent /bye
# Sauvegarde aussi de la clé privée:
gpg -o backup.gpg --export-secret-keys alice@example.org
 
# Sauvegarde de toutes les clés publiques connues:
gpg -o public-keys.gpg --export
gpg --export-ownertrust > trust.txt
 
# tous les certificats de révocation sont dans ~/.gnupg/openpgp-revocs.d/

Restauration:

gpg --import backup.gpg
gpg --import public-keys.gpg
gpg --import-ownertrust < trust.txt
  • gpg/accueil.1663708279.txt.gz
  • Dernière modification : 2022/09/20 23:11
  • de phsw