Nous avons vu dans un billet précédent comment chiffrer ou crypter un message au coup par coup. Sachez qu'il existe depuis plus de 10 ans une solution libre et très efficace de chiffrage assymétrique sous GNU/Linux. On appelle chiffrage assymétrique une méthode où il y a une clé pour chiffrer et une autre clé pour déchiffrer.

La clé pour chiffrer est donnée au correspondant dont vous voulez recevoir des mails sécurisés. On l'appelle clé publique, car elle est disponible publiquement pour tous ceux à qui vous donnez la possibilité de vous envoyer des mails sécurisés.

La clé pour déchiffrer n'appartient qu'à vous et ceci est la base de la sécurité. On l'appelle la clé privée. Elle sert à déchiffrer et seulement vous, pouvez déchiffrer le mail, personne d'autre, même pas celui qui a envoyé le mail. Si cette clé privée vient à être connue par quelqu'un d'autre que vous, elle est compromise est doit être changée.

croquis_chiffrage


Remarque importante : dans une chaîne de sécurité, le niveau global est égal au niveau du maillon le plus faible. Donc, il ne sert pas à grand-chose de chiffrer vos mails si vous utilisez un OS passoire propriétaire ou si vous ne gérez pas correctement les droits sur un système libre ou open-source, car votre clé privée sera très facile à voler sur un système windows avec un keylogger par exemple.

Voici un tutoriel sous jaunty jackalope (pour ceux qui veulent tout de même essayer avec windows voici un tutoriel adapté):

Version 1, pour celles et ceux qui comprennent l'intérêt de la ligne de commande, il suffit d'ouvrir un terminal et de copier/coller cela :

sudo apt-get install thunderbird thunderbird-locale-fr gnupg enigmail enigmail-locale-fr

enigmail02

C'est installé, plus qu'à configurer et utiliser.

Version 2, pour celles et ceux qui préfèrent cliquer partout. Pour commencer, installez le logiciel thunderbird (Kmail sait aussi faire cela) si ce n'est pas déjà le cas en cliquant sur ce lien thunderbird. et ce lien pour l'avoir en français thunderbird-locale-fr

Vous pouvez vérifier que vous disposez du paquet Gnupg qui est le centre de ce chiffrage assymétrique en essayant d'installer ce paquet gnupg, mais il fait nativement partie d'ubuntu donc cela ne devrait pas marcher.

Ensuite installer les paquets mozilla-thunderbird-enigmail et enigmail-locale-fr pour l'avoir en français.

La partie installation est terminée, il reste la configuration et l'utilisation.

Si vous ouvrez Thunderbird, vous verrez qu'un nouvel item est apparu dans la barre de menu entre messages et outils : OpenPGP. Si OpenGPG n'apparaît pas dans le menu (c'est arrivé à ma femme qui s'est un peu énervée) c'est probablement que l'extension est présente mais non activée. Cliquez dans le menu de Thunderbird sur "Outils" puis "Modules Complémentaires" et vérifiez que les modules enigmail sont présents et activés.

thunderbirdGPG01

Cliquez sur "Édition" puis "paramètres des comptes". Choisissez le compte que vous voulez utiliser avec GnuPG et Enigmail (de préférence celui de votre fournisseur d'accés, car vous pouvez émettre sans soucis; ici c'est truc@truc.com) et cliquez sur "rédaction et adressage". Il faut enlever, décocher la rédaction des messages en HTML pour que le chiffrage puisse fonctionner.

thunderbirdGPG02

