La messagerie électronique est l’une des applications Internet les plus utilisées, avec les technologies Web. Devenue le moyen de communication principal pour de nombreuses entreprises, son utilisation dans le cadre de l’échange de documents sensibles ou confidentiels n’est pas sans poser de problèmes. Les protocoles normalisés qui permettent de mettre en œuvre les applications de messagerie ont en effet été conçus dans les années 1970, époque à laquelle les questions de sécurité sur Internet n’étaient pas encore d’actualité.
Les deux techniques les plus utilisées pour intégrer des fonctions de sécurité à la messagerie électronique sont PGP (Pretty Good Privacy) et S/MIME (Secure MIME). Ces deux technologies concurrentes permettent en effet, au moyen de méthodes cryptographiques largement utilisées par ailleurs dans le domaine de la sécurité des réseaux, d’assurer l’authentification des utilisateurs ainsi que la confidentialité et l’intégrité des échanges.
Après avoir mis en évidence les différents problèmes inhérents à la messagerie électronique classique, nous présenterons dans une première partie les mécanismes de base utilisés par ces deux technologies et en quoi elles permettent de répondre à ces problèmes. Nous détaillerons ensuite les fonctions de sécurité communes à PGP et à S/MIME : création de clés, révocation de clés, signature électronique des messages, chiffrement des messages. Puis nous décrirons les différentes méthodes d’échange de clés publiques entre utilisateurs et montrerons qu’il est nécessaire, pour obtenir un niveau de sécurité suffisant, de valider les clés publiques obtenues. L’une des différences principales entre PGP et S/MIME vient du modèle de sécurité utilisé pour valider les clés publiques : un modèle décentralisé pour PGP, où chaque utilisateur est chargé de faire certifier lui-même sa propre clé publique, et un modèle centralisé pour S/MIME, où la certification est à la charge d’autorités de certification dûment accréditées. Nous décrirons successivement ces deux modèles de sécurité. Enfin, nous présenterons les différents formats de messages utilisés par PGP et S/MIME, ainsi que les principales implémentations disponibles actuellement. Nous conclurons par une comparaison entre les deux technologies.