Hoe werkt HTTPS
Wat is HTTPS?
HTTPS is HTTP met een versleutelingslaag eromheen, die TLS heet. De letters https:// in het adres betekenen dat de verbinding tussen je browser en de website versleuteld is.
Zonder die versleuteling reist alles wat je verstuurt als leesbare tekst over het netwerk. Op een openbaar wifinetwerk, bij je internetprovider of op een tussenstation onderweg kan iemand dan meelezen of gegevens aanpassen. Met HTTPS is de inhoud voor iedereen die tussenin zit onleesbaar, al zijn de domeinnaam en het moment van bezoek vaak wel zichtbaar.
Wat gebeurt er bij een beveiligde verbinding?
Bij het openen van een HTTPS-site doorloopt de browser een korte onderhandeling, de TLS-handshake:
- De browser stuurt een verzoek en laat weten welke versleutelingsmethoden hij ondersteunt.
- De server stuurt zijn certificaat mee. Wat dat precies is, lees je bij wat een SSL-certificaat doet.
- De browser controleert het certificaat: komt het van een vertrouwde uitgever, past de domeinnaam erbij en is het nog geldig?
- Browser en server spreken een gedeelde sleutel af, waarmee de rest van de verbinding wordt versleuteld.
Pas als alles klopt, laadt de pagina. Mislukt een van de stappen, dan krijg je een waarschuwing in plaats van de site. Wat de meest voorkomende oorzaken van zo'n waarschuwing zijn, lees je bij website niet veilig.
Waarom zeggen we nog SSL als het TLS is?
SSL is de oudere naam van het protocol waarvan TLS de opvolger is. Oude SSL-versies zijn onveilig en worden niet meer gebruikt. Toch is de naam SSL blijven hangen, ook voor het certificaat. Daarom spreken veel mensen over een SSL-certificaat, terwijl ze eigenlijk over TLS bedoelen.
Voor jou als website-eigenaar maakt dat weinig uit. Belangrijk is dat je server moderne TLS-versies ondersteunt, en dat regelt je hoster meestal voor je. Een extra beveiligingsheader zoals HSTS kan browsers verplichten altijd via HTTPS te verbinden. Meer daarover lees je bij security headers.
Veelgestelde vragen
Beschermt HTTPS mijn website tegen hackers?
Niet helemaal. HTTPS beschermt de verbinding tussen bezoeker en server, zodat niemand onderweg kan meelezen of aanpassen. Het beschermt niet tegen een verouderd CMS, zwakke wachtwoorden of malware die al op je site staat. Daarvoor heb je updates, sterke wachtwoorden en goede back-ups nodig.
Heb ik HTTPS nodig als mijn site alleen informatie toont?
In de meeste gevallen wel. Ook een site zonder formulieren of inlog heeft bezoekers die vertrouwen willen, en browsers markeren sites zonder HTTPS als niet veilig. Een site die alleen informatie toont, is minder kwetsbaar, maar er is zelden een reden om HTTPS over te slaan.