Ziemlich viele der OpenSSL-Funktionen benötigen einen Schlüssel- oder Zertifikatparameter. Folgende Methoden können genutzt werden, um solche zu erhalten:
Zertifikate
Eine OpenSSLCertificate-Instanz (oder vor PHP
8.0.0 eine Ressource vom Typ OpenSSL X.509), die
von openssl_x509_read() zurückgegeben wurde.
Eine Zeichenkette mit dem Format file://pfad/zu/cert.pem; die angegebene Datei muss ein PEM-kodiertes Zertifikat enthalten.
Eine Zeichenkette, die den Inhalt eines Zertifikats in
PEM-Kodierung enthält. Sie kann mit
-----BEGIN CERTIFICATE----- beginnen.
Zertifikat-Signierungsanforderungen (Certificate Signing Requests, CSRs)
Eine OpenSSLCertificateSigningRequest-Instanz
(oder vor PHP 8.0.0 eine Ressource vom Typ OpenSSL X.509
CSR), die von openssl_csr_new()
zurückgegeben wurde.
Eine Zeichenkette mit dem Format file://path/to/csr.pem; die benannte Datei muss einen PEM-kodierten CSR enthalten.
Eine Zeichenkette, die den Inhalt eines CSRs in
PEM-Kodierung enthält. Sie kann mit
-----BEGIN CERTIFICATE REQUEST----- beginnen.
Öffentliche/Private Schlüssel
Eine OpenSSLAsymmetricKey-Instanz (oder vor PHP
8.0.0 eine Ressource vom Typ OpenSSL-Schlüssel),
die von openssl_get_publickey() oder
openssl_get_privatekey() zurückgegeben wurde.
Nur für öffentliche Schlüssel: eine
OpenSSLCertificate-Instanz (oder vor PHP 8.0.0
eine Ressource vom Typ OpenSSL X.509).
Eine Zeichenkette mit dem Format file://pfad/zu/datei.pem - die angegebene Datei muss ein PEM-kodiertes Zertifikat und/oder einen PEM-kodierten privaten Schlüssel enthalten.
Eine Zeichenkette, die den Inhalt eines Zertifikats/Schlüssels in
PEM-Kodierung enthält. Sie kann mit
-----BEGIN PUBLIC KEY----- beginnen.
Für private Schlüssel können Sie auch die Syntax array($key,
$passphrase) verwenden. $key
repräsentiert einen Schlüssel, den Sie entweder mit der Notation
file:// oder dem textlichen Inhalt wie oben angeben.
$passphrase ist eine Zeichenfolge, die die
Passphrase für den privaten Schlüssel enthält.