Cipher suites : les algorithmes de la cryptographie TLS
Quand un navigateur se connecte a un serveur HTTPS, la premiere etape est le TLS handshake : client et serveur negocient quelle combinaison d'algorithmes cryptographiques (cipher suite) utiliser pour la connexion. Un cipher suite est compose de quatre algorithmes : l'echange de cles (comme ECDHE qui garantit la forward secrecy), l'authentification (RSA ou ECDSA pour verifier l'identite du serveur), le chiffrement symetrique (AES-256-GCM pour chiffrer les donnees), et la fonction de hachage (SHA384 pour l'integrite). La securite de la connexion depend entierement de la robustesse de ces algorithmes.
Le TLS Cipher Test analyse les cipher suites offerts par le serveur pendant le handshake, verifiant les versions TLS supportees, l'ordre de preference des ciphers, la presence de ciphers faibles ou obsoletes, et le support de fonctionnalites avancees comme la forward secrecy. Un serveur bien configure n'offre que des cipher suites modernes et securises, avec TLS 1.2 et 1.3 comme seules versions supportees, et la forward secrecy sur toutes les connexions.
Ciphers securises vs obsoletes
Les ciphers a eviter absolument : RC4 (casse), DES et 3DES (faibles), MD5 (collisions connues), ciphers d'export (cryptographie deliberement affaiblie), et tout cipher sans forward secrecy (echange de cles RSA direct). Les ciphers recommandes utilisent ECDHE pour l'echange de cles (forward secrecy), AES-GCM ou ChaCha20-Poly1305 pour le chiffrement, et SHA256+ pour le hachage. TLS 1.3 simplifie le choix : il n'offre que des cipher suites securises par conception.
Configurer TLS correctement
Pour Nginx, Apache et d'autres serveurs web, Mozilla propose le SSL Configuration Generator qui genere des configurations optimales pour chaque niveau de compatibilite. La configuration "Modern" ne supporte que TLS 1.3 (securite maximale, moins de compatibilite), "Intermediate" ajoute TLS 1.2 avec des ciphers securises (bon compromis), "Old" supporte aussi les clients legacy (plus de compatibilite, moins de securite). Pour la plupart des sites, "Intermediate" est le choix optimal.
Apres la configuration, verifiez avec le TLS Cipher Test et avec SSL Check pour le grade global. Si votre serveur gere aussi le courrier electronique, testez les ciphers sur le port SMTP avec SMTP Diagnostics — la configuration TLS pour le courrier pourrait differer de celle du web. Un serveur avec Grade A en HTTPS mais des ciphers faibles en SMTP a encore une vulnerabilite significative dans les communications email.
La forward secrecy merite une attention particuliere : elle garantit que meme si la cle privee du serveur est compromise a l'avenir, les sessions passees restent securisees. Sans forward secrecy (echange de cles RSA direct), un attaquant qui obtient la cle privee peut dechiffrer tout le trafic passe qu'il a enregistre. Avec ECDHE, chaque session utilise des cles ephemeres qui sont detruites a la fin de la connexion, rendant impossible le dechiffrement retroactif.