GPG - Utilisation basique - exemples

Documentation :

https://www.gnupg.org/gph/fr/manual.html

https://www.gnupg.org/howtos/fr/GPGMiniHowto.html

Procédure simple chiffrer un message ou un fichier :

https://emailselfdefense.fsf.org/fr/

https://www.nist.gov/system/files/documents/2021/10/25/nist_encryption.pdf

https://emailselfdefense.fsf.org/fr/index.html

Guide d’autodéfense numérique

https://blog.eleven-labs.com/en/openpgp-almost-perfect-key-pair-part-1/

https://linuxfr.org/news/bien-demarrer-avec-gnupg

Recommandations :

https://infosec.mozilla.org/guidelines/key_management.html

https://riseup.net/fr/security/message-security/openpgp/gpg-best-practices

Autre :

https://nipil.org/2013/09/19/GnuPG-plan-de-secours-valide.html

https://linuxfr.org/users/gouttegd/journaux/de-la-gestion-des-clefs-openpgp

GNU Privacy Assistant (GPA)

Voir :

http://math.cmu.edu/~svasey/old-homepage-archive-2013/projects/software-usage-notes/gpg_en.html

http://keyring.debian.org/replacing_keys.html

https://help.riseup.net/en/security/message-security/openpgp/best-practices

https://we.riseup.net/riseuplabs+paow/openpgp-best-practices

https://deekayen.net/large-gpg-keys

http://www.ssi.gouv.fr/actualite/cryptanalyse-de-messages-openpgp-par-lexploitation-de-fragilites-cryptographiques-du-format/

Importer une clef

Importer une clef localement

gpg --import correspondant.pgp

Importer une clef via Internet

Tscoks et Tor doivent être installés et configurés Voir tor_tsocks

tsocks gpg --recv-keys 5AA19646

Utilisation basique - exemples

Exemple de chiffrement noté -R à la place du -r pour caché qui est le destinataire du fichier

gpg -R jean@acme.fr --throw-keyids --encrypt data.dat

Ici nous signons le fichier data.dat.gpg (crée la commande précédente)

gpg --detach-sign data.dat.gpg

On vérifie la signature

gpg --verify data.dat.gpg.sig data.dat.gpg

Si la signature est bonne, on déchiffre

gpg --decrypt data.dat.gpg

Exemple en ligne de commande

Signé et chiffré

gpg --sign plop.txt gpg --encrypt -R jean@acme.fr plop.txt.gpg mv plop.txt.gpg.gpg plop

On envoie notre fichier plop

Déchiffrement et vérification signature

$ gpg plop
gpg: plop : suffixe inconnu
Entrez le nouveau nom de fichier [plop.txt.gpg]:

Faire [Entrée]

gpg plop.txt.gpg && echo OK

Nous retrouvons le fichier plop.txt

Avancée

Commandes passives

gpg --with-fingerprint --list-secret-key gpg --list-keys your_email@address.com echo 'foo' | gpg --recipient [key-id] --encrypt --sign | gpg --list-packets

Avoir plus d'information sur une clefs (sans l’importer)

gpg --list-packets public-key.asc

Avoir des informations sur un fichier chiffré

gpg report.txt.gpg

Autres conversions formats

Uuencode / uudecode Pour encoder, il suffit de taper :

gpg -a --store chemin/nom_du_fichier.ext

(Cela produira en sortie chemin/nom_du_fichier.ext.asc)

Pour décoder, c’est encore plus simple:

gpg chemin/nom_du_fichier.ext.asc

convert .asc to .gpg (and eventually vice-versa)

gpg --dearmor the-asc-file.asc

will convert from .asc to .gpg

cat the-gpg-file.gpg | gpg --enarmor | sed 's|ARMORED FILE|MESSAGE|' > my-new-asc-file.asc
printf 'Key-Type: DSA\nKey-Length: 4096\nName-Real: test\n' | ./gpg --batch –gen-key