Ensuite, pour le même compte (nous avions choissi truc@truc.com, cliquez sur "sécurité Open PGP" et cochez la case "Activer le support OpenPGP (Enigmail) pour cette identité".

thunderbirdGPG03

Il faut maintenant générer les deux clés, rappelez-vous, il y en a deux : la clé privée qui sert à déchiffrer (et doit resté secrète) et la clé publique qui sert à nos correspondants à chiffrer des mails uniquement pour nous.

Dans le menu de thunderbird, cliquez sur "OpenPGP" ensuite sur "Gestion de clefs" : une fenêtre "Gestion de clefs OpenPGP" s'ouvre.

Dans cette nouvelle fenêtre, cliquez sur "Générer" puis sur "Nouvelle paire de clefs".

Capture_Gestion_de_clefs_OpenPGP

Dans la fenêtre qui vient de s'ouvrir, déclarez, dans le menu déroulant en haut, le compte que vous voulez utiliser avec OpenPGP (pour nous, c'est toujours truc@truc.com).

Choisissez une phrase secrète qu'il faudra saisir une fois à gauche et une autre fois à droite. Elle ne doit pas contenir de lettres accentuées, car cela peut entraîner des problèmes de reconnaissance. Pour une sécurité maximale, transformez légèrement les mots dans le style leetspeak pour éviter que les mots de votre phrase secrète, pilier de votre sécurité, ne puisse être trouvés dans un dictionnaire. Par exemple, au lieu d'écrire "Annie aime les sucettes", écrivez par exemple "4nn!e a!m3 |es 5uc3++3s". Retenez précieusement cette phrase secrète.

Décrivez votre trousseau de clefs de façon explicite, par exemple : "Clefs de chiffrage pour le compte truc@truc.com".

Cliquez sur le bouton "Générer la clef".

Capture_G_n_ration_de_clef_OpenPGP_1

La clef va prendre assez longtemps à être générée. Cela a pris entre une et deux minutes chez moi.

La configuration est terminée. Il ne reste plus qu'à pouvoir utiliser les clés. Pour cela, il faut exporter les clés aux formats ascii et txt.

Pour ce genre de travail, rien ne vaut la console. Dans un terminal, saisissez les commandes suivantes:

  1. Pour vérifier que votre clé a bien été générée gpg --list-keys
  2. Pour exporter votre clé publique au format ASCII : gpg --export -a > ma_clef_publique.asc
  3. Pour exporter votre clé au format txt : gpg --export -a > ma_clef_publique.txt

Capture_papa_mon_laptop_a_moa____1

Capture_papa_mon_laptop_a_moa____2
Les fichiers générés se trouveront dans votre "dossier personnel". Je vous conseille d'en faire une copie externe (cd, clé usb, disque dur externe...) et de créer un dossier "sécurité" dans vos documents pour la retrouver facilement.

Voici à quoi ressemble une clé publique au format txt (le floutage est volontaire de ma part, car c'est ma vraie clef publique).

Capture_ma_clef_publique

Pour fournir votre clef publique (ce que l'on fait avec des personnes de confiance) il y a plusieurs possibilités :

  1. La donner en main propre (le fichier asc ou txt) sur un support amovible. Cette solution est la plus sûre.

  2. L'envoyer dans un mail un peu comme une pièce jointe. Après avoir écrit un mail, comme d'habitude (avec le compte configuré, truc@truc.com pour l'exemple) il suffit de cliquer sur "OpenGPG" puis sur "Attacher ma clef publique". Ceci est beaucoup moins sécurisé, car votre clef publique voyagera en clair et toute personne capable de l'intercepter pourra vous envoyer des mails chiffrés. Hors, le but est de privilégier ce type de correspondance pour et par les personnes de confiance.

  3. L'envoyer sur l'un des serveurs qui recense  les clé publiques. Dans thunderbird, cliquez sur "OpenGPG" puis sur "Gestion des clefs". Cliquez sur la clef publique à exporter, puis sur "serveur de clefs" et "envoyer les clefs publiques". Choisissez l'un des quatres serveurs pour recenser votre clef et cliquez sur "OK"

Voilà. Il ne reste plus qu'à utiliser le chiffrage. Cela est très simple et se fait presque de façon aveugle pour l'utilisateur. Le tout est de se rappeler de sa "phrase secrète" sans erreur... 4nn!e a!m3 |es 5uc3++3s, |es 5uc3++3s à |'4n!s... la lalala la la lala ...