Chiffrement avec GPG

De Wiki JabberFR
Aller à : navigation, rechercher
Edit.png
Cet article est une ébauche à compléter, vous pouvez partager vos connaissances en le modifiant.

Vous pouvez également suggérer des améliorations sur sa page de discussion.

Chiffrement des communications client-client

Il est question ici de détailler la mise en place d'une implémentation libre de PGP afin d'ssurer la confidentialité de vos échanges.

La majorité des clients et des serveurs Jabber supportent le chiffrement client-serveur, notamment grâce à SSL et TLS. Cette méthode de chiffrement assure la confidentialité de vos données uniquement du client au serveur. Les données que vous échangez sont toujours visibles en clair sur les serveurs Jabber par lesquels elles transitent. Pour faire face à ce problème de plus en plus de clients permettent de chiffrer vos communications de bout en bout. En utilisant GPG, personne d'autre que vous et votre correspondant ne peuvent lire vos discussions.

Introduction

Une explication complète sur le fonctionnement de GPG (implémantation libre de PGP) n'a pas se place ici, néanmoins il est utile de faire un bref rappel. Pour chiffrer des communications, il faut être en possession de deux clés.

  • La clé publique : le message sera chiffré en fonction de cette clé
  • La clé privée : le message sera déchiffré grâce à cette clé

Pour chiffrer vos communications, vous devez créer une paire de clés. Vous donnerez ensuite la clé publique à vos correspondants. Quand un de vos contacts voudra vous envoyer un message, il le chiffrera en utilisant votre clé publique. Lorsque vous recevrez ce message, il suffira d'utiliser votre clé privée pour le déchiffrer. La démarche est identique si vous voulez envoyer un message chiffré. Evidemment, vous ne devez communiquer votre clé privée à personne.

Gestion des clés

Dans un premier temps il faut installer GnuPG par l'intermédiaire de votre gestionnaire de paquets adoré ou en téléchargeant directement les binaires si vous êtes sous Windows. Dans le cas où vous utilisez GNU/Linux, il est possible d'installer un front-end pour vous faciliter la tâche. Pour des raisons d'exhaustivité évidentes, seule l'utilisation en ligne de commande sera expliquée. Voici un petit mémo des commandes qui nous seront utiles au long de notre explication :

Obtenir de l'aide : gpg --help
lister toutes les clés : gpg --list-keys
Générer une paire de clés : gpg --gen-key 
Exporter une clé publique : gpg --export -a 'identifiant' > 'nom du fichier de sortie'
Importer une clé publique : gpg --import 'nom du fichier contenant la clé'

GnuPG possède de nombreuses autres fonctions comme la signature de texte, mais celles-ci de nous sont pas directement utile dans le cadre de Jabber.

Création et exportation d'une clé

Section à venir.

Importation d'une clé

Pour le moment vous avez généré un couple de clés. Vous avez ensuite exporté votre clé publique, puis vous l'avez envoyé à votre correspondant. A partir de ce moment votre ami peut vous envoyer des messages chiffrés, mais pas vous La prochaine étape est de récupérer la clé publique de votre contact afin de chiffrer les messages que vous envoyez.

Vous pouvez vous procurer la clé publique de votre contact par plusieurs moyens. Premièrement, il peut vous l'envoyer par e-mail, ou directement lors d'une conversation. Dans ce cas, copiez le clé complète (avec ses en-têtes) dans un fichier, par exemple key.txt puis ouvrez une console, allez dans le répertoire où se trouve le fichier key.txt et entrez :

gpg --import 'key.txt'

Le programme vous informera que la clé a bien été importée en vous fournissant des informations sur son propriétaire.

Il se peut aussi que votre contact vous envoie sa clé directement sous forme de fichier, ou bien qu'il vous donne un lien pour la télécharger sur un serveur de clé. La démarche reste la même à savoir téléchargez le fichier puis importez le.

Configuration du client

Gajim

La première étape est d'indiquer à Gajim la clé privée utilisée pour déchiffrer les messages qui vous parviendront. Pour cela, ouvrez la fenêtre localisée dans Edition > Comptes sélectionnez le compte concerné puis rendez-vous sur l'onglet Informations personelles. Choisissez votre clé privée et entrez votre passphrase.



La deuxième étape consiste à demander la clé privée d'un de vos contacts puis à l'importer. Une fois cette clé importée assignez la à son propriétaire en le sélectionnant dans votre roster puis en cliquant sur Assigner une clé OpenPGP.