De meeste informatie die via het internet wordt verstuurd, wordt op een relatief onveilige manier verstuurd. De gegevens worden niet versleuteld en we controleren niet of server van de website die we raadplegen ook daadwerkelijk de juiste server is. Dit kan over het algemeen geen kwaad, omdat veel informatie die we versturen en ontvangen weinig waarde heeft voor kwaadwillenden.

Wanneer we echter belangrijke zaken willen regelen, dan is het belangrijk dat dit op een betrouwbare en veilige manier kan gebeuren. Als we bankzaken of persoonlijke zaken met bijvoorbeeld ons DigiD willen regelen, dan willen we zeker weten dat de gegevens bij de juiste instantie terecht komen en dat niemand de informatie die wordt verstuurd kan opvangen.

Om die reden wordt bij belangrijke verbindingen meestal gebruik gemaakt van het Secure Socket Layer of SSL-protocol. Het SSL-protocol is een protocol waarbij de server en de client een veilige verbinding opzetten met behulp van een SSL-certificaat en een authenticatieserver. Deze hulpmiddelen worden allebei verstrekt door een betrouwbare en onafhankelijke derde partij, zodat er geen twijfel bestaat over de authenticiteit van de hulpmiddelen.

De betrouwbare en onafhankelijke derde partij is in het geval van SSL een zogenaamde certificatieautoriteit (CA). Er zijn wereldwijd vele verschillende CA’s en zij controleren bij de aanvraag van een SSL-certificaat de identiteit van de aanvrager en de aanvrager zal bovendien een bepaald bedrag moeten betalen voor het certificaat.

Nadat een website een certificaat heeft verkregen, kan dit door de website worden gebruikt om gegevens te versleutelen en zichzelf te identificeren bij de client. Dit is mogelijk doordat de server in het vervolg een aan het begin van een sessie een sleutel naar de client stuurt en die sleutel kan niet alleen worden gebruikt voor het versleutelen en ontsleutelen van gegevens maar ook voor het bevestigen van de identiteit van de server.