Transport Layer Security (TLS)-certificaten voor beveiligde websites verifiëren de integriteit van zowel het eigendom als de gegevens van door u bezochte websites. Dit artikel legt uit hoe dat werkt.
Inhoudsopgave
Welke websites gebruiken certificaten?
Websites waarvan het webadres met https begint, gebruiken TLS-servercertificaten. Websites die TLS-servercertificaten gebruiken, zijn alleen in zoverre veilig dat ze voor twee zaken zekerheid bieden:
- De websitebeheerder is eigenaar van of beheert de domeinnaam, wat ervoor zorgt dat gebruikers met de legitieme website verbinden en niet met een nagemaakte of kwaadwillende kopie van de website.
- Versleutelde gegevensuitwisseling via TLS tussen de browser en de website, om bescherming te bieden tegen meeluisteren of knoeien met de gegevens door onbevoegde partijen.
Vertrouwensketen
Browsers zoals Firefox verifiëren certificaten via een hiërarchie die een vertrouwensketen wordt genoemd. Deze definieert een structuur voor browser en andere programma’s om de integriteit van een certificaat te verifiëren. Het is een lijst van drie certificaten:
- Het rootcertificaat (vertrouwensanker)
- Het tussencertificaat
- Het TLS-servercertificaat (eind-entiteit)
Laten we ze definiëren: het rootcertificaat behoort toe aan de Certificaatautoriteit (CA), die TLS-servercertificaten uitgeeft en die inherent door de browser wordt vertrouwd; het tussencertificaat treedt op als tussenpersoon (certificaat-uitgevende CA) tussen de root-CA en de website; het TLS-servercertificaat wordt uitgegeven aan de entiteit of organisatie die de controle over het domein van de website aantoont.
TLS-servercertificaten vertrouwen op publieke-sleutelcryptografie, waarin een asymmetrisch sleutelpaar twee mathematisch verwante sleutels heeft:
Privésleutel: deze sleutel wordt door de eigenaar geheim gehouden en wordt gebruikt voor cryptografische handelingen, zoals het ondertekenen van gegevens (waaronder vertificaten) of het ontsleutelen van gegevens die zijn versleuteld met de publieke sleutel.
Publieke sleutel: deze sleutel wordt publiek gedeeld en wordt gebruikt om handtekeningen die door de privésleutel zijn aangemaakt te verifiëren of om gegevens die alleen de privésleutel kan ontsleutelen te versleutelen.
Publieke-sleutelcertificaten bevatten de volgende gegevens:
- Details over de Certificaatautoriteit (CA) die het certificaat heeft uitgegeven
- Een publieke sleutel behorend bij de organisatie die het certificaat heeft ontvangen
- Identificerende details over de organisatie die de privésleutel bezit (zie Certificaatinhoud hieronder. Voor TLS is dit primair de domeinnaam van de website)
We kunnen nu beschrijven hoe Firefox bepaalt of een website veilig is.
Hoe verifieert Firefox de certificaatintegriteit?
Firefox gebruikt als volgt de vertrouwensketen om TLS-servercertificaten te verifiëren:
- Firefox downloadt het certificaat van de bezochte website.
- Firefox controleert het certificaat tegen de interne database van vertrouwde certificaatautoriteiten (CA’s).
- Firefox gebruikt de publieke sleutel van het rootcertificaat van de CA met het TLS-servercertificaat dat de website heeft aangeleverd om te controleren of het rootcertificaat en het tussencertificaat correct zijn afgetekend in de keten.
- Firefox controleert de gegevens in het certificaat om na te gaan of de website die u bezoekt overeenkomt met de website die vermeld is in het certificaat.
- Firefox genereert een symmetrische (enkele) sleutel voor het versleutelen van HTTP-verkeer voor de verbinding.
- Firefox versleutelt de symmetrische sleutel met de publieke sleutel van het server, die wordt gevonden in het servercertificaat.
- De privésleutel, die zich op de webserver bevindt, ontsleutelt de noodzakelijke verbindingsgegevens om wat bekend staat als de TLS-handshake te voltooien.
Vervolgens kan er beveiligd worden gecommuniceerd tussen Firefox en de website.
Een certificaat bekijken
Volg deze stappen om een certificaat te bekijken:
- Klik op het hangslotpictogram in de adresbalk.
- Klik in het paneel Website-informatie dat wordt geopend op .
- Klik in het volgende paneel op
- Klik in het venster Pagina-info dat wordt geopend op .
Firefox opent nu de pagina about:certificate om gegevens over het certificaat van de bezochte website te tonen:
De drie tabbladen tonen, van links naar rechts, het TLS-servercertificaat, het tussencertificaat en het rootcertificaat.
Certificaatinhoud
TLS-servercertificaten bevatten de volgende informatie:
- Onderwerp: bevat optionele eigenschappen, zoals de websitenaam en andere informatie over de organisatie die het certificaat bezit.
- Uitgever: identificeert de CA-entiteit die het certificaat heeft uitgegeven.
- Geldigheid: toont hoe lang het certificaat geldig is.
- Alternatieve namen houder: vermeldt de websiteadressen waarvoor het certificaat geldig is.
- Informatie publieke sleutel: vermeldt eigenschappen van de publieke sleutel van het certificaat.
- Serienummer: een unieke identificatie van het certificaat.
- Handtekeningsalgoritme: algoritme dat is gebruikt om de handtekening aan te maken.
- Vingerafdrukken: hash van het certificaatbestand in DER binaire opmaak.
- Belangrijkste gebruiksmogelijkheden en Uitgebreide gebruiksmogelijkheden: specificeren hoe personen het certificaat kunnen gebruiken, zoals voor het uitvoeren van een TLS-webserverauthenticatie.
- Sleutel-ID houder: een identificator die is aangemaakt vanuit de publieke sleutel van het TLS-certificaat, als wijze om het certificaat te identificeren.
- Sleutel-ID autoriteit: een identificator die is aangemaakt vanuit de publieke sleutel van het TLS-certificaat, als wijze om de publieke sleutel die overeenkomt met de privésleutel die is gebruikt om het certificaat te ondertekenen te identificeren.
- CRL-eindpunten: de locaties van de Certificate Revocation List (CRL) van de uitgevende CA.
- Autoriteit-info (AIA): bevat de validatiemethode voor de certificaatautoriteit- en tussencertificaatbestanden.
- Certificaatbeleid: bevat aanwijzingen naar het type TLS-certificaat (b.v. gegevens die zijn geverifieerd toen het certificaat is uitgegeven).
- Ingebedde SCT’s: vermeldt de Signed Certificate Timestamps (SCT’s).
Probleemcertificaten
Als u een website bezoekt waarvan het adres start met https en er een probleem met het TLS-certificaat is, wordt een foutpagina getoond. Het artikel Wat betekenen de codes voor beveiligingswaarschuwingen? beschrijft veel voorkomende certificaatfouten.
Volg deze stappen om het probleemcertificaat te bekijken:
- Klik op
- klik op Certificaat bekijken.
Het slechte certificaat wordt nu getoond.