--- title: "gpg" date: 2016-09-08T09:14:00 date_display: Sep 08, 2016 --- Commande de base : `gpg2` # Création d'une pair de clé Génération de la clé : `gpg2 --full-gen-key` ou simplement `gpg --gen-key` si la première n'est pas disponible sur le système Pour aider la génération de nombres aléatoire : `find ~/ -type f | xargs grep randomstring &> /dev/null` Export des clés, privées puis publiques : `gpg2 --export-secret-keys --armor > private.asc` puis `gpg2 --export > public.asc` Importation des clés, privées puis publiques : `gpg2 --allow-secret-key-import --import privkey.asc` puis `gpg2 --import pubkey.asc` Et pour finir on trust la clé privée : `gpg2 --edit-key ` Pour la partager sur un serveur, dans ce cas il s'agit de sks.srv.dumain.com:11371 : `gpg2 --keyserver sks.srv.dumain.com:11371 --send-key ` Pour choisir un serveur => [https://sks-keyservers.net/status/](https://sks-keyservers.net/status) Chercher une clé sur le net : `gpg --keyserver sks.srv.dumain.com:11371 --search-keys ` Importer une clé depuis internet : `gpg2 --recv-keys ` Rafraichir la liste de clé (Pourquoi ? => [https://futureboy.us/pgp.html#UpdatingKeys](https://futureboy.us/pgp.html#UpdatingKeys)) : `gpg --refresh-keys` Some documention : - [https://futureboy.us/pgp.html](https://futureboy.us/pgp.html) # Signer un fichier Signer un fichier : `gpg2 --sign --detach-sign,` Vérifier la signature : `gpg2 --verify .sig ` ## Chiffrer un fichier Chiffrer un fichier : `gpg2 --encrypt --recipient ` (--recipient est le destinataire, il possible de mettre plusieurs destinataire) Déchiffrer : `gpg2 --decrypt .gpg`