Wikipedia · einfach zusammengefasst · Stand
Certificate Signing Request
Certificate Signing Request. digitaler Antrag, mittels einer digitalen Signatur aus einem öffentlichen Schlüssel ein digitales Zertifikat zu erstellen.
Inhalt3 Abschnitte
Zweck und Sicherheitsbedeutung
Ein Certificate Signing Request (CSR), deutsch „Zertifikatsignierungsanforderung“ oder Certification Request, ist ein digitaler Antrag. Mit ihm wird bei einer Zertifizierungsstelle ein digitales Identitäts-Zertifikat für einen öffentlichen Schlüssel beantragt. Ein solches Zertifikat wird auch Public-Key-Zertifikat genannt. Der CSR verbindet den öffentlichen Schlüssel mit Identitätsinformationen des Antragstellers; der zugehörige private Schlüssel bleibt geheim.
Üblicherweise enthält ein CSR eine digitale Selbst-Signatur. Sie ist ein Proof of Possession (POP), also ein Besitz-Nachweis für den zugehörigen privaten Schlüssel. Sie beweist jedoch nur, dass der Antragsteller den privaten Schlüssel besitzt, nicht, dass seine Identität echt ist. Die Identität muss deshalb auf einem anderen Weg geprüft werden. Ohne diese Prüfung bietet das beantragte Zertifikat keine echte Sicherheit. CSRs sollten daher nur im Rahmen eines sicheren Protokolls zur Zertifikatsbeantragung eingesetzt werden, das die Authentizität prüft, beispielsweise CMP, EST oder ACME.
Beantragung und Ausstellung
Der Ablauf umfasst typischerweise folgende Schritte:
- Der Antragsteller erzeugt ein Schlüsselpaar aus einem privaten Schlüssel und dem zugehörigen öffentlichen Schlüssel.
- Er erstellt einen elektronischen Zertifikatsantrag. Dieser CSR enthält als wesentliche Bestandteile seine Identität und den öffentlichen Schlüssel.
- Er fügt einen Proof of Possession hinzu, meist in Form einer Selbst-Signatur des Antrags.
- Der CSR wird an die Registrierungsstelle (RA) zur Prüfung gesendet. Zusätzlich muss ein Nachweis für die Authentizität des Antragstellers erbracht werden. Eine Selbstsignatur, wie sie beispielsweise im PKCS-#10-Format für den POP enthalten ist, reicht dafür nicht aus.
- Die RA prüft die Echtheit der Identität und die Zulässigkeit des Antrags. Dabei betrachtet sie den CSR, die Formularangaben, den enthaltenen öffentlichen Schlüssel und den meist vorhandenen POP. Bei positivem Ergebnis leitet sie den Antrag an die Zertifizierungsstelle (CA) weiter.
- Die CA stellt das öffentliche Zertifikat aus, indem sie eine entsprechende X.509-Datenstruktur mit ihrem privaten Schlüssel signiert. Das Zertifikat wird anschließend, meist erneut über die RA, an den Antragsteller beziehungsweise künftigen Besitzer gesendet.
Aufbau, Formate und Standards
Ein Industriestandard für X.509-CSRs ist PKCS #10. CRMF ist weniger verbreitet, aber flexibler: Es erlaubt neben der Selbstsignatur auch andere Arten des Proof of Possession, etwa für DH- und KEM-Schlüssel. Diese Schlüssel dienen nur zur Schlüsselvereinbarung beziehungsweise zum Ver- und Entschlüsseln und können nicht zum Signieren verwendet werden.
Ein CSR wird meist unter Verwendung des privaten Schlüssels des Antragstellers erzeugt. Er besteht aus dem öffentlichen Schlüssel, einem differenzierten Namen und optionalen Attributen. Der Hauptname des Antragstellers heißt Common Name. Typische Formularfelder sind:
- Country Name: Ländercode mit zwei Buchstaben, im Beispiel DE
- State or Province Name: Bayern
- Locality Name: Ingolstadt
- Organization Name: Beispiel e.V.
- Organizational Unit Name: optional
- Common Name: www.example.net
- Email Address: [email protected]
Ein Antrag kann im druckbaren PEM-Format oder als Binärdatei im DER-Format erstellt werden. Er wird meist über eine RA an eine CA gesendet. Aus einem Zertifikat und dem zugehörigen privaten Schlüssel des Antragstellers kann ein CSR teilweise rekonstruiert werden.
Wichtige Standards und Protokolle sind RFC 2314 für PKCS #10, Version 1.5 (veraltet), RFC 2986 für die Certification Request Syntax Specification Version 1.7, RFC 4210 für das Certificate Management Protocol (CMP), RFC 4211 für das Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF) sowie RFC 5967 mit Ergänzungen zum Medientyp application/pkcs10.