0Pricing
Cloud & IT Cert Prep · Lektion

PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung

Wenden Sie PKI-Konzepte auf reale Szenarien an: Webverkehr absichern, E-Mails mit S/MIME verschlüsseln und die Softwareintegrität mit Codesignierungszertifikaten überprüfen.

PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung ist eine kostenlose Cloud & IT Cert Prep-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cloud & IT Cert Prep-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.

PKI in realen Anwendungen

Public Key Infrastructure (PKI) ist das unsichtbare Rückgrat sicherer digitaler Kommunikation. Die Zertifikate und CAs, mit denen Sie sich beschäftigt haben, werden täglich in Dutzenden realer Szenarien eingesetzt. Die Security+-Prüfung testet Ihre Fähigkeit, PKI-Anwendungsfälle zu erkennen, den passenden Zertifikatstyp für den jeweiligen Fall zu verstehen und den Schutz zu bestimmen, den PKI in diesem Kontext bietet. Die drei wichtigsten Anwendungsfälle in der Prüfung sind HTTPS/TLS (Websicherheit), S/MIME (E-Mail-Sicherheit) und Code Signing (Softwareintegrität).

HTTPS: PKI für Websicherheit

HTTPS (HTTP über TLS) ist der sichtbarste PKI-Anwendungsfall. Wenn Sie eine Verbindung zu https://bank.com herstellen, führt Ihr Browser folgende Schritte aus: (1) Er empfängt das TLS-Zertifikat des Servers, (2) überprüft, dass die Zertifikatskette zu einer vertrauenswürdigen Root-CA führt, (3) vergleicht den Hostnamen mit den SAN-Feldern, (4) prüft, dass das Zertifikat nicht widerrufen wurde, und (5) verwendet den öffentlichen Schlüssel für einen Diffie-Hellman-Schlüsselaustausch, um eine verschlüsselte Sitzung einzurichten. Das Vorhängeschloss-Symbol im Browser zeigt an, dass alle diese Prüfungen erfolgreich waren. Ein fehlendes oder ungültiges Zertifikat führt zu einer Browserwarnung, die die meisten Benutzer davon abhält, fortzufahren.

# Check HTTPS certificate details
curl -v https://example.com 2>&1 | grep -A 10 'SSL certificate'

# Test TLS configuration quality
openssl s_client -connect example.com:443 -tls1_3 2>/dev/null | \
  grep -E 'Protocol|Cipher|Verify'
# Protocol: TLSv1.3
# Cipher: TLS_AES_256_GCM_SHA384
# Verify return code: 0 (ok)

S/MIME: PKI für E-Mail-Sicherheit

S/MIME (Secure/Multipurpose Internet Mail Extensions) verwendet PKI-Zertifikate, um zwei Sicherheitsdienste für E-Mails bereitzustellen. Verschlüsselung: Der Absender verschlüsselt den E-Mail-Inhalt mit dem öffentlichen Schlüssel des Empfängers, sodass nur der Empfänger ihn entschlüsseln kann. Dadurch bleibt die Vertraulichkeit auch dann geschützt, wenn die E-Mail während der Übertragung abgefangen oder auf einem kompromittierten Server gespeichert wird. Digitale Signaturen: Der Absender signiert mit seinem privaten Schlüssel. Dadurch kann der Empfänger überprüfen, dass die E-Mail tatsächlich vom Absender stammt und nicht verändert wurde – dies schützt die Integrität und gewährleistet die Nichtabstreitbarkeit. Für S/MIME benötigt jeder Benutzer ein eigenes, von einer CA ausgestelltes Zertifikat.

# S/MIME email signing and encryption with OpenSSL
# Sign an email
openssl smime -sign -in email_body.txt -signer alice_cert.pem \
  -inkey alice_private.key -out signed_email.eml -outform PEM

