KeyUsage Værdier og Anvendelse i X.509 Certifikater: En Guide

Hvad betyder keyUsage værdierne, og hvilke skal bruges i følgende situationer? 1. Selvsigneret root CA 2. Intermediate CA (der kan signere andre CAs) 3. Intermediate CA (der ikke kan signere andre CAs) 4. Ikke-CA certifikater Skal andre udvidelser som nsCertType også specificeres med bestemte værdier?

KeyUsage værdier i X.509 certifikater definerer, hvad certifikatet kan bruges til, såsom signering af certifikater og CRL'er for CA'er og forskellige kryptografiske operationer for ikke-CA certifikater.

KeyUsage Værdier og Anvendelse

KeyUsage er en vigtig udvidelse i X.509 certifikater, der definerer, hvad certifikatet kan bruges til. Her er en oversigt over, hvilke KeyUsage værdier der skal bruges i forskellige situationer:

1. Selvsigneret Root CA

  • keyCertSign
  • cRLSign

En selvsigneret root CA skal kunne signere andre certifikater og tilbagekaldelseslister (CRL).

2. Intermediate CA (der kan signere andre CAs)

  • keyCertSign
  • cRLSign

En intermediate CA, der kan signere andre CAs, har samme krav som en root CA, da den også skal kunne signere certifikater og CRL'er.

3. Intermediate CA (der ikke kan signere andre CAs)

  • keyCertSign
  • cRLSign

Selvom denne intermediate CA ikke kan signere andre CAs, skal den stadig kunne signere certifikater og CRL'er.

4. Ikke-CA Certifikater

  • digitalSignature
  • keyEncipherment
  • dataEncipherment
  • keyAgreement
  • nonRepudiation

Ikke-CA certifikater bruges typisk til slutbrugere og skal kunne udføre forskellige kryptografiske operationer som digital signatur, nøglekryptering og data kryptering.

Andre Udvidelser

Ud over KeyUsage kan andre udvidelser som nsCertType også specificeres med bestemte værdier afhængigt af anvendelsen:

  • nsCertType: Bruges til at specificere certifikatets type, såsom "sslClient", "sslServer", "email", "objectSigning", "sslCA", "emailCA", "objectSigningCA".
  • basicConstraints: For CA-certifikater skal "CA:TRUE" være sat, og for ikke-CA certifikater skal "CA:FALSE" være sat.
  • extendedKeyUsage: Kan bruges til at specificere yderligere anvendelser som "serverAuth", "clientAuth", "codeSigning", "emailProtection".