PKI - Public Key Infrastructure
Ausgangsdokument: Moodle PKI und Vertrauensmodelle
Digitale Signaturen
Ziel: Authentizität und Integrität sicherstellen
Digitale Signaturen dienen nicht der Geheimhaltung
Funktionsweise

Digitale Signaturen verwenden asymmetrische Kryptographie:
- Der Absender erstellt eine Nachricht (z.B. ein Dokument)
- Der Absender erzeugt einen Hash-Wert der Nachricht (z.B. mit SHA-256)
- Der Absender verschlüsselt den Hash-Wert mit seinem privaten Schlüssel (Signieren)
- Der Absender sendet die Nachricht und die digitale Signatur an den Empfänger
- Der Empfänger erhält die Nachricht und die digitale Signatur
- Der Empfänger erzeugt einen Hash-Wert der empfangenen Nachricht
- Der Empfänger entschlüsselt die digitale Signatur mit dem öffentlichen Schlüssel des Absenders (Verifizieren)
- Der Empfänger vergleicht den entschlüsselten Hash-Wert mit dem selbst erzeugten Hash-Wert
- Wenn die Hash-Werte übereinstimmen, ist die Nachricht authentisch und unverändert
Zertifikate
Problemstellung: Woher weiß der Empfänger, dass der öffentliche Schlüssel wirklich zum Absender gehört?
-> Lösung: Zertifikate von vertrauenswürdigen Dritten (Certificate Authorities, CAs)
CA's können z.B. sein:
- Let's Encrypt
- a-trust (Österreichische CA, staatsnahe)
X.509 Standard für digitale Zertifikate
Ein X.509-Zertifikat enthält:
- den Namen des Eigentümers des Zertifikats
- den öffentlichen Schlüssel des Eigentümers (public Key)
- den Namen der CA
- Eine digitale Signatur der CA (diese Signatur muss am Gerät/im Browser vorinstalliert sein)
- Gültigkeitszeitraum
- Verwendungszweck
PKI - Public Key Infrastructure

Bestandteile einer PKI
- Zertifizierungsstelle (CA): stellt digitale Zertifikate aus und verwaltet diese
- Registrierungsstelle (RA): überprüft die Identität von Antragstellern, bevor Zertifikate ausgestellt werden
- Zertifikatsperrliste (CRL): Liste von Zertifikaten, die vor Ablaufdatum widerrufen wurden. Alternativ könnte auch eine White-List verwendet werden.
- Verzeichnisdienste: ein durchsuchbares Verzeichnis, in dem Zertifikate und CRLs zu den Usern/Maschinen gespeichert werden (z.B. LDAP)
- Dokumentation: Richtlinien und Verfahren zur Verwaltung der PKI
- Certificate Policies (CP): das Anforderungsprofil für Zertifikate, wichtig für die Vertrauenskette
- Certification Practice Statement (CPS): beschreibt die Konkrete Umsetzung der CP
Zertifizierungspfad/Validierungspfad
Ein Zertifizierungspfad ist eine Kette von Zertifikaten, die von einer vertrauenswürdigen Root-CA bis zum Endbenutzerzertifikat reicht.
Beispiel hierarchisch:
- Root-CA (z.B. Let's Encrypt)
- Intermediate-CA (z.B. Let's Encrypt Intermediate CA), signiert von der Root-CA
- Endbenutzerzertifikat (z.B. www.example.com), signiert von der Intermediate-CA
Wichtig ist, dass dem Root-CA-Zertifikat vertraut wird (z.B. durch vorinstallierte Zertifikate im Browser oder Betriebssystem).
Vertrauensmodelle
- Hierarchisches Modell: eine Root-CA, die Intermediate-CAs signiert, die wiederum Endbenutzerzertifikate signieren
- Cross-Zertifizierung: mehrere CAs vertrauen einander und signieren gegenseitig ihre Zertifikate. Anwendungsfall war die CA "Let's Encrypt" vor der weiten Verbreitung, damit Browser und Betriebssysteme dem Zertifikat vertrauen.
- Web of Trust: dezentralisiertes Modell, bei dem Benutzer gegenseitig ihre Schlüssel signieren (z.B. PGP)

Implementierungen
- Microsoft: Windows Server (Zertifikatsdienst) enthalten eine CA-Lösung
- Linux: OpenSSL, EJBCA, Dogtag
- Dogtag Certificate System: Open-Source-PKI-Lösung, die von Red Hat entwickelt wurde. Bietet eine umfassende Suite von PKI-Diensten, einschließlich CA, RA, OCSP und mehr.