Certificate Signing Request

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Ein Certificate Signing Request (CSR; deutsch Zertifikatsignierungsanforderung) oder Certification Request ist ein digitaler Antrag, mittels einer digitalen Signatur aus einem öffentlichen Schlüssel ein digitales Zertifikat zu erstellen.

Ablauf[Bearbeiten | Quelltext bearbeiten]

Ein Certificate Signing Request dient dazu, dass der private Schlüssel vom Besitzer eines öffentlichen Zertifikats geheim bleibt gegenüber der Zertifizierungsstelle für X.509-Zertifikate (CA).[1]

  1. Hierzu erzeugt der Besitzer im ersten Schritt auf seiner Hardware ein Schlüsselpaar (einen privaten Schlüssel und einen öffentlichen Schlüssel).
  2. Der Besitzer erzeugt eine CSR-Datei, welche ein elektronisches Formular ist. Es enthält neben den Antragsdaten auch seinen öffentlichen Schlüssel.
  3. Im dritten Schritt sendet der Besitzer den CSR an die Registrierungsstelle zur Prüfung.
  4. Die Registrierungsstelle prüft den Antrag (also die CSR-Datei mit den Formularangaben und dem enthaltenden öffentlichen Zertifikat). Bei positiver Prüfung wird dieses Ergebnis an die Zertifizierungsstelle weitergegeben und diese stellt dem Käufer ein neues öffentliches Zertifikat aus, indem das Zertifikat mithilfe des privaten Schlüssels der CA signiert wird (d. h. doppelt signierter öffentlicher Schlüssel).

Formulardaten[Bearbeiten | Quelltext bearbeiten]

Ein Industriestandard für X.509 ist PKCS #10.[2] Die Anforderung wird mit dem privaten Schlüssel des Antragstellers erzeugt und besteht aus einem öffentlichen Schlüssel, einem differenzierten Namen und optionalen Attributen. Name und Attribute werden beispielsweise in folgendem Dialog abgefragt:

Country Name (2 letter code) [AU]: DE
State or Province Name (full name) [Some-State]: Bayern
Locality Name (eg, city) []: Ingolstadt
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Beispiel e.V.
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []: www.example.net
Email Address []: webmaster@example.net

Dieses Beispiel von OpenSSL bezeichnet den unerlässlichen Namen als Common Name. Aus einem Zertifikat und dem zugehörigen privaten Schlüssel des Antragstellers kann seine Anforderung rekonstruiert werden.[3] Der Antrag kann im druckbaren Format PEM oder als Binärdatei im Format DER erstellt werden. Die Anforderung wird an eine Zertifizierungsstelle (englisch certification authority) gesendet.[2]

Normen und Standards[Bearbeiten | Quelltext bearbeiten]

  • RFC 2314 – PKCS #10: Certification Request Syntax Version 1.5 [Veraltet]
  • RFC 2986 – Certification Request Syntax Specification Version 1.7
  • RFC 5967 – The application/pkcs10 Media Type [Ergänzungen]

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Reiko Kaps: Noch ein Sargnagel. Wie CAs das Vertrauen in die SSL-Technik weiter untergraben. In: c't. Nr. 14, 2014, S. 46 f. (heise.de [abgerufen am 11. August 2019] Problembeschreibung und Lösung per CSR).

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Reiko Kaps: Noch ein Sargnagel. Wie CAs das Vertrauen in die SSL-Technik weiter untergraben. In: c't. Nr. 14, 2014, S. 46 f. (heise.de [abgerufen am 25. November 2018]).
  2. a b PKCS #10: Certification Request Syntax Specification – Version 1.7. Internet Engineering Task Force. November 2000.
  3. How to turn a X509 Certificate in to a Certificate Signing Request. University of Wisconsin, Madison. 13. August 2010.