📋 Prérequis:
- Gestions des fichiers et répertoires sous linux.
- nstallation de imagemagick ( sudo apt update && sudo apt install imagemagick )
- installation gpg ( sudo apt update && sudo apt install gnupg )
🎯 But:
Chiffrer des fichiers, textes , images , sons sans aucune limite ! avec un chiffrement symètrique
🔐 TP GPG : Chiffrement Symétrique & Asymétrique sous Linux
Installation et vérification des outils logiciels
vérifier que gpg est bien installé , ici la version 2.2.40 de GPG surement que ça aura déjà changé ! pas de panique
bruno@debian:~/Works/gpg$ gpg --version
gpg (GnuPG) 2.2.40
libgcrypt 1.10.1
Copyright (C) 2022 g10 Code GmbH
License GNU GPL-3.0-or-later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Home: /home/bruno/.gnupg
Algorithmes pris en charge :
Clef publique : RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Chiffrement : IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256,
TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256
Hachage : SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression : Non compressé, ZIP, ZLIB, BZIP2
bruno@debian:~/Works/gpg$
sinon
sudo apt update
sudo apt install gnupg
🔸 Partie 1 : Chiffrement Symétrique
Dans un répertoire GPG dans votre répertoire de TP Works
🔹 1. Crée un fichier texte
Créer un fichier texte , que l’on va chiffrer.
echo "Ceci est un secret très important." > secret.txt
🔹 2. Chiffrer avec une phrase de passe
gpg --no-symkey-cache --symmetric secret.txt
# -c donne le même
# --no-symkey-cache cela force gpg à redemander le mot de passe à chaque fois.
👉 GPG vous demandera une phrase de passe.
Par défaut, gpg-agent met en cache les passphrases pour une durée configurable (souvent 10 minutes).
mot de passe à retenir, un bon mot de passe est un mélange de lettres , majuscules , minuscules , chiffres et symboles. Eviter des mots du dictionnaire.
un bon mot de passe par exemple nairoD2025 .. si vous manquez d’imagination , ce que je ne crois pas!
🔹3. Un fichier secret.txt.gpg est créé. Essayez de le lire :
on constate que c’est bel et bien chiffré , et plus gros qu’au départ !
bruno@debian:~/Works/gpg$ hexdump -C secret.txt.gpg
00000000 8c 0d 04 09 03 02 3f 53 f0 12 0b 14 7d 61 ff d2 |......?S....}a..|
00000010 5f 01 a9 b1 e4 39 99 95 6e 89 22 76 01 ae 62 40 |_....9..n."v..b@|
00000020 3e a1 59 08 43 c8 69 d4 1c 32 be 46 c4 0c 66 d6 |>.Y.C.i..2.F..f.|
00000030 1f b5 bf a7 38 86 3e f8 3f d1 a4 a1 be d1 34 de |....8.>.?.....4.|
00000040 9c ff b1 ec 4e 85 db 03 5d 96 b0 06 a8 2a 97 7c |....N...]....*.||
00000050 63 3e 96 ee fc a5 70 11 37 93 8a 57 11 03 29 4a |c>....p.7..W..)J|
00000060 44 52 33 d1 fe 65 cc d7 a4 8e bf 82 92 8b 75 a4 |DR3..e........u.|
00000070
bruno@debian:~/Works/gpg$
🔹 4. Déchiffrer
gpg --output secret_dechiffre.txt --decrypt secret.txt.gpg
# l'option -o est équivalente --output
🔹5. Testons avec une image secrète
Exemple d’un schéma top secret que les agents étrangers ne doivent pas voir !

bruno@debian:~/Works/gpg$ gpg -c ESP32-C3-SuperMini-3.jpg
bruno@debian:~/Works/gpg$ ls -l
total 520
-rw-r--r-- 1 bruno bruno 278328 16 juin 18:14 ESP32-C3-SuperMini-3.jpg
-rw-r--r-- 1 bruno bruno 235263 16 juin 18:15 ESP32-C3-SuperMini-3.jpg.gpg
on constate au passage que le chiffrement compresse légèrement le fichier ! on y gagne
Dans l’algorithme de pgp ,fait un zip (c’est pour ça que c’est plus petit)
on peut interdire : gpg –compress-algo none –symmetric ESP32-C3-SuperMini-3.jpg
Mais ce serait stupide de ne pas en profiter !
Donc on peut très bien chiffrer des fichiers images , mais aussi des sons .. etc ..il n’y a aucune limite du moment que c’est numérique 🙂
Pour information ici c’est surement du chiffrement AES128 ou 256 bits…
gpg --symmetric --cipher-algo AES256 secret.txt
# pour forcer en AES256
on peut savoir le type chiffrement:
bruno@debian:~/Works/gpg$ gpg --list-packets ESP32-C3-SuperMini-3.jpg.gpg
gpg: données chiffrées avec AES256.CFB
on voit ici que c’est bien du AES256 !