# Encrypt an email (using Bob's public key/certificate)
openssl smime -encrypt -aes256 -in email_body.txt \
  -out encrypted_email.eml bob_cert.pem

# Bob decrypts with his private key
openssl smime -decrypt -in encrypted_email.eml \
  -recip bob_cert.pem -inkey bob_private.key

Code Signing: PKI für Softwareintegrität

Code Signing verwendet PKI, um Software – ausführbare Dateien, Skripte, Treiber und Installationsprogramme – digital zu signieren. So können Benutzer überprüfen, dass die Software von einem vertrauenswürdigen Herausgeber stammt und nicht manipuliert wurde. Der Softwareanbieter signiert seinen Code mit einem privaten Schlüssel aus einem von einer vertrauenswürdigen CA ausgestellten Code-Signing-Zertifikat. Wenn ein Benutzer die Software ausführt, überprüft das Betriebssystem die Signatur mithilfe des öffentlichen Schlüssels des Anbieters aus der Zertifikatskette. Windows SmartScreen, macOS Gatekeeper sowie die App-Stores von iOS und Android stützen sich auf Code Signing, um die Herkunft von Software festzustellen. Nicht signierte Software wird möglicherweise blockiert oder löst Sicherheitswarnungen aus.

# Verify code signing on Windows (PowerShell)
Get-AuthenticodeSignature -FilePath 'C:\Software\installer.exe' | Format-List
# Status: Valid
# SignerCertificate: [certificate details]
# TimeStamperCertificate: [timestamp CA details]

# On Linux/macOS, verify GPG signature of downloaded software
gpg --verify hashicorp_public.gpg terraform.zip.sig terraform.zip
# Good signature from 'HashiCorp Security (hashicorp.com/security)'

Authentifizierung mit Clientzertifikaten

Die Authentifizierung mit Clientzertifikaten, auch als Mutual TLS oder mTLS bezeichnet, erweitert das standardmäßige TLS-Modell, indem auch der Client ein Zertifikat vorlegen muss. Bei standardmäßigem TLS wird nur der Server per Zertifikat authentifiziert; bei mTLS authentifizieren sich beide Parteien gegenseitig. Dieses Verfahren wird eingesetzt für: VPN-Authentifizierung (Smartcards oder Clientzertifikate anstelle von Passwörtern), API-Authentifizierung (Authentifizierung zwischen Maschinen, bei der der Client ein Dienst und kein Mensch ist) und privilegierten Administratorzugriff (Administratoren müssen Hardware-Token mit eingebetteten Zertifikaten verwenden).

# nginx configuration for mutual TLS (client certificate required)
# server {
#   listen 443 ssl;
#   ssl_certificate /path/to/server_cert.pem;
#   ssl_certificate_key /path/to/server_key.pem;
#   ssl_client_certificate /path/to/ca_cert.pem;
#   ssl_verify_client on;
#   ssl_verify_depth 2;
# }

# Test with a client certificate
curl --cert client_cert.pem --key client_key.pem https://api.example.com/

Überprüfung von SSH-Hostschlüsseln

SSH verwendet Public-Key-Kryptografie für zwei Zwecke: Serverauthentifizierung und Clientauthentifizierung. Serverauthentifizierung: Wenn Sie erstmals eine Verbindung zu einem SSH-Server herstellen, präsentiert dieser seinen Hostschlüssel (öffentlichen Schlüssel). Ihr SSH-Client speichert ihn in ~/.ssh/known_hosts. Bei späteren Verbindungen warnt SSH Sie, wenn sich der Hostschlüssel geändert hat, da dies auf einen MITM-Angriff oder eine erneute Einrichtung des Servers hindeuten kann. Clientauthentifizierung: Anstelle von Passwörtern verwenden Administratoren Schlüsselpaare – der öffentliche Schlüssel wird in authorized_keys auf dem Server hinterlegt, und der private Schlüssel, der niemals übertragen wird, weist die Identität nach. SSH-Hostschlüssel unterscheiden sich von PKI-Zertifikaten, erfüllen jedoch dieselbe Vertrauensfunktion.

