Chiffrons nos mails !

Tout le monde sait que lorsque l’on envoie une lettre par la Poste, le courrier est scellé : l’enveloppe est la plupart du temps collée, de sorte à garantir l’intégrité de la lettre. On sait plusieurs choses en ouvrant une lettre : elle n’a ni été lue par quelqu’un d’autre, ni été modifiée (il n’y a eu ni altération du contenu, ni suppression, ni ajout).

En envoyant une carte postale, rien de ça n’est vérifié. Tout le monde ayant accès à la lettre est en mesure de la lire et de la modifier dans la mesure du possible. Si nous faisons confiance à la Poste, alors il n’y a pas de problème. En théorie, de son dépôt jusqu’à son arrivée dans votre boîte, à part le facteur, personne n’a eu accès à votre lettre. Sans rentrer dans des considérations légèrement parano (rien ne peut nous prouver que la lettre n’est pas sortie du circuit ou n’a pas été lue ou  modifiée), nous sommes tous d’accord pour dire qu’il y a des messages que l’on n’a pas forcément envie d’envoyer par carte postale. C’est le cas de certaines conversations privées ou données sensibles.

Personne ne songerait un seul instant à envoyer son numéro de carte bancaire ou même la cachette du double des clés par carte postale ! D’ailleurs, personne n’envoie de courrier intime par carte postale non plus. Encore moins des échanges professionnels (données d’entreprise, etc.). Et pourtant, ce sont des choses que l’on fait encore trop souvent sur internet sans se poser de question. Chaque mail non chiffré envoyé sur internet est comme une carte postale circulant dans les centres de la Poste.

En cette période de découverte de la surveillance massive par différents pays et organisations, les avertissements de ceux que l’on qualifiait de parano il n’y a pas si longtemps résonnent étrangement dans nos têtes.

Quoique… La vidéo-surveillance et les autres technologies de surveillances intrusives ont largement contribué à répandre dans la population l’idée que « si l’on a rien à cacher, on a pas à être contre ». Toujours est-il que l’on ne devrait pas se servir des mails comme de cartes postales mais au moins être capable de…  les mettre dans des enveloppes.

Heureusement, les outils existent ! L’un d’eux, le seul réellement en usage, est GPG, un logiciel de cryptographie.

Malgré l’existence d’outils accessibles, le plus gros frein empêchant le grand public de servir du chiffrement est qu’il n’est pas encore implémenté par défaut dans nos systèmes d’exploitations classiques. Ainsi, je vais détailler ici les méthodes les plus simples et accessibles pour installer et se servir de GPG au quotidien afin que le manque de compétences techniques ne soit plus un argument pour ne pas s’en servir.

Principe de la confidentialité avec GPG

Les détails techniques ne sont pas indispensables à comprendre. Néanmoins, ils est important de lire ce qui suit pour bien comprendre l’essentiel du procédé afin de vous en servir. Si vous souhaitez en savoir plus, cliquez sur les liens.

Le principe qu’utilise GPG se nomme cryptographie asymétrique. Le principe n’est pas particulièrement complexe à comprendre. Il s’agit d’utiliser un couple de clés : l’une, la clé publique, sera donnée à tout le monde sans inquiétude ; l’autre, la clé privée, ne sera jamais donnée et doit rester strictement confidentielle. Dans les faits, la plupart du temps, même le propriétaire ne connaît pas cette dernière. Ces deux clés ne sont rien d’autre qu’une suite (très longue) de caractères. Chaque couple de clés est unique et propre à son propriétaire.

À partir de ce couple de clés, deux choses sont possibles lors de l’envoi d’un e-mail : la signature et le chiffrement. Ces deux fonctions sont compatibles et complémentaires. Il est donc possible d’envoyer un mail à la fois signé et chiffré, ce qui constitue une protection simple et très efficace de votre vie privée.

La signature est la plus simple des fonctionnalités. Elle ne nécessite que votre couple personnel de clés, et aucune autre. Ce sera simplement à votre destinataire de posséder votre clé publique afin qu’il puisse décrypter la signature du message. Le chiffrement quant à lui nécessite que vous possédiez la clé publique de votre interlocuteur.

Soyez bien conscient que sans logiciel adapté, tout mail chiffré ne sera pas lisible. Ainsi, si vous avez l’habitude de recevoir vos mails sur plusieurs machines, il vous sera indispensable de copier votre clé privée sur chacun d’eux après y avoir installé GPG.

