Online -Zertifikat -Statusprotokoll

OCSP
Online -Zertifikat -Statusprotokoll
Status Vorgeschlagener Standard
Jahr begann 4. Februar 2002[1]
Erstmals veröffentlicht 11. Februar 2013[1]
Autoren
  • Stefan Santesson
  • Michael myers
  • Rich Ankney
  • Ambarisch Malpani
  • Slava Galperin
  • Carlisle Adams
  • Mohit Sahni
Grundstandards
Domain Digitales Zertifikat
Webseite
  • RFC 6960: OCSP
  • RFC 8954: OCSP Nonce -Erweiterung

Das Online -Zertifikat -Statusprotokoll (OCSP) ist ein Internet Protokoll verwendet, um den Widerrufstatus von a zu erhalten X.509 digitales Zertifikat.[2] Es ist in RFC 6960 beschrieben und ist auf der Internetstandards Spur. Es wurde als Alternative zu Zertifikat -Widerrufslisten (CRL), und behandeln bestimmte Probleme, die mit der Verwendung von CRLs in a verbunden sind öffentliche Schlüsselinfrastruktur (PKI).[3] Über OCSP kommunizierte Nachrichten sind in codiert Asn.1 und werden normalerweise über kommuniziert Http. Die Art dieser Nachrichten "Anfrage/Antwort" führt zu OCSP Server bezeichnet werden OCSP -Responder.


Etwas Internetbrowser (Feuerfuchs[4]) Verwenden Sie OCSP, um zu validieren Https Zertifikate, während andere es deaktiviert haben.[5][6] Die meisten OCSP -Widerrufstatus im Internet verschwinden kurz nach Ablauf des Zertifikats.[7]

Vergleich mit CRLs

  • Da eine OCSP -Antwort weniger Daten enthält als ein typisches Zertifikat Widerrufsliste (CRL) wird die Netzwerk- und Client -Ressourcen weniger belastet.[8]
  • Da eine OCSP -Antwort weniger Daten zu haben analysieren, die kundenseitige Bibliotheken Dieser Handle kann weniger komplex sein als solche, die CRLs verarbeiten.[9]
  • OCSP gibt dem Responder bekannt, dass ein bestimmter Netzwerkhost zu einem bestimmten Zeitpunkt ein bestimmtes Zertifikat verwendet hat. OCSP schreibt die Verschlüsselung nicht vor, daher können andere Parteien diese Informationen abfangen.[2]

Grundlegende PKI -Implementierung

  1. Alice und Bob haben öffentliche Schlüsselzertifikate ausgestellt von Carol, die Zertifizierungsstelle (Ca).
  2. Alice möchte eine Transaktion mit Bob durchführen und schickt ihm ihr öffentliches Schlüsselzertifikat.
  3. Bob, besorgt, dass Alices privates Schlüssel möglicherweise kompromittiert wurde, erstellt eine "OCSP -Anfrage", die die Seriennummer von Alice enthält und sie an Carol sendet.
  4. Carols OCSP Responder liest die Zertifikatseriennummer aus Bobs Anfrage. Der OCSP -Responder verwendet die Seriennummer der Zertifikat, um den Widerrufstatus von Alice's Certificate nachzuschlagen. Der OCSP -Responder sucht in einer CA -Datenbank, die Carol behauptet. In diesem Szenario ist die CA -Datenbank von Carol der einzige vertrauenswürdige Ort, an dem ein Kompromiss zu Alice's Zertifikat aufgezeichnet wird.
  5. Carols OCSP -Responder bestätigt, dass Alice's Zertifikat immer noch in Ordnung ist, und gibt a zurück unterzeichnet, erfolgreiche 'OCSP -Antwort' auf Bob.
  6. Bob überprüft kryptografisch Carols unterschriebene Antwort. Bob hat Carols öffentlichen Schlüssel irgendwann vor dieser Transaktion gespeichert. Bob verwendet Carols öffentlichen Schlüssel, um die Antwort von Carol zu überprüfen.
  7. Bob schließt die Transaktion mit Alice ab.

