Chiffrement
Pourquoi chiffrer ses données ?
Lorsque vous utilisez un système de messagerie propriétaire du type MSN, Yahoo!, AIM ou ICQ vos messages passent en clair sur le réseau Internet. Il est alors facile pour une personne placée à un endroit stratégique sur le réseau internet « d'écouter » votre communication. Ces écoutes peuvent notamment être utilisées :
- pour porter atteinte à votre vie privée ;
- pour détourner vos identifiants de connexion.
Jabber permet de se prémunir facilement d'un certain nombre de ces risques.
Les méthodes de chiffrement
Jabber permet de chiffrer les données au niveau des communications client-serveur et serveur-serveur. Deux méthodes de chiffrement sont utilisées actuellement :
SSL (Secure Socket Layer)
C'est la méthode historique de chiffrement. C'est une méthode trés répandue, utilisée par beaucoup d'autres applications. C'est par exemple la méthode utilisée pour sécuriser les connexions sur les sites de commerce en ligne et les sites bancaires ;
TLS (Transport Layer Security)
C'est presque la même méthode de chiffrement que SSL. Le nom est simplement différent car SSL a été introduit par la société Netscape alors que TLS est normalisé par l'IETF (organisme de normalisation des standards internet). TLS est la méthode de chiffrement recommandée pour Jabber par la norme. StartTLS permet d'établir une connection TLS sur le même port que la connexion en clair.
Le chiffrement de bout en bout
En utilisant ces méthodes, vos communications sont chiffrées entre vous et votre serveur. Cependant, il faut être conscient que votre serveur et le serveur de votre destinataire ont accès aux messages. De plus, vous n'avez pas de moyen de savoir si votre serveur et le serveur de votre correspondant communiquent en clair ou par communication chiffrée. Si vous voulez vous assurer que personne d'autre que votre correspondant ne pourra déchiffrer vos messages, Jabber prévoit l'utilisation de clés PGP/GPG (méthode identique au chiffrement des e-mails). Cette méthode à clés asymétriques est plus lourde à mettre en place mais vous assure que seul votre correspondant sera capable de déchiffrer vos messages. Le protocle définissant la façon d'utiliser des clés OpenPGP est décrit dans l'XEP 0027 : « Current Jabber OpenPGP Usage ».
Pratiques courantes
La quasi-totalité des serveurs permettent l'utilisation de SSL ou de TLS pour les communications client-serveur.
Les communications chiffrées serveur-serveur se généralisent mais restent minoritaires par rapport aux communications en clair.
Par défaut :
- les communications en clair et par TLS se font sur le port 5222 ;
- les communications chiffrées par SSL se font sur le port 5223.
Clients supportant ce protocole
- Coccinella 0.95.11 :
- permet le chiffrement par SSL et par TLS ;
- Fire 1.5.6 :
- permet le chiffrement par SSL et par TLS ;
- permet le chiffrement de bout en bout par OpenPGP.
- Gaim 1.5.0 :
- permet le chiffrement par SSL et par TLS ;
- Gajim 0.8 :
- permet le chiffrement par SSL et par TLS ;
- permet le chiffrement de bout en bout par OpenPGP.
- Gossip 0.11.1 :
- permet le chiffrement par SSL et par TLS ;
- Kopete 0.12 :
- permet le chiffrement par SSL et par TLS ;
- permet le chiffrement de bout en bout par OpenPGP.
- Pandion 2.5 :
- permet le chiffrement par SSL et par TLS ;
- Psi 0.10 :
- permet le chiffrement par SSL et par TLS ;
- permet le chiffrement de bout en bout par OpenPGP ;
- Spark 1.0 :
- permet le chiffrement par TLS et SASL ;
- Tkabber 2.5 :
- permet le chiffrement par SSL et par TLS ;
Serveurs supportant ce protocole
- Djabberd :
- permet le chiffrement client-serveur par SSL et TLS ;
- permet le chiffrement serveur-serveur par TLS.
- ejabberd :
- permet le chiffrement client-serveur par SSL et TLS ;
- permet le chiffrement serveur-serveur par TLS.
- jabberd14 :
- permet le chiffrement client-serveur par SSL et TLS ;
- permet le chiffrement serveur-serveur par SSL et TLS.
- jabberd2 :
- permet le chiffrement client-serveur par SSL et TLS ;
- permet le chiffrement serveur-serveur par TLS.
- Wildfire :
- permet le chiffrement client-serveur par SSL et TLS ;
- permet le chiffrement serveur-serveur par TLS.