Précision importante : GPG est une solution sûre. Cependant, il ne peut vous prémunir d’une faille potentiellement fatale : votre clé privée doit rester absolument confidentielle. Lors de la création d’un couple de clés, le logiciel vous demandera une phrase de passe (un mot de passe). Elle vous sera nécessaire pour toute opération sur votre clé privée.

Dernière précision : il est possible et même recommandé de créer un certificat de révocation pour chacun de vos couples de clés. Il vous sera utile si, pour une raison quelconque, vous deviez révoquer (c.-à-d. désactiver définitivement) un couple de clés. Cela peut-être utile par exemple dans le cas où vous perdiez votre phrase de passe ou que vous n’avez plus confiance en votre couple de clés (e.g. votre disque dur sur lequel était stocké la clé privée a été volé).

La signature d’un mail avec GPG

Je parlais tout à l’heure des lettres, fermées et donc scellées. Ce principe est à tout à fait  comparable à celui de la signature d’un mail, à un détail près que j’aborderai juste après. Il ne s’agît pas là de signer comme vous le faîtes habituellement en paraphant votre courrier.

En fait, signer un mail, c’est comme créer un sceau unique à la cire grâce une espèce de condensât du message obtenu par un procédé standard, puis le chiffrer avec sa clé privée. Toutes ces opérations seront réalisées par votre ordinateur, vous déchargeant de toute manipulation.

Le résultat, la signature, sera déchiffré par le destinataire ou n’importe qui ayant accès au message grâce à votre clé publique, puis recomposé par le même procédé standard qui a permis de créer le condensât. Si le message est intègre alors la signature le sera.

Au final, cela permet à votre destinataire d’avoir la certitude que :

  • vous êtes bien l’auteur du message ;
  • le message n’a pas été altéré.

Le chiffrement d’un mail avec GPG

Le chiffrement fonctionne peu ou prou de la même façon que la signature d’un message, mais à l’envers. Voici les étapes (en gros) :

  • le message est compressé (haché) ;
  • le message haché est chiffré grâce à la clé publique du destinataire ;
  • le message est reçu puis déchiffré par le destinataire grâce à sa clé privée qui est la seule à en être capable ;
  • le message est décompressé et est donc désormais lisible.

Dès lors, tout le monde a la certitude que le message n’a pu être lu que par le destinataire.

La publication de votre clé publique et la recherche de celle de vos correspondants

Comme dit précédemment, votre clé publique doit être diffusée pour que l’on puisse vous envoyer des mails chiffrés. Pour cela, il existe plusieurs solutions :

  • la plus simple est de la publier sur un serveur de clés GPG. La publication sur un serveur la rendra publique sur tous les autres du monde. L’un d’eux est celui du MIT ;
  • l’envoyer à vos correspondants par mail (à chaque envoi par exemple) ;
  • la publier sur votre serveur si vous en avez un.

Ces solutions vous permettront évidemment de trouver la clé de vos correspondant, avec une mention spéciale pour les serveurs de clés qui proposent la recherche par nom ou adresse e-mail d’une clé publique. Il n’y aura plus qu’à l’ajouter à votre carnet d’adresse GPG.

L’utilisation de GPGTools sur OS X (Mac)

Si vous utilisez OS X (anciennement Mac OS X), il est probable que vous utilisiez le tout à fait convenable Mail comme client mail. Si vous utilisez le webmail de votre fournisseur (Gmail, Live, etc.), je ne peux que vous recommander de passer à Mail  ou Thunderbird (ou d’utiliser le plugin fireGPG pour firefox).

L’implémentation de GPG sur OS X se fait avec la superbe et libre suite GPG Tools. Tout est expliqué sur le site et  il n’y a que très peu de choses à faire vous-même. Il suffit vous de créer une paire de clés et Mail sera ensuite capable de signer vos mails (dans un premier temps) et de les chiffrer (une fois que vous aurez obtenu la clé publique de vos contacts) sans aucune manipulation supplémentaire.

La réception et le déchiffrage des mails chiffrés et/ou signés est elle-aussi transparente. Vous n’avez rien d’autre à faire qu’ouvrir le mail et il sera décrypté automatiquement.

Autre détail : vous pouvez ajouter une autre identité à votre couple de clés. Cela peut être utile si vous possédez plusieurs adresses mail et que vous ne souhaitez qu’un couple de clés.

Sur Firefox

Il existe aussi des solutions pour les webmails, dont l’extension FireGPG pour Firefox.