Protokolldetails

Ein OCSP -Responder (ein Server, der normalerweise vom Zertifikat -Emittenten ausgeführt wird) kann eine signierte Antwort zurückgeben, die bedeutet, dass das in der Anfrage angegebene Zertifikat "gut", "widerrufen" oder "unbekannt" ist. Wenn es die Anforderung nicht verarbeiten kann, kann es einen Fehlercode zurückgeben.

Das OCSP -Anforderungsformat unterstützt zusätzliche Erweiterungen. Dies ermöglicht eine umfassende Anpassung an ein bestimmtes PKI -Schema.

OCSP kann anfällig für Wiederholungsangriffe,[10] Wenn eine unterschriebene "gute" Antwort von einem böswilligen Vermittler erfasst und zu einem späteren Zeitpunkt nach dem Widerruf des Betreffzertifikats an den Kunden wiedergegeben wurde. OCSP erlaubt a Nonce in die Anfrage aufgenommen werden, die in die entsprechende Antwort aufgenommen werden kann. Aufgrund der hohen Belastung verwenden die meisten OCSP -Responder die Nonce -Erweiterung nicht, um eine andere Antwort für jede Anforderung zu erstellen, und verwenden stattdessen vorgestellte Antworten mit einer Gültigkeitsdauer von mehreren Tagen. Der Wiederholungsangriff ist daher eine große Bedrohung für Validierungssysteme.

OCSP kann mehr als eine Ebene CA unterstützen. OCSP -Anfragen können zwischen Peer -Respondern gekettet werden, um die für das Betreffzertifikat geeignete ausstellende CA abzufragen, wobei die Antworten des jeweils anderen die Antworten des anderen gegen die Stamm -CA unter Verwendung ihrer eigenen OCSP -Anfragen validieren.

Ein OCSP -Responder kann nach Widerrufsinformationen von abfragt werden Delegierte Pfadvalidierung (DPV) Server. OCSP führt selbst keine DPV von gelieferten Zertifikaten durch.

Der Schlüssel, der eine Antwort unterzeichnet, muss nicht der gleiche Schlüssel sein, der das Zertifikat unterzeichnet hat. Der Emittent des Zertifikats kann eine andere Befugnis delegieren, der OCSP -Responder zu sein. In diesem Fall muss das Zertifikat des Responders (das zur Unterzeichnung der Antwort verwendet) vom Emittenten des fraglichen Zertifikats ausgestellt werden und muss eine bestimmte Erweiterung enthalten, die sie als OCSP -Signierbehörde markiert (genauer Schlüsselverwendungsverlängerung mit dem Oid {ISO (1) Identifizierte Organisation (3) DOD (6) Internet (1) Sicherheit (5) Mechanismen (5) PKIX (7) Tastatur (3) OCSPSsigning (9)})

Datenschutzbedenken

Die OCSP -Überprüfung schafft ein Privatsphäre für einige Benutzer, da der Kunde einen Dritten (wenn auch eine vom Kunden vertrauenswürdige Partei) in Verbindung setzen muss, um die Gültigkeit der Zertifikat zu bestätigen. OCSP Stapling ist eine Möglichkeit, die Gültigkeit zu überprüfen, ohne das Browserverhalten an die CA zu offenbaren.[2]

Kritik

Der OCSP-basierte Widerruf ist keine effektive Technik, um den Kompromiss des privaten Schlüssels eines HTTPS-Servers zu mildern. Ein Angreifer, der den privaten Schlüssel eines Servers beeinträchtigt hat der Mann in der Mitte Positionieren Sie im Netzwerk, um diesen privaten Schlüssel zu missbrauchen und einen Server auszugeben. Ein Angreifer in einer solchen Position ist in der Regel auch in der Lage, die OCSP -Abfragen des Kunden zu stören. Da die meisten Clients OCSP schweigend ignorieren, wenn die Abfragen ausfällt, ist OCSP kein zuverlässiges Mittel zur Minderung des HTTPS -Serverschlüsselkompromisses.[11]

