Wat is TLS?

TLS (Transport Layer Security) is een cryptografisch protocol dat een verbinding tussen twee applicaties over een netwerk beschermt door de gegevens te versleutelen, de identiteit van de gesprekspartner te controleren met certificaten en elke wijziging onderweg te detecteren. TLS is de opvolger van SSL (Secure Sockets Layer) en vormt de basis onder HTTPS, beveiligde e-mail (SMTP, IMAP, POP3), veel VPN’s en steeds meer industriële protocollen. In OT beschermt TLS bijvoorbeeld verkeer tussen SCADA, HMI’s, edge devices en de cloud.


🧠 Wat beschermt TLS precies?

TLS levert drie beveiligingseigenschappen voor gegevens in transit:

  • Vertrouwelijkheid (Encryptie) - data is onleesbaar voor wie het verkeer afluistert
  • Authenticatie - de client controleert via een X.509-certificaat met wie hij praat; bij mutual TLS controleert ook de server de client
  • Integriteit - elke wijziging of manipulatie van verzonden data wordt gedetecteerd, wat een man-in-the-middle-aanval of replay-aanval veel moeilijker maakt

TLS beschermt alleen de verbinding zelf. Data die op een server of PLC staat, valt erbuiten, en TLS zegt niets over wat een geauthenticeerde partij vervolgens mag doen; daarvoor zijn autorisatie en toegangsbeheer nodig.


🕰️ Welke versies van SSL en TLS bestaan er?

TLS draait boven TCP tussen de transport- en applicatielaag van het OSI-model; voor UDP bestaat de variant DTLS. Het protocol is in dertig jaar meerdere keren vernieuwd:

Versie Jaar Specificatie Status
SSL 2.0 1995 Netscape Verboden sinds 2011 (RFC 6176)
SSL 3.0 1996 Netscape Afgeschaft in 2015 (RFC 7568)
TLS 1.0 1999 RFC 2246 Afgeschaft in 2021 (RFC 8996)
TLS 1.1 2006 RFC 4346 Afgeschaft in 2021 (RFC 8996)
TLS 1.2 2008 RFC 5246 Nog breed gebruikt; veilig mits goed geconfigureerd
TLS 1.3 2018 RFC 8446 Huidige standaard

TLS 1.3 heeft flink opgeschoond: zwakke algoritmen zoals RC4, CBC-modus en statische RSA-sleuteluitwisseling zijn verdwenen en de handshake kost nog maar één round-trip. Elke volledige handshake gebruikt bovendien kortlevende sleutels, zodat forward secrecy gegarandeerd is. De term “SSL” leeft voort in “SSL-certificaat” en “SSL-VPN”, maar technisch gaat het vrijwel altijd om TLS.


⚙️ Hoe werkt de TLS-handshake?

Voordat er applicatiedata stroomt, voeren client en server een handshake uit. In TLS 1.3 gaat dat zo:

  1. ClientHello - de client stuurt ondersteunde versies, cipher suites en direct een sleuteldeel voor de sleuteluitwisseling (meestal ECDHE met X25519, in moderne browsers al hybride X25519MLKEM768)
  2. ServerHello - de server kiest de parameters en stuurt zijn eigen sleuteldeel; beide kanten berekenen nu dezelfde sessiesleutels
  3. Certificaat en bewijs - de server stuurt zijn certificaatketen en bewijst met een digitale handtekening dat hij de private sleutel bezit
  4. Validatie - de client controleert de keten tot een vertrouwde root-CA, de geldigheidsdatum en de servernaam
  5. Versleutelde sessie - alle verdere data gaat versleuteld en integriteitsbeschermd over de verbinding

Alleen de server stuurt standaard een certificaat. Bij mutual TLS (mTLS) vraagt de server ook om een clientcertificaat, zodat beide kanten zich bewijzen. Dat is in OT gebruikelijk voor machine-naar-machineverkeer, omdat er geen gebruiker is die een wachtwoord intypt. TLS 1.3 kent ook een 0-RTT-modus voor hervatte sessies; die is gevoelig voor replay en hoort daarom niet bij opdrachten die een proces aansturen.


🔐 Welke rol spelen certificaten en cipher suites?

