Public Key Infrastructure (PKI)

Een public key infrastructure (PKI) is een systeem waarmee uitgifte en beheer van digitale certificaten wordt gerealiseerd. PKI is de basis van de SSL/TLS technologie. PKI bestaat uit verschillende onderdelen, die door dezelfde of verschillende entiteiten verzorgd kunnen worden:

  • Een CA die de certificaten beheert.
  • Een RA die de controle voor uitgifte van certificaten uitvoert.
  • Publieke informatie over niet meer geldige certificaten via CRL of OCSP.
  • De voorwaarden van de PKI vastgelegd in een CPS (Certificate Practice Statement).

Cryptografie

Encryptie is het versleutelen van informatie met als doel deze onbruikbaar te maken zonder de sleutel waarmee de informatie gelezen kan worden. PKI is gebaseerd op asymmetrische cryptografie. Dit is een concept dat al sinds 1976 bestaat, toen twee cryptografen, Whitfeld Diffie en Martin Hellman, voorstelden om zogenaamde asymmetrische sleutels te gebruiken. Tot die tijd werden altijd symmetrische sleutels gebruikt, waarbij dezelfde sleutel wordt gebruikt voor het versleutelen en voor het ontsleutelen van informatie. Een heel simpel voorbeeld van een symmetrische versleuteling is een eenvoudig geheimschrift waarbij je met iemand afspreekt elk karakter in een tekst te vervangen voor een ander karakter volgens een bepaalde sleutel. De zender versleutelt de informatie volgens deze sleutel, en de ontvanger kan deze ontcijferen omdat hij de sleutel ook in zijn bezit heeft. Het grote probleem met deze vorm van encryptie is dat de sleutel op een bepaalde manier tussen de twee partijen uitgewisseld moet worden. Als daarbij de sleutel onderschept wordt, is de informatie niet meer veilig.

Asymmetrische sleutels zijn iets moeilijker te begrijpen dan symmetrische. Ten eerste worden er twee verschillende sleutels gebruikt: de zogenaamde public key en de private key. De verzender van de informatie haalt de public key op, en versleutelt hiermee informatie zodat het veilig verzonden kan worden. De ontvanger gebruikt vervolgens zijn private key om deze informatie te ontsleutelen. Omdat alleen de ontvanger deze private key in zijn bezit heeft kan alleen hij de informatie ontsleutelen. Daarnaast kan de ontvanger zorgen dat hij de key op een veilige plek opslaat, zodat deze nooit in handen van derden kan vallen, waarmee deze vorm van encryptie veiliger is dan degene die gebruik maakt van symmetrische sleutels. Het is niet mogelijk om door middel van de public key de informatie te ontsleutelen, dus als het onderschept zou worden blijft de informatie veilig. Alleen met de private key kan de informatie worden gelezen.

Een assymetrisch key pair bestaat dus altijd uit:

  • Private key: Alleen bekend bij de eigenaar van de sleutel. Met de private key worden versleutelde berichten gedecodeerd en worden berichten ondertekend.
  • Public key: Beschikbaar voor iedereen. Met de public key worden berichten bestemd voor de eigenaar van het key pair versleuteld en worden digitale handtekeningen gecontroleerd.

Sleutellengte

Een sleutel of key heeft een bepaalde lengte. Deze sleutellengte (ook wel bitlengte of key size genoemd) bepaalt hoe moeilijk het is om de sleutel te kraken. Tegenwoordig wordt een sleutel van 512 bit als te zwak beschouwd omdat deze binnen enkele maanden gekraakt kan worden, mits er voldoende rekenkracht beschikbaar is. De verwachting is dat een sleutel van 1024 bit binnen niet al te lange termijn te kraken is met veel rekenkracht. Zodra een sleutel gekraakt is, kan met de gekraakte sleutel verkeer afgeluisterd worden. Op dit moment worden sleutels van 2048 bit als veilig beschouwd en minimaal verplicht voor SSL certificaten. Certificaten met en langere sleutellengte aanvragen is ook mogelijk, al geeft een sleutellengte groter dan 4096 vaak problemen op bijvoorbeeld Apple devices.Praktische toepassingen

Door het gebruik van verschillende sleutels is asymmetrische cryptografie veiliger dan symmetrische cryptografie. Anderzijds is symmetrische cryptografie minder rekenintensief en daardoor sneller dan asymmetrische cryptografie, waardoor bij sommige toepassingen een combinatie van beide methoden wordt gebruikt.

SSL certificaten zijn de meest gebruikte vorm van PKI technologie en een van de belangrijkste vormen van serverbeveiliging. SSL/TLS maakt gebruik van asymmetrische cryptografie voor het vaststellen van elkaars identiteit, waarna voor de uitwisseling van informatie symmetrische versleuteling gebruikt wordt. PKI wordt ook gebruikt voor digitale ondertekening van bijvoorbeeld software of documenten.

 

 

point up