# First-time SSH connection stores server host key
ssh user@server.example.com
# The authenticity of host 'server.example.com' can't be established.
# ED25519 key fingerprint is SHA256:abc123...
# Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

# Host key stored in: ~/.ssh/known_hosts
cat ~/.ssh/known_hosts | grep server.example.com

# If host key changes: 
# WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

Dokumentensignatur und Zeitstempel

PKI ermöglicht in vielen Rechtsordnungen rechtsverbindliche digitale Dokumentensignaturen. Signaturen für Adobe-PDFs, DocuSign und staatliche Systeme für elektronische Signaturen verwenden sämtlich PKI-Zertifikate zum Signieren von Dokumenten. Eine wichtige Ergänzung zur Dokumentensignatur ist das Setzen von Zeitstempeln: Eine Trusted Timestamp Authority (TSA) signiert den Hash des Dokuments mit einem vertrauenswürdigen Zeitstempel und weist damit nach, dass das Dokument zu einem bestimmten Zeitpunkt existiert hat. Zeitstempel sind auch für Code Signing unverzichtbar: Ohne Zeitstempel werden Codesignaturen ungültig, sobald das Signaturzertifikat abläuft – selbst bei Software, die bereits vor dem Ablaufdatum verteilt wurde.

IoT-Gerätezertifikate

Mit der zunehmenden Verbreitung von IoT-Geräten bietet PKI eine Möglichkeit, Geräte in großem Maßstab zu authentifizieren. Jedes Gerät wird während der Herstellung mit einem eindeutigen Zertifikat ausgestattet (ein Prozess, der als Bereitstellung der Geräteidentität bezeichnet wird). Dadurch können Server einzelne Geräte anhand ihrer Zertifikate authentifizieren. Dies ermöglicht beispielsweise, dass ein intelligenter Zähler seine Identität gegenüber dem Server des Versorgungsunternehmens nachweist, ein medizinisches Gerät sich gegenüber einem Krankenhausnetzwerk authentifiziert oder eine Fahrzeugflotte sich gegenüber dem Backend des Herstellers authentifiziert. IoT-PKI muss Millionen von Geräten mit begrenzten Ressourcen verwalten. Dies fördert den Einsatz von ECC-Zertifikaten, da diese klein sind und schnell verifiziert werden können.

VPN-Authentifizierung mit Zertifikaten

Zertifikatbasierte VPN-Authentifizierung ist deutlich sicherer als eine passwortbasierte VPN-Authentifizierung. Jeder VPN-Benutzer bzw. jedes VPN-Gerät erhält ein Clientzertifikat von der internen CA der Organisation. Beim Verbindungsaufbau überprüft das VPN-Gateway das Clientzertifikat und stellt dabei sicher, dass es von der vertrauenswürdigen internen CA ausgestellt wurde, noch gültig ist und nicht über CRL/OCSP widerrufen wurde. Wenn ein Mitarbeiter das Unternehmen verlässt, verhindert der Widerruf seines Zertifikats sofort den VPN-Zugriff – zuverlässiger, als darauf zu hoffen, dass er sein Passwort nicht an andere weitergegeben hat.

# OpenVPN client certificate configuration
# client
# remote vpn.example.com 1194
# proto udp
# ca ca.crt        <- CA certificate (trust anchor)
# cert client.crt  <- Client's certificate
# key client.key   <- Client's private key
# tls-auth ta.key 1
# cipher AES-256-GCM

# The VPN server verifies the client cert chain against ca.crt
# Revoked certs listed in CRL won't be accepted

Häufige zertifikatsbezogene Fehler

