GPG : Chiffrement et signature numérique.

GPG (GNU Privacy Guard) est un logiciel libre qui permet de chiffrer et de signer à peu près tout ce qui est numérique (des courriels, de la messagerie instantanée, des fichiers PDF, ODT, etc…).

Chiffrer signifie « crypter », « coder », bref, rendre indéchiffrable quelque chose. Signer sert à authentifier l’auteur et vérifier l’intégrité du contenu.

Histoire et théorie du chiffrement.

1. Les algorythmes de clef symétrique.
Les premières traces de chiffrement remontent à l’Égypte et on est en droit de penser que le chiffrement de l’écriture est apparu en même temps que l’écriture.
Jules César pour communiquer avec ses armées utilisait le chiffrement symétrique dont l’algorythme de chiffrement reposait sur le décalage alphabétique.
Par exemple, selon ce principe, Bonjour s’écrivait Dqplqwt. Ici l’algorythme de chiffrement est le décalage alphabétique et la clef +2 ((B +2 = D etc…). Le destinataire n’a qu’à inverser la clef pour déchiffrer le message.

Le chiffrement symétrique présentait plusieurs inconvénients. Parfois les algorythmes n’étaient pas très puissants et si ils étaient interceptés ou connus par les personnes dont on ne voulait pas qu’elles déchiffrent tout le chiffrement était corrompu.

2. Invention du chiffrement asymétrique.
Le chiffrement asymétrique repose sur l’utilisation de 2 clefs de chiffrement. Une clef publique et une clef privée. L’une chiffre et l’autre déchiffre ; l’une signe et l’autre vérifie.
Pour des raisons de rapidité la signature des messages utilise des algorythmes de hashage. C’est sur le hash que s’effectue la signature et la vérification de la signature.

Dans la pratique aujourd’hui.

Il faut savoir que nos échanges sur Internet, s’ils ne sont pas chiffrés, circulent en clair. C’est à dire qu’il est facilement possible, à qui en a l’intention, de lire notre correspondance et d’intercepter nos transactions… Quelle importance si on a rien à cacher direz-vous peut-être ? Dire qu’on se fout du respect de la vie privée parce qu’on a rien à cacher revient à dire qu’on se fout de la liberté d’expression parce qu’on a rien à dire. Nous savons tous que la fin du respect de la vie privée emportera avec elle la liberté d’opinion, la liberté  d’expression et par conséquent la liberté de la presse même si aujourd’hui beaucoup de media sont les chiens de garde du capitalisme et pratiquent largement l’autocensure. Quant à ce qui peut nous concerner plus directement, pensons  aux nombreuses et diverses tentatives d’escroqueries par internet que nous connaissons tou(te)s.
Toujours est-il, qu’aujourd’hui, par pure suspiscion, dans un but commercial  ou malveillant, toutes nos communications et notre activité sur Internet sont écoutées et utilisées à notre insu. Elles le sont par les agences de renseignement de nos gouvernements, elles le sont par des sociétés commerciales dont le soucis est de cibler au mieux ses publicités, mais elles peuvent aussi l’être par des individus malveillants dans le but de nous extorquer de l’argent si on considère que les sociétés commerciales ne font pas partie du groupe des individus malveillants.

Par conséquent, pour des raisons de confidentialité, d’authenticité et d’intégrité, il est important de chiffrer et signer nos échanges de même qu’il est important de sécuriser notre navigation sur Internet. Le principe de confidentialité garantit que seuls l’expéditeur et le destinataire peuvent avoir connaissance du contenu du message et personne d’autre. Les principes d’authenticité et d’intégrité nous assurent que la personne avec qui nous communiquons est bien la bonne et que le message envoyé n’a pas été modifié en cours de route par un tiers mal intentionné.

Cas pratique : le chiffrement et la signature des courriels avec Thunderbird et le plugin Enigmail.
Le chiffrement GPG ou cryptographie à clef publique repose sur un principe simple. Si Jacques et Paul décident de se mettre à communiquer de manière chiffrée et signée alors qu’ils ne le faisaient pas auparavant il va d’abord falloir qu’ils créent chacun un jeu de clefs avec leurs ordinateurs respectifs. S’ils utilisent Thunderbird, l’assistant du plugin Enigmail pour Thunderbird les aidera à le faire facilement. Avec Enigmail, Jacques va créer son jeu de clefs dans lequel il y a une clef privée qu’il gardera secrète et une clef publique qu’il transmettra à Paul et qu’il pourra mettre en libre disposition sur un serveur. Paul de son côté fera la même chose. Il créera une clef privée qu’il gardera secrète et une clef publique qu’il transmettra à Jacques et qu’il pourra mettre en libre disposition sur un serveur. Ces clefs se présentent sous forme de fichiers à peu près illisibles et relativement longs. C’est seulement une fois que Paul et Jacques auront échangé leurs clefs publiques respectives qu’ils pourront commencer à chiffer et déchiffrer leurs communications. Paul va chiffrer les données qu’il envoie à Jacques avec la clef publique de Jacques et Jacques chiffrera les données qu’il envoie à Paul avec la clef publique de Paul. Les données reçues seront déchiffrées avec leur clef privée de façon complétement transparente.
Le principe de fonctionnement de tout ça est assez simple et on peut l’expliquer en utilisant l’image du cadenas ouvert. Ma clef publique est un cadenas ouvert que je donne à quelqu’un qui veut me transmettre quelque chose qu’il mettra dans un coffre. Il fermera ce coffre avec le cadenas que je lui ai donné avant de me l’envoyer et comme je suis le seul à en avoir la clef, je suis le seul à pouvoir accéder au contenu. Le cadenas ouvert c’est ma clef publique et la clef qui permet de l’ouvrir c’est ma clef privée.

Quand ils échangeront leur premier courriel chiffré Paul et Jacques prendront soin, s’ils le souhaitent, de signer les clefs publiques qu’ils auront reçues après vérification de l’empreinte des clefs. On parlera de l’empreinte plus loin. Paul signera la clef de Jacques et Jacques fera pareil avec la clef de Paul. Ainsi, on pourra être sûr que ce qui vient de Paul a bien été envoyé par Paul et que le Paul qui vous demande un virement urgent par Western Union parce qu’il vient de se faire agresser honteusement dans les rues d’Athènes n’est pas Paul. De même, si Jacques apprend à Paul que sa femme envisage de partir avec le camping-car, Paul pourra s’assurer que c’est bien Jacques qui lui écrit et éventuellement planquer les clefs du camping-car mais enlever les roues serait plus prudent.

Pour la vérification des clefs avant signature :
Les clefs publiques créées par Paul et par Jacques sont de longs fichiers incompréhensibles comme on en voit dans les films modernes d’espionnage. Paul et Jacques s’envoient des copies de leurs clefs publiques respectives, c’est à dire des copies de ces fichiers incompréhensibles. Pour être sûr qu’ils n’ont pas été modifiés en route il faut comparer le fichier envoyé au fichier reçu ce qui est pratiquement impossible tel quel. Paul et Jacques vont donc comparer, non pas les fichiers eux-mêmes, mais les empreintes de ces fichiers créées par leurs ordinateurs et qui ressembleront à quelque chose comme ça : 3F20 7A3E 35AB BF27 03E6  3CEC 5168 CADA D57C 9321. C’est quand même plus facile et on peut s’envoyer ça par mail ou bien se le dire au téléphone. Si on était dans un film d’espionnage ou si on faisait partie des faucheurs d’OGM, les échanges de clefs publiques et la vérification d’empreintes devraient se faire lors d’une rencontre physique réelle et pas par mail. C’est d’ailleurs ce qui se passe lors des rencontres mondiales du logiciel libre où, tous les jours, à un moment précis de la journée, a lieu une « GPG Party » à l’occasion de laquelle les personnes présentes s’échangent leurs empreintes de clef GPG.

 

Quelques liens utiles :

Vous trouverez un très bon tutoriel pour commencer à chiffrer vos mails avec Enigmail sous Thunderbird ici.

D’autres liens utiles si vous voulez approfondir :
Un excellent document pour comprendre.
Les bases de l’utilisation de GNU Privacy Guard (GnuPG).
Le manuel complet de GNU Privacy Guard.

Ce contenu a été publié dans Information, avec comme mot(s)-clé(s) , , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Une réponse à GPG : Chiffrement et signature numérique.

  1. Cesses dit :

    super,
    j’ai tout bien compris ;-)
    surtout le camping car
    didier

Les commentaires sont fermés.