Certificaat (PKI)
Een certificaat is een computerbestand dat fungeert als een digitaal paspoort voor de eigenaar van dat bestand en wordt gebruikt binnen de Public key infrastructure. Een digitaal certificaat is een combinatie van identiteit en openbare sleutel die gewaarmerkt is door de uitgever c.q. certificaatautoriteit (CA).
Inhoud
[bewerken | brontekst bewerken]Een certificaat bevat:
- geregistreerde naam van de eigenaar c.q. certificaathouder;
- publieke sleutel c.q. openbare sleutel van de eigenaar c.q. certificaathouder;
- geldigheidsperiode van het certificaat;
- identiteit van de uitgever c.q. certificaatautoriteit van het certificaat;
- locatie van de 'Certificate Revocation List' (bij de uitgever van het certificaat);
- samenvatting van bovenstaande gegevens, aangemaakt door een hashfunctie, en vervolgens vercijferd met de geheime sleutel van de uitgever c.q. certificaatautoriteit. Dit wordt een waarmerk of digitale handtekening genoemd en dient om de geldigheid c.q. authenticiteit van bovenstaande gegevens te waarborgen.
Waarborgen authenticiteit c.q. geldigheid van een certificaat:
- ontvanger van het certificaat berekent zelf de samenvatting van bovenstaande gegevens met behulp van de gebruikte hashfunctie;
- ontvanger vraagt de openbare sleutel van de uitgever op (de meeste webbrowsers bevatten openbare sleutels van een groot aantal uitgevers);
- ontvanger ontcijfert de ontvangen samenvatting in het certificaat met behulp van de openbare sleutel van de uitgever;
- ontvanger vergelijkt of beide samenvattingen overeenstemmen (bij verschil is het ontvangen certificaat na uitgifte aangepast en niet meer authentiek en geldig).
Toepassing
[bewerken | brontekst bewerken]Soort aangifte | Certificaat (PKI) |
---|---|
Aangifte inkomstenbelasting (IB) | verplicht |
Aangifte vennootschapsbelasting (VPB) | verplicht |
Aanvraag uitstelregeling | verplicht |
Aangifte omzetbelasting (OB) | verplicht |
Opgaaf intracommunautaire presentaties (ICP) | verplicht |
Verzoek om (een wijziging van) een voorlopige aanslag | verplicht |
Aanvragen en ontvangen van Service Berichten Aanslag | verplicht |
Aangifte loonheffingen | verplicht |
Digitale handtekening
[bewerken | brontekst bewerken]Het certificaat kan door de eigenaar worden gebruikt om een digitale handtekening te plaatsen onder een e-mailbericht of een bestand, waardoor het niet meer ongemerkt te muteren is (integriteit van het bericht) en vaststaat wie het verzonden heeft (authenticiteit van de bron).
Waarborgen integriteit en authenticiteit van een bericht
[bewerken | brontekst bewerken]Indien het certificaat ongewijzigd is, kan de ontvanger vertrouwen op de openbare sleutel van de verzender. Ieder bericht aan ontvanger wordt door verzender digitaal ondertekend met een samenvatting en vervolgens vercijferd met zijn geheime sleutel. De ontvanger ontcijfert de samenvatting met de openbare sleutel van verzender. Stemmen beide samenvattingen overeen, dan weet de ontvanger over het ontvangen bericht dat:
- bericht tussen verzender en ontvanger ongewijzigd is (berichtintegriteit), omdat de samenvatting overeenstemmen (wordt onderweg het bericht gewijzigd, dan klopt een samenvatting niet meer);
- bericht van verzender afkomstig is (bronauthenticiteit), omdat niemand anders de geheime sleutel van verzender heeft.
Omdat alleen de samenvatting vercijferd is en niet het bericht, kan iedereen tijdens de verzending de inhoud van het bericht lezen. Van vertrouwelijkheid is geen sprake.
Waarborgen vertrouwelijkheid van een bericht
[bewerken | brontekst bewerken]Indien naast integriteit en authenticiteit ook vertrouwelijkheid gewenst is, kan de openbare sleutel in het certificaat van de ontvanger gebruikt worden om een document of een bericht te vercijferen of versleutelen. Dat levert twee (te combineren) toepassingen op:
- vercijferen met de openbare sleutel van de ontvanger: alleen de ontvanger kan het bericht met zijn eigen geheime sleutel ontcijferen. Vertrouwelijkheid is daarmee gewaarborgd
- versleutelen met de geheime sleutel van de afzender. Het bericht is alleen te ontcijferen met de openbare sleutel van de afzender, waardoor de authenticiteit van de afzender vast staat.
Om vertrouwelijkheid, integriteit en authenticiteit te waarborgen, dient dus tweemaal achtereenvolgens vercijferd te worden:
- verzender controleert geldigheid van het certificaat met de openbare sleutel van de ontvanger aan de hand van de samenvatting en de openbare sleutel van de uitgever;
- verzender vercijfert bericht met de openbare sleutel van de ontvanger;
- verzender ondertekent het bericht met een samenvatting en vercijfert deze samenvatting met zijn eigen geheime sleutel;
- verzender verstuurt het bericht naar ontvanger;
- ontvanger controleert geldigheid van het certificaat met de openbare sleutel van de verzender aan de hand van de samenvatting en de openbare sleutel van de uitgever;
- ontvanger controleert geldigheid van de samenvatting met de openbare sleutel van verzender;
- ontvanger ontcijfert het bericht met zijn/haar geheime sleutel.
Een certificaat wordt gegenereerd met behulp van asymmetrische cryptografie.
Server authenticiteit
[bewerken | brontekst bewerken]Een certificaat kan ook op een server worden geïnstalleerd. Dat certificaat verzorgt dan de authentificatie van de server. Een dergelijk certificaat wordt toegepast bij gebruik van Secure Sockets Layer (SSL) of Transport Layer Security (TLS). Een bekend voorbeeld van de toepassing van dergelijke certificaten is PKIoverheid bij de implementatie van Digikoppeling.
Met Wildcard certificaten of door het gebruik van Subject Alternative Name (SAN) velden in het certificaat kunnen meerdere servers worden bediend met één certificaat.
CA-functie
[bewerken | brontekst bewerken]De certificaatautoriteit houdt vervallen en ongeldige certificaten bij in de Certificate revocation list. Browsers, e-mailpakketten en andere programma's kunnen de geldigheid op de achtergrond controleren en geven de status van een certificaat weer.
Standaard
[bewerken | brontekst bewerken]Voor certificaten is een officiële standaard ontwikkeld, X509.3, een specificatie van de X.500-directorystandaard.
Protocol
[bewerken | brontekst bewerken]Communicatie over de status van een certificaat kan o.a. plaatsvinden met LDAP.