Een certificaat koppelt een publieke sleutel aan een identiteit en is ondertekend door een certificaatautoriteit (CA). Op internet vertrouwt een browser publieke CA’s; in een fabriek werkt u meestal met een eigen, private CA in een PKI. Zelfondertekende certificaten zijn cryptografisch niet zwakker, maar elke client moet ze afzonderlijk vertrouwen, wat bij honderden apparaten onbeheersbaar wordt.

Een cipher suite legt vast welke algoritmen een sessie gebruikt. De Nederlandse TLS-beveiligingsrichtlijnen van het NCSC, voor het eerst gepubliceerd in 2014 en in de versie 2025-05 bijgewerkt, delen instellingen in als goed, voldoende, uit te faseren of onvoldoende:

Onderdeel Goed Voldoende of uit te faseren Onvoldoende
Protocolversie TLS 1.3 TLS 1.2 (voldoende) TLS 1.1, TLS 1.0, alle SSL-versies
Sleuteluitwisseling Hybride X25519MLKEM768 ECDHE (voldoende); DHE met ffdhe3072 of hoger (uit te faseren) RSA-sleuteluitwisseling, ffdhe2048
Bulkversleuteling AES-256-GCM, ChaCha20-Poly1305 AES-128-GCM; AES-CBC (uit te faseren) RC4, 3DES, NULL
Certificaathandtekening Nog geen quantumveilige optie ECDSA, RSA-PSS, EdDSA (voldoende) RSA-PKCS#1 v1.5, anoniem

Het beheer van al deze certificaten, van uitgifte en vernieuwing tot intrekking, beschrijft het artikel Certificate Management.


🏭 Hoe wordt TLS gebruikt in OT-omgevingen?

TLS wordt steeds vaker ingebouwd in industriële protocollen, al verschilt de precieze rol per protocol:

Protocol of toepassing Hoe TLS wordt gebruikt Typische poort
MQTT / Sparkplug B MQTT over TLS, vaak met clientcertificaten per apparaat 8883 (onbeveiligd 1883)
Modbus TCP Security Modbus-berichten in TLS 1.2+, mutual authentication en rollen in het certificaat 802 (onbeveiligd 502)
OPC UA opc.tcp gebruikt eigen UA SecureConversation; TLS bij opc.https en opc.wss 4840 / 443
IEC 60870-5-104, DNP3, IEC 61850 TLS-profiel volgens IEC 62351-3 19998 (IEC 104 met TLS)
Web-HMI en webinterfaces HTTPS naar PLC, switch of SCADA-client 443
Remote access SSL-VPN, OpenVPN of een beheerportaal voor onderhoud op afstand 443 / 1194 (OpenVPN)
MES, BMS en IT-koppelingen REST-API’s en datapijplijnen naar cloud en IIoT-platforms 443

Een veelgemaakte fout is te denken dat OPC UA “OPC UA over TLS” is. Het binaire protocol op poort 4840 heeft een eigen beveiligingslaag met certificaten; TLS komt pas in beeld bij de HTTPS- en WebSocket-varianten. Brokers zoals Mosquitto ondersteunen TLS standaard, maar het staat lang niet altijd aan.


⚠️ Welke uitdagingen kent TLS in OT?

  • Verlopen certificaten - veel apparaten worden geleverd met een certificaat dat na enkele jaren verloopt. Weigert een client daarna de verbinding, dan valt de procesdata weg zonder dat er een aanval is.
  • Geen correcte tijd - certificaatvalidatie vereist een betrouwbare klok. Zonder NTP of PTP lijkt een geldig certificaat verlopen of nog niet geldig.
  • Legacy-apparatuur - oudere PLC’s en HMI’s ondersteunen alleen TLS 1.0 of helemaal geen TLS. Zet dan een gateway of proxy ervoor en compenseer met netwerksegmentatie.
  • Beperkte rekenkracht - kleine embedded controllers hebben moeite met RSA-4096; ECDSA en hardwarematige crypto, bijvoorbeeld via een Trusted Platform Module, helpen.
  • Zicht op het netwerk - versleuteld verkeer maakt deep packet inspection door een industriële firewall of IDS moeilijker; plan monitoring op de eindpunten of via TLS-inspectie.
  • Uitgeschakelde validatie - integrators zetten certificaatcontrole soms uit “om het werkend te krijgen”. Versleuteling zonder validatie beschermt niet tegen een man-in-the-middle.

