Ein Certificate Signing Request (CSR; deutsch „Zertifikatsignierungsanforderung“) oder Certification Request ist ein digitaler Antrag, aus einem öffentlichen Schlüssel und der Identitäts-Information des Antragstellers ein digitales Identitäts-Zertifikat (auch Public-Key-Zertifikat genannt) zu erstellen.
Typischerweise enthält der CSR eine digitale Selbst-Signatur, welche aber nur einen Nachweis für den Besitz des zugehörigen privaten Schlüssels enthält, aber keinen Nachweis der Authentizität des Antrags. Die Echtheit der Identität des Antragstellers muss auf anderem Wege geprüft werden, ansonsten bietet das beantragte Zertifikat keine echte Sicherheit. Daher sollten CSRs nur im Rahmen eines sicheren Protokolls zur Zertifikatsbeantragung verwendet werden, das die Authentizität des Antragstellers prüft, etwa CMP, EST oder ACME.
Ein Certificate Signing Request dient dazu, bei einer Zertifizierungsstelle für X.509-Zertifikate (CA) ein Zertifikat für den öffentlichen Schlüssel des künftigen Besitzers zu beantragen, wobei der private Schlüssel des Antragstellers geheim bleibt.
Ein Industriestandard für X.509 CSRs ist PKCS #10. Hingegen ist CRMF weniger verbreitet, aber flexibler. Es erlaubt neben der Selbstsignatur auch andere Arten des Proof-of-Possession, etwa für DH- und KEM-Schlüssel, mit denen man nur Schlüssel vereinbaren bzw. ver- und entschlüsseln, aber nicht signieren kann.
Die Anforderung wird meist unter Verwendung des privaten Schlüssels des Antragstellers erzeugt und besteht aus dem öffentlichen Schlüssel, einem differenzierten Namen und optionalen Attributen.
Name und Attribute können beispielsweise von OpenSSL in folgendem Dialog abgefragt werden:
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
Der Haupt-Name des Antragstellers wird als Common Name bezeichnet.
Aus einem Zertifikat und dem zugehörigen privaten Schlüssel des Antragstellers kann seine Anforderung teilweise rekonstruiert werden.
Der Antrag kann im druckbaren Format PEM oder als Binärdatei im Format DER erstellt werden. Die Anforderung wird meist über eine Registrierungsstelle an eine Zertifizierungsstelle (englisch certification authority) (CA) gesendet.