Sicherheitsexperten müssen häufige Zertifikatsfehler diagnostizieren können. Zertifikat abgelaufen: Das notAfter-Datum ist überschritten – erneuern Sie das Zertifikat. Hostname stimmt nicht überein: Der SAN des Zertifikats stimmt nicht mit dem angeforderten Hostnamen überein – überprüfen Sie CNs und SANs; möglicherweise benötigen Sie ein Wildcard- oder Multi-SAN-Zertifikat. Selbstsigniertes Zertifikat: Keine CA bürgt für dieses Zertifikat – fügen Sie es dem lokalen Truststore hinzu oder ersetzen Sie es durch ein von einer CA signiertes Zertifikat. Unvollständige Zertifikatskette: Das Zwischenzertifikat der CA wird vom Server nicht bereitgestellt – konfigurieren Sie den Server so, dass er die vollständige Kette sendet. Zertifikat widerrufen: CRL oder OCSP weist den Widerruf aus – eine sofortige Reaktion auf eine Schlüsselkompromittierung ist erforderlich.

# Diagnose certificate errors with openssl
openssl s_client -connect server.example.com:443 2>&1
# Common error messages:
# depth=0 ... error 10 at 0 depth lookup: certificate has expired
# depth=0 ... error 18: self-signed certificate
# depth=0 ... error 20: unable to get local issuer certificate (broken chain)
# depth=0 ... error 23: certificate revoked
# Verify return code: 0 (ok) = success

Wildcard- vs. SAN-Zertifikate

Zwei Zertifikatstypen können mehrere Hostnamen abdecken. Ein Wildcard-Zertifikat gilt für alle Subdomains der ersten Ebene einer Domain: *.example.com deckt www.example.com, mail.example.com und api.example.com ab, jedoch NICHT sub.api.example.com (zwei Ebenen). Ein Zertifikat und ein privater Schlüssel für alle Dienste sind praktisch, aber riskant, wenn der Schlüssel kompromittiert wird, da dann alle Dienste betroffen sind. Ein Multi-SAN-Zertifikat führt mehrere konkrete Domains ausdrücklich in der SAN-Erweiterung auf, beispielsweise example.com, www.example.com und api.example.com. Diese Lösung ist granularer, erfordert aber eine Aktualisierung des Zertifikats, wenn neue Domains hinzukommen.

Kurztest

Testen Sie Ihr Verständnis der Konzepte aus CompTIA Security+ (SY0-701) in dieser Lektion.

Zusammenfassung der Lektion

In dieser Lektion haben Sie gelernt: HTTPS/TLS verwendet Serverzertifikate, um Webdatenverkehr zu verschlüsseln und Server zu authentifizieren; S/MIME-Zertifikate ermöglichen das Signieren und Verschlüsseln von E-Mails; Code-Signing-Zertifikate weisen die Integrität der Software und die Identität des Herausgebers nach; und Clientzertifikate ermöglichen die gegenseitige Authentifizierung für VPNs und APIs. Als Nächstes sehen wir uns Passwortrichtlinien und Multi-Faktor-Authentifizierung an.

Häufig gestellte Fragen

Ist die Lektion „PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung“ kostenlos?

Ja — der vollständige Text von „PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cloud & IT Cert Prep-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung“?

Wenden Sie PKI-Konzepte auf reale Szenarien an: Webverkehr absichern, E-Mails mit S/MIME verschlüsseln und die Softwareintegrität mit Codesignierungszertifikaten überprüfen. Du übst Cloud & IT Cert Prep mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Cloud & IT Cert Prep zu starten?

Keine Vorkenntnisse erforderlich. Cloud & IT Cert Prep auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Cloud & IT Cert Prep-Lektion Code schreiben und ausführen?

Ja. Jede Cloud & IT Cert Prep-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Zertifizierungsstellen und Vertrauensketten
  2. Struktur von X.509-Zertifikaten
  3. Zertifikatslebenszyklus und -sperrung
  4. PKI-Anwendungsfälle: HTTPS, S/MIME und Codesignierung
← Zurück zu Cloud & IT Cert Prep