🧭 Hoe richt u TLS stapsgewijs in een OT-netwerk in?

  1. Inventariseer - breng met uw asset inventory in kaart welke apparaten TLS ondersteunen, welke versie en welke certificaten (vervaldatum!).
  2. Zet een private PKI op - één interne root-CA, offline bewaard, met per zone of site een uitgevende CA.
  3. Kies een profiel - TLS 1.3 waar het kan, TLS 1.2 met ECDHE en AES-GCM waar het moet; volg de NCSC-richtlijnen.
  4. Gebruik mTLS voor machineverkeer - geef elk apparaat een eigen clientcertificaat in plaats van gedeelde wachtwoorden.
  5. Automatiseer vernieuwing - gebruik protocollen als EST of ACME en kies looptijden die passen bij uw onderhoudsvensters.
  6. Monitor - alarmeer op certificaten die binnen 60 dagen verlopen en op handshake-fouten in logging en security monitoring.

Deze aanpak sluit aan bij de eisen voor communicatie-integriteit en vertrouwelijkheid in IEC 62443-3-3 en IEC 62443-4-2, bij de zorgplicht onder NIS2 en bij de Cyber Resilience Act, die fabrikanten verplicht producten met veilige standaardinstellingen te leveren. Op internet verkort het CA/Browser Forum de maximale looptijd van publieke certificaten stap voor stap van 398 naar 47 dagen in 2029; dat raakt vooral OT-apparatuur met publiek vertrouwde certificaten.


❓ Veelgestelde vragen

Wat is het verschil tussen SSL en TLS?

SSL is de oorspronkelijke versie van het protocol, ontwikkeld door Netscape in de jaren negentig. TLS is de gestandaardiseerde opvolger van de IETF, vanaf TLS 1.0 in 1999. Alle SSL-versies zijn afgeschaft en onveilig; wat vandaag “SSL” heet, is in de praktijk TLS.

Welke TLS-versie moet ik gebruiken?

Gebruik TLS 1.3 waar mogelijk en TLS 1.2 alleen voor apparaten of clients die 1.3 nog niet ondersteunen. Het NCSC beoordeelt TLS 1.3 als goed en TLS 1.2 als voldoende. TLS 1.0 en 1.1 zijn sinds 2021 formeel afgeschaft en horen niet meer in een OT-netwerk.

Wat is mutual TLS (mTLS)?

Mutual TLS is een TLS-verbinding waarbij niet alleen de server maar ook de client zich met een certificaat bewijst. In OT is mTLS de gebruikelijke manier om apparaten, gateways en brokers onderling te authenticeren zonder wachtwoorden. Modbus/TCP Security en veel MQTT-installaties schrijven het voor.

Is TLS hetzelfde als een VPN?

TLS en een VPN zijn niet hetzelfde. TLS beschermt één verbinding tussen twee applicaties, terwijl een VPN een versleutelde tunnel voor complete netwerktoegang biedt. Sommige VPN’s, zoals OpenVPN en SSL-VPN’s, gebruiken TLS wel als onderliggende techniek.

Wat gebeurt er als een certificaat verloopt?

Een correct ingestelde TLS-client weigert de verbinding zodra het certificaat van de server verlopen is. In OT kan dat betekenen dat een SCADA-systeem of historian plotseling geen data meer ontvangt. Certificaatbewaking en tijdige vernieuwing horen daarom bij het reguliere onderhoud.

Is TLS bestand tegen quantumcomputers?

Klassieke TLS-sleuteluitwisseling met ECDHE is op termijn kwetsbaar voor quantumcomputers, en versleuteld verkeer kan nu al worden opgeslagen om later te ontcijferen. Daarom is voor TLS 1.3 hybride sleuteluitwisseling ontwikkeld, zoals X25519MLKEM768, dat X25519 combineert met het post-quantumalgoritme ML-KEM. Browsers gebruiken dit al standaard en het NCSC beoordeelt het als goed.


📌 Samengevat

TLS is het standaardprotocol om netwerkverbindingen te versleutelen en de gesprekspartner met certificaten te authenticeren, en daarmee een vaste bouwsteen van Defense in Depth in zowel IT als OT. Kies TLS 1.3 of goed geconfigureerde TLS 1.2, gebruik mTLS en een eigen PKI voor machineverkeer, en beheer certificaten actief, zodat beveiliging niet ten koste gaat van beschikbaarheid.