Die Muss -Taple -TLS -Erweiterung in einem Zertifikat kann verlangen, dass das Zertifikat durch a überprüft wird Stapled OCSP Antwort, mildern dieses Problem.[8] OCSP bleibt auch eine gültige Verteidigung gegen Situationen, in denen der Angreifer kein "Man-in-the-Middle" (Code-Signing oder fehlerhafte Zertifikate) ist.

Das OCSP -Protokoll geht davon aus, dass der Antragsteller einen Netzwerkzugriff hat, um eine Verbindung zu einem geeigneten OCSP -Responder zu herzustellen. Einige Antragsteller können möglicherweise keine Verbindung herstellen, da ihr lokales Netzwerk einen direkten Internetzugang verbietet (eine gängige Praxis für interne Knoten in einem Rechenzentrum). Das Erzwingen interner Server, eine Verbindung zum Internet herzustellen, um OCSP zu verwenden Ent-Perimeterisation Trend. Das OCSP Stapling Protokoll ist eine Alternative, mit der Server OCSP -Antworten zwischenspeichern können, wodurch der Anforderer erforderlich ist, den OCSP -Responder direkt zu kontaktieren.

Browserunterstützung

OCSP -Informationen zu Firefox 89

Unter den meisten wichtigen Browsern unterstützt OCSP eine große Unterstützung:

  • Internet Explorer ist auf dem gebaut Cryptoapi von Fenster und damit beginnen mit Version 7 an Windows Vista (nicht XP[12]) unterstützt die OCSP -Überprüfung.[13]
  • Alle Versionen von Mozilla Firefox Unterstützen Sie die OCSP -Überprüfung. Firefox 3 Aktiviert die OCSP -Überprüfung standardmäßig.[14]
  • Safari Auf macOS unterstützt die OCSP -Überprüfung. Es ist standardmäßig ab Mac OS X 10.7 (Lion) aktiviert. Zuvor muss es in Schlüsselbundpräferenzen manuell aktiviert werden.[15]
  • Versionen von Oper Ab 8.0[16][17] Bei der aktuellen Version unterstützen die OCSP -Überprüfung.

Jedoch, Google Chrome ist ein Ausreißer. Google Disabled OCSP -Überprüfungen standardmäßig 2012 unter Berufung auf Latenz- und Datenschutzprobleme[18] und verwendet stattdessen ihren eigenen Update -Mechanismus, um widerrufene Zertifikate an den Browser zu senden.[19]

Implementierungen

Mehrere Open Source und proprietär Es gibt OCSP -Implementierungen, einschließlich vollständig vorgestellter Server und Bibliotheken zum Erstellen benutzerdefinierter Anwendungen. OCSP Klient Unterstützung ist in viele eingebaut Betriebssysteme, Internetbrowser, und andere Netzwerk Software Aufgrund der Popularität von Https und die Weltweites Netz.

Server

Open Source

Proprietär

Bibliothek

Open Source

Klient

Siehe auch

