- OCSP
-
Das Online Certificate Status Protocol (OCSP) ist ein Internet-Protokoll, das es Clients ermöglicht, den Status von X.509-Zertifikaten bei einem Validierungsdienst abzufragen. Benötigt wird dies bei der Prüfung digitaler Signaturen, bei der Authentisierung in Kommunikationsprotokollen (z. B. bei SSL) oder für die Versendung verschlüsselter E-Mails, um zu überprüfen, ob die Zertifikate, die zur Prüfung der Signatur, zur Identifizierung der Kommunikationspartner oder zur Verschlüsselung verwendet werden, gesperrt und damit bereits vor Ende ihres regulären Gültigkeitszeitraums ungültig wurden.
Inhaltsverzeichnis
Funktionsweise
Mittels OCSP kann der Status eines Zertifikats durch Anfrage bei einem Server (ein so genannter OCSP-Responder) abgefragt werden. Dieser OCSP-Responder wird in der Regel vom Herausgeber des Zertifikats betrieben und liefert als Antwort „good“ (d. h. das Zertifikat nicht gesperrt), „revoked“ (d. h. Zertifikat ist gesperrt) oder „unknown“ (d. h. der Status konnte nicht ermittelt werden, z. B. weil der Herausgeber des Zertifikats dem Responder nicht bekannt ist). Des Weiteren besteht die Möglichkeit, dass der OCSP-Responder sogenannte Positiv-Auskünfte erteilt. Dabei wird der Antwort ein Hash-Wert des Zertifikats mitgegeben, wenn das Zertifikat tatsächlich existiert.
Die Antwort (OCSP Response) ist stets vom OCSP Responder digital signiert und kann somit vom Client auf ihre Echtheit und Unverfälschtheit geprüft werden. Die Anfrage (OCSP Request) kann signiert sein, muss es aber nicht sein; in der Praxis werden OCSP Requests selten signiert.
OCSP erlaubt es auch, in einer Anfrage die Gültigkeit mehrerer Zertifikate abzufragen; der Responder liefert dann in seiner Antwort eine Liste mit den jeweiligen Zertifikatsstatus.
Sofern ein OCSP-Responder auf einer aktuellen Datenbasis (z. B. einer Replikation der Datenbank der Zertifizierungsstelle) arbeitet, gibt er stets den gegenwärtigen Sperrstatus des Zertifikates an. Für die Gültigkeit einer elektronischen Signatur ist aber unter Umständen nicht der Status des Zertifikates zum Zeitpunkt der Prüfung (und der OCSP-Abfrage) relevant, sondern der Status zum (vergangenen) Zeitpunkt der Signierung (dies gilt z. B. für el. Signaturen nach dem deutschen Signaturgesetz). Daher können die OCSP-Antworten bei einem gesperrten Zertifikat auch den Sperrzeitpunkt angeben, so dass sich daraus ermitteln lässt, ob dieses Zertifikat zu einem bestimmten Zeitpunkt noch gültig war. Falls jedoch die Zertifizierungsstelle vorübergehende Sperrungen (Suspendierungen) zulässt, kann man einer positiven OCSP-Antwort („good“) nicht entnehmen, ob dieses Zertifikat zwischenzeitlich suspendiert war. Allerdings wird dies gemeinhin nicht als Nachteil von OCSP gewertet, sondern vielmehr die Suspendierung von Signaturzertifikaten als problematisch für spätere Verifikationen angesehen. Im Unterschied zu OCSP unterstützt das Server-based Certificate Validation Protocol die Abfrage des Zertifikatsstatus zu einem vergangenen Zeitpunkt.
OCSP besitzt kein eigenes Transport-Protokoll, zum Transport wird in der Regel http oder https verwendet.
Verbreitung
OCSP wird inzwischen von vielen Standard-Programmen und Betriebssystemen (z. B. Microsoft Windows Vista, Adobe Acrobat, Mozilla Firefox, Mozilla Thunderbird, Lotus Notes Version 8) unterstützt. Einige, vor allem ältere Programme unterstützen nur Zertifikatsperrlisten (CRLs) zur Prüfung des Zertifikatsstatus.
Um der Forderung des Signaturgesetzes nach einem aktuellen Auskunftsdienst zu genügen, betreiben alle Aussteller von qualifizierten Zertifikaten in Deutschland einen OCSP-Responder.
Vor- und Nachteile
Vorteile
Im Gegensatz zu Sperrlisten, die nur in bestimmten Intervallen erstellt werden und damit nicht immer aktuell sind, können OCSP-Responder sekundengenaue Sperrinformationen liefern, sofern sie eine aktuelle Datenbasis verwenden (z. B. die CA-Datenbank).
Außerdem ermöglicht es OCSP im Gegensatz zu Sperrlisten, nicht gesperrte Zertifikate von gefälschten Zertifikaten zu unterscheiden – wenn der OCSP-Responder so konfiguriert ist, dass er nur bei tatsächlich existierenden Zertifikaten die Antwort „good“ liefert. Dies wird vor allem dann wichtig, wenn die von der Zertifizierungsstelle (CA) zur Signierung der Zertifikate eingesetzten Algorithmen und Schlüssellängen im Laufe der Zeit unsicher und Fälschungen möglich werden. Allerdings lässt der Standard auch zu, dass ein OCSP-Responder bereits dann die Antwort „good“ liefert, wenn das Zertifikat nicht in einer Sperrliste gelistet ist; in diesem Fall könnte das Zertifikat auch gar nicht ausgestellt worden sein, d. h. gefälscht sein.
Nachteile
OCSP liefert – wie Sperrlisten – nur Auskünfte zum Sperrstatus von Zertifikaten, prüft aber nicht die mathematische Korrektheit der Signaturen der Zertifikate, ihre Gültigkeitsdauer oder ggf. im Zertifikat angegebene Nutzungsbeschränkungen. Außerdem muss der Client zunächst eine Zertifizierungskette ermitteln. Um diese Aufgaben an den Auskunftsdienst auszulagern, wurde SCVP entwickelt.
Weiterhin hängt die Aktualität von OCSP-Antworten von der verwendeten Datenbasis ab. Bei manchen Implementierungen basiert der OCSP-Responder auf einer Sperrliste und liefert daher keine aktuelleren Sperrinformationen als diese.
Weblinks
- Spezifiziert wurde das OCSP im RFC 2560.
Wikimedia Foundation.