Wat Is Public Key Infrastructure (PKI) en hoe werkt het?

Learn how Adaptive Multi-Factor Authentication combats data breaches, weak passwords, and phishing attacks.

PKI, of Public Key Infrastructure, omvat alles dat wordt gebruikt om versleuteling met openbare sleutels tot stand te brengen en te beheren. Denk hierbij aan de software, hardware, regels en procedures die worden gebruikt om digitale certificaten te creëren, verspreiden, beheren, op te slaan en in te trekken. 

Een digitaal certificaat koppelt een openbare sleutel cryptografisch aan het device of de eigenaar van dat device. Zo kunnen gebruikers en devices worden geauthenticeerd en kan digitale communicatie worden beveiligd. 

PKI is een van de meest gangbare vormen van internetversleuteling. Het wordt gebruikt om verkeer tussen webbrowsers en webservers te beveiligen en authenticeren. Het kan binnen organisaties ook worden gebruikt voor beveiligde toegang tot gekoppelde devices en interne communicatie. 

Public Key Infrastructure wordt al decennialang gebruikt voor het beveiligen en authenticeren van digitale communicatie, en wel voor twee belangrijke doeleinden: de privacy van verzonden berichten waarborgen en verifiëren dat de identiteit van een afzender klopt.

Wat is Public Key Infrastructure (PKI)?

Public Key Infrastructure is een belangrijk aspect van internetsecurity. De term heeft betrekking op de reeks technologieën en processen die samen een versleutelings-framework vormen om digitale communicatie te beschermen en te authenticeren. 

PKI maakt gebruik van cryptografische openbare sleutels die zijn gekoppeld aan een digitaal certificaat. Dat certificaat dient om het device of de gebruiker die het digitale bericht verstuurt te authenticeren. Digitale certificaten worden afgegeven door een vertrouwde certificeringsautoriteit (CA). Ze fungeren als een soort digitaal paspoort dat de identiteit van de afzender bevestigt.

Public Key Infrastructure beschermt en authenticeert berichten tussen servers en gebruikers, bijvoorbeeld tussen uw website (gehost op uw server) en uw klanten (de gebruikers die er verbinding mee proberen te maken via hun browser). Het kan ook worden gebruikt om communicatie binnen een organisatie te beveiligen en ervoor te zorgen dat berichten alleen zichtbaar zijn voor de afzender en de ontvanger en onderweg niet zijn gemanipuleerd. 

De belangrijkste componenten van Public Key Infrastructure zijn:

  • Certificeringsautoriteit (CA): de CA is de vertrouwde entiteit die het digitale certificaat afgeeft, opslaat en ondertekent. De CA ondertekent het digitale certificaat met een eigen privésleutel en publiceert vervolgens de openbare sleutel, die kan worden opgevraagd.
  • Registratie-autoriteit (RA): de RA verifieert de identiteit van de gebruiker of het device dat het digitale certificaat aanvraagt. De RA kan een derde partij zijn, maar de CA kan ook als RA optreden. 
  • Certificaatdatabase: in deze database worden het digitale certificaat en de bijbehorende metadata, waaronder informatie over de geldigheid, opgeslagen.
  • Centraal register: dit is de veilige locatie waar de cryptografische sleutels worden geïndexeerd en opgeslagen. 
  • Certificaatbeheersysteem: dit is het beheersysteem voor de levering van en de toegang tot certificaten. 
  • Certificaatbeleid: in dit beleid worden de procedures van de PKI uiteengezet. Het kan door buitenstaanders worden gebruikt om de betrouwbaarheid van de PKI te bepalen.

Begrijpen hoe PKI werkt

Public Key Infrastructure maakt gebruik van asymmetrische versleutelingsmethoden om ervoor te zorgen dat berichten privé blijven en om het device of de gebruiker die het bericht verstuurt te authenticeren. 

Bij asymmetrische versleuteling worden een openbare en een privésleutel gebruikt. Een cryptografische sleutel is een lange reeks bits waarmee data worden versleuteld. 

De openbare sleutel kan door iedereen worden opgevraagd en wordt afgegeven door een vertrouwde certificeringsautoriteit. De openbare sleutel verifieert en authenticeert de afzender van het versleutelde bericht.

De tweede component van een cryptografisch sleutelpaar dat wordt gebruikt in Public Key Infrastructure, is de privé- of geheime sleutel. Deze sleutel deelt de ontvanger van het versleutelde bericht met niemand en wordt gebruikt om het bericht te decoderen. 

Er worden complexe algoritmes gebruikt om combinaties van openbare en een privésleutels te ver- en ontsleutelen. De openbare sleutel authenticeert de afzender van het digitale bericht en de privésleutel zorgt ervoor dat alleen de beoogde ontvanger het bericht kan lezen.

PKI-certificaten

Vertrouwen speelt een cruciale rol in Public Key Infrastructure. Het is belangrijk dat de ontvangende entiteit er blind op kan vertrouwen dat de identiteit van de afzender van het digitale certificaat klopt. 