Verweise

  1. ^ a b "Geschichte für Draft-ITF-PKIX-RFC2560BIS-20". Abgerufen 23. Dezember, 2021.{{}}: CS1 Wartung: URL-Status (Link)
  2. ^ a b c A., Jesin (12. Juni 2014). "So konfigurieren Sie OCSP auf Apache und Nginx". Community -Tutorials. Digital Ocean, Inc.. Abgerufen 2. März, 2015.
  3. ^ "OCSP Stapling". Globalsign -Unterstützung. GMO Globalsign Inc. 1. August 2014. Abgerufen 2. März, 2015.
  4. ^ "CA/Widerrufsprüfung in Firefox". Wiki.mozilla.org. Abgerufen 29. Juni 2022.
  5. ^ "Werden widerrufene Zertifikate in Safari und Chrome erkannt?". Abgerufen 29. Juni 2022.
  6. ^ "Crlsets". Abgerufen 29. Juni 2022.
  7. ^ Korzhitskii, Nikita; Carlsson, Niklas (2021). "Widerrufstatus im Internet". In Hohlfeld, Oliver; Lutu, Andra; Levin, Dave (Hrsg.). Passive und aktive Messung. PAM 2021. Lncs. Vol. 12671. S. 175–191. Arxiv:2102.04288. doi:10.1007/978-3-030-72582-2_11. ISBN 978-3-030-72582-2. ISSN 0302-9743.
  8. ^ a b Gibson, Steve. "Bewusstsein für das Widerruf des Sicherheitszertifikats: Der Fall für" OCSP Must-Staple "". Gibson Research Corporation. Abgerufen 2. März, 2015.
  9. ^ Keeler, David (29. Juli 2013). "OCSP in Firefox". Mozilla Security Blog. Mozilla Foundation. Abgerufen 2. März, 2015.
  10. ^ RFC 6960, Abschnitt 5, Sicherheitsüberlegungen
  11. ^ "Nein, aktivieren Sie den Widerrufsüberprüfen nicht". 19. April 2014. Abgerufen 24. April 2014.
  12. ^ "Windows XP -Zertifikatstatus und Widerrufsüberprüfung". Microsoft. Abgerufen 9. Mai 2016.
  13. ^ "Was ist neu im Zertifikat Widerruf in Windows Vista und Windows Server 2008". Microsoft. Abgerufen 9. Mai 2016.
  14. ^ "Mozilla Bug 110161 - Standardmäßig OCSP aktivieren". Mozilla. 1. Oktober 2007. Abgerufen 18. Juli 2010.
  15. ^ Wisniewski, Chester (26. März 2011). "Apple -Benutzer haben sich gegen Zertifikatangriffe verteidigen". Sophos. Abgerufen 26. März 2011.
  16. ^ Pettersen, Yngve Nysæter (9. November 2006). "Einführung erweiterter Validierungszertifikate". Opera -Software. Archiviert von das Original am 10. Februar 2010. Abgerufen 8. Januar 2010.
  17. ^ Pettersen, Yngve Nysæter (3. Juli 2008). "RootStore Newsletter". Opera -Software. Abgerufen 8. Januar 2010.
  18. ^ Langley, Adam (5. Februar 2012). "Widerrufsüberprüfung und Chromes CRL". Archiviert vom Original am 2012-02-12. Abgerufen 2015-01-30.
  19. ^ "Chrome macht den Widerruf des Zertifikats besser", 21. April 2014, Larry Seltzer, Zdnet
  20. ^ "Boulder - ein Acme CA". GitHub. 16. März 2018. Abgerufen 17. März 2018.
  21. ^ "Dogag -Zertifikatssystem". Abgerufen 12. August 2019.
  22. ^ "EJBCA - Open Source PKI Certificate Authority". Primeey. 2. Februar 2018. Abgerufen 17. März 2018.
  23. ^ "Xipki". GitHub. 13. März 2018. Abgerufen 17. März 2018.
  24. ^ "Zertifikatdienste (Windows)". Windows Dev Center. Microsoft. 2018. Abgerufen 17. März 2018.
  25. ^ "Paket OCSP". CFSSL Godoc. 25. Februar 2018. Abgerufen 17. März 2018.
  26. ^ "OCSP_Response_Status". Master -Manpages. OpenSSL. 2017. Abgerufen 17. März 2018.
  27. ^ "OCSP in Wolfssl eingebettet SSL - Wolfssl". 2014-01-27. Abgerufen 2019-01-25.

Externe Links