Cipher suites: de algoritmen van TLS-cryptografie
Wanneer een browser verbinding maakt met een HTTPS-server, is de eerste stap de TLS-handshake: client en server onderhandelen welke combinatie van cryptografische algoritmen (cipher suite) te gebruiken voor de verbinding. Een cipher suite bestaat uit vier algoritmen: sleuteluitwisseling (zoals ECDHE dat forward secrecy garandeert), authenticatie (RSA of ECDSA om de identiteit van de server te verifiëren), symmetrische versleuteling (AES-256-GCM om gegevens te versleutelen) en hashfunctie (SHA384 voor integriteit). De beveiliging van de verbinding hangt volledig af van de sterkte van deze algoritmen.
De TLS Cipher Test analyseert de cipher suites die de server aanbiedt tijdens de handshake, controleert ondersteunde TLS-versies, de voorkeursvolgorde van ciphers, aanwezigheid van zwakke of verouderde ciphers en ondersteuning voor geavanceerde functies zoals forward secrecy. Een goed geconfigureerde server biedt alleen moderne en veilige cipher suites aan, met TLS 1.2 en 1.3 als enige ondersteunde versies en forward secrecy op alle verbindingen.
Veilige vs. verouderde ciphers
Ciphers die absoluut vermeden moeten worden: RC4 (gebroken), DES en 3DES (zwak), MD5 (bekende botsingen), export ciphers (opzettelijk verzwakte cryptografie) en elke cipher zonder forward secrecy (directe RSA-sleuteluitwisseling). Aanbevolen ciphers gebruiken ECDHE voor sleuteluitwisseling (forward secrecy), AES-GCM of ChaCha20-Poly1305 voor versleuteling en SHA256+ voor hashing. TLS 1.3 vereenvoudigt de keuze: het biedt alleen veilige cipher suites by design.
TLS correct configureren
Voor Nginx, Apache en andere webservers biedt Mozilla de SSL Configuration Generator die optimale configuraties genereert voor elk compatibiliteitsniveau. De "Modern"-configuratie ondersteunt alleen TLS 1.3 (maximale beveiliging, minder compatibiliteit), "Intermediate" voegt TLS 1.2 toe met veilige ciphers (goed compromis), "Old" ondersteunt ook legacy-clients (meer compatibiliteit, minder beveiliging). Voor de meeste sites is "Intermediate" de optimale keuze.
Na configuratie verifieert u met de TLS Cipher Test en met SSL Check voor het algehele cijfer. Als uw server ook e-mail beheert, test de ciphers op de SMTP-poort met SMTP Diagnostics — de TLS-configuratie voor e-mail kan verschillen van die voor het web. Een server met Cijfer A op HTTPS maar zwakke ciphers op SMTP heeft nog steeds een significante kwetsbaarheid in e-mailcommunicatie.
Forward secrecy verdient bijzondere aandacht: het garandeert dat zelfs als de prive-sleutel van de server in de toekomst wordt gecompromitteerd, eerdere sessies veilig blijven. Zonder forward secrecy (directe RSA-sleuteluitwisseling) kan een aanvaller die de prive-sleutel verkrijgt al het eerder opgenomen verkeer ontsleutelen. Met ECDHE gebruikt elke sessie efemere sleutels die aan het einde van de verbinding worden vernietigd, waardoor retroactieve ontsleuteling onmogelijk wordt.