Vertrouwde, externe CA's kunnen voor de afzender instaan en hun identiteit aantonen. Digitale certificaten worden gebruikt om digitale identities te verifiëren. 

Ze worden ook wel PKI-certificaten of X.509-certificaten genoemd. Een PKI-certificaat verschaft een entiteit die zo'n certificaat aanvraagt een door een derde partij geverifieerd bewijs van identiteit, dat net zo werkt als een digitaal paspoort of rijbewijs. 

Het PKI-certificaat bevat de volgende informatie:

  • distinguished name (DN) van de eigenaar
  • openbare sleutel van de eigenaar
  • datum van afgifte
  • vervaldatum
  • DN van de CA van afgifte
  • digitale handtekening van de CA van afgifte

Waarvoor wordt PKI gebruikt?

Een van de meest gangbare toepassingen van PKI is het TLS/SSL (Transport Layer Security/Secure Socket Layer)-protocol, dat wordt gebruikt om versleutelde HTTP (Hypertext Transfer Protocol)-communicatie te beveiligen. 

Website-eigenaren vragen een digitaal certificaat aan bij een vertrouwde CA. Om een CA te kunnen krijgen, moet de eigenaar het eigendom van de website aantonen. Nadat dit geverifieerd is, kan de website-eigenaar een SSL-certificaat kopen dat op de webserver geïnstalleerd kan worden. Browsers weten dan dat dit de authentieke website is. 

Het TLS/SSL-protocol is gebaseerd op een keten van vertrouwen, waarin de gebruiker de autoriteit die het rootcertificaat afgeeft moet vertrouwen. Een alternatief schema is een "web van vertrouwen", dat zelfondertekende certificaten afgeeft die door een derde partij worden gevalideerd. "Webs van vertrouwen" worden veel gebruikt in kleinere gebruikers-communities, bijvoorbeeld in onafhankelijke netwerken binnen organisaties.

Nog enkele toepassingen van PKI:

  • versleuteling van e-mails en authenticatie van de afzender
  • ondertekening van documenten en software
  • gebruik van databaseservers om interne communicatie te beveiligen
  • beveiliging van webcommunicatie, bijvoorbeeld in e-commerce
  • authenticatie en versleuteling van documenten
  • beveiliging van lokale netwerken en smartcard-authenticatie
  • versleuteling en ontsleuteling van bestanden
  • beperking van de toegang tot VPN’s en het intranet van organisaties
  • beveiliging van communicatie tussen devices die elkaar onderling vertrouwen, zoals IoT (Internet of Things)-devices

Soorten opensource PKI

Opensource Public Key Infrastructure is openbaar toegankelijk. Dit zijn een paar voorbeelden van opensource PKI:

  • EJBCA Enterprise: dit is ontwikkeld in Java als enterprise-grade CA-implementatie met volledige functionaliteit en kan een CA configureren als service voor intern gebruik.
  • OpenSSL: een commerciële, integrale toolkit die wordt opgenomen in alle grote Linux-distributies en is ontwikkeld in C. Het kan applicaties PKI-compatibel maken en worden gebruikt om een eenvoudige CA te bouwen.
  • CFSSL: dit is de PKI/SSL-toolkit van Cloudflare voor het ondertekenen, verifiëren en bundelen van TLS-certificaten en het ontwikkelen van TLS PKI-tools op maat.
  • XiPKI: een hoogwaardige, zeer schaalbare CA en OCSP-responder, geïmplementeerd in Java met SHA-3-ondersteuning.
  • Dogtag Certificate System: dit is een enterprise-class, volledig uitgeruste CA die alle aspecten van het lifecycle management van certificaten ondersteunt.

Aanvullende resources

Belangrijke browsers en besturingssystemen zoals Apple en Microsoft publiceren Trust Stores die een lijst met vertrouwde rootcertificaten verschaffen. Een vertrouwd rootcertificaat is een absolute voorwaarde voor vertrouwen in het digitale certificaat en de bijbehorende CA. De vertrouwde CA vormt een cruciaal onderdeel van Public Key Infrastructure.

PKI maakt gebruik van asymmetrische cryptografie om digitale berichten te versleutelen en ontsleutelen. Als u vragen hebt over asymmetrische versleuteling en het gebruik van cryptografische openbare en privésleutels, kan Okta die beantwoorden. Neem vandaag nog contact met ons op.

Referenties

Why Public Key Infrastructure Is a Good Idea. (Maart 2001). Computer Weekly.

EJBCA Enterprise. (2022). PrimeKey AB.

OpenSSL. (2021). The OpenSSL Project Authors.

Cloudflare/CFSSL. (2022). GitHub, Inc.

Xipki/xipki. (2022). GitHub, Inc.

PKI Main Page. Dogtag PKI.

Available Trusted Root Certificates for Apple Operating Systems. (2022). Apple, Inc.

Lijst van deelnemers aan het Microsoft Trusted Root Program. (December 2021). Microsoft Build.

Asymmetric Encryption: Definition, Architecture, Usage. (2022). Okta.

Public vs. Private: Unlocking the Full Potential of Public Key Infrastructure. (December 2021). Forbes.