La sécurité sur Internet est un peu comme la soupe à l’alphabet – SSL, TLS, ECC, SHA, la liste continue. Tous ces acronymes peuvent rendre difficile la compréhension de ce dont vous avez réellement besoin. L’intérrogation qui revient le plus souvent: quelle est la différence entre SSL (Secure Socket Layers) et TLS (Transport Layer Security)? Vous savez que vous voulez sécuriser votre site Web (ou tout autre type de communication), mais avez-vous besoin de SSL? TLS? Tous les deux? Je vais essayer comme d’habitude d’apporter un début de réponse 🙂
Une brève histoire sur le SSL et TLS
SSL et TLS sont des protocoles cryptographiques qui fournissent une authentification et un cryptage de données entre des serveurs, des machines et des applications fonctionnant sur un réseau (par exemple un client se connectant à un serveur Web). SSL est le prédécesseur de TLS. Au fil des années, de nouvelles versions des protocoles ont été publiées pour corriger les vulnérabilités et prendre en charge des suites de chiffrement et des algorithmes plus solides et plus sécurisés.
SSL a été développé à l’origine par Netscape et est arrivé sur la scène en 1995 avec SSL 2.0 (1.0 n’a jamais été publié). La version 2.0 a été rapidement remplacée par SSL 3.0 en 1996 après qu’un certain nombre de vulnérabilités aient été trouvées. Remarque: Les versions 2.0 et 3.0 sont parfois écrites en tant que SSLv2 et SSLv3.
TLS a été introduit en 1999 comme une nouvelle version de SSL et était basé sur SSL 3.0:
Les différences entre ce protocole et SSL 3.0 ne sont pas dramatiques, mais elles sont suffisamment importantes pour que TLS 1.0 et SSL 3.0 n’interopèrent pas. Source
Devriez-vous utiliser le SSL ou TLS?
Les deux SSL 2.0 et 3.0 ont été déconseillés par l’IETF (en 2011 et 2015, respectivement). Au cours des années, des vulnérabilités ont été et continuent d’être découvertes dans les protocoles SSL obsolètes (par exemple POODLE, DROWN). La plupart des navigateurs modernes afficheront une expérience utilisateur dégradée (par exemple une ligne via le cadenas ou https dans la barre d’URL, des avertissements de sécurité) lorsqu’ils rencontrent un serveur Web utilisant les anciens protocoles. Pour ces raisons, vous devez désactiver SSL 2.0 et 3.0 dans la configuration de votre serveur, en laissant uniquement les protocoles TLS activés.
Les certificats ne dépendent pas des protocoles
Avant que quiconque ne s’inquiète de devoir remplacer ses certificats SSL existants par des certificats TLS, il est important de noter que les certificats ne dépendent pas des protocoles. Autrement dit, vous n’avez pas besoin d’utiliser un certificat TLS par rapport à un certificat SSL. Alors que de nombreux fournisseurs ont tendance à utiliser l’expression «certificat SSL / TLS», il est peut-être plus exact de les appeler «Certificats à utiliser avec SSL et TLS», car les protocoles sont déterminés par la configuration de votre serveur.
Il est probable que vous continuerez à voir des certificats appelés certificats SSL, car à ce stade, c’est le terme que plus de gens connaissent, mais nous commençons à voir une utilisation accrue du terme TLS dans l’industrie. SSL / TLS est un compromis commun jusqu’à ce que plus de gens se familiarisent avec TLS.
SSL et TLS sont-ils différents sur le plan cryptographique?
En vérité, la réponse à cette question est oui, mais vous pouvez en dire autant des versions historiques de SSL 2 et 3 ou des versions 1 de TLS avec 1.1, 1.2 ou 1.3. SSL et TLS sont tous deux sur le même protocole mais en raison des différences de version, SSL 2 n’était pas interopérable avec la version 3, et SSL version 3 pas avec TLS version 1. Vous pourriez argumenter que Transport Layer Security (TLS) était juste un nouveau nom pour SSL v4 – essentiellement, nous parlons du même protocole.
Chaque nouvelle version du protocole vient et vient avec ses propres améliorations et / ou de nouvelles fonctionnalités / obsolètes. SSL version 1 n’a jamais été publié, la version 2 a eu quelques défauts majeurs, SSL version 3 était une réécriture de la version 2 (pour corriger ces failles) et TLS version 1 une amélioration de SSL version 3. Depuis la sortie de TLS 1.0 les changements ont été moins significatifs, mais jamais moins importants.
Il convient de noter ici que SSL et TLS se réfèrent simplement à la poignée de main qui a lieu entre un client et un serveur. La poignée de main ne fait aucun cryptage en soi, elle accepte simplement un secret partagé et le type de cryptage qui va être utilisé.