openssl_x509_checkpurpose

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

openssl_x509_checkpurposeПроверяет, можно ли использовать сертификат для конкретных задач

Описание

openssl_x509_checkpurpose(
    OpenSSLCertificate|string $certificate,
    int $purpose,
    array $ca_info = [],
    ?string $untrusted_certificates_file = null
): bool|int

openssl_x509_checkpurpose() проверяет сертификат, чтобы узнать, может ли он использоваться с заданной целью purpose.

Список параметров

certificate

Сертификат.

purpose

Цели openssl_x509_checkpurpose()
Константа Описание
X509_PURPOSE_SSL_CLIENT Можно ли использовать сертификат для SSL соединения на стороне клиента?
X509_PURPOSE_SSL_SERVER Можно ли использовать сертификат для SSL соединения на стороне сервера?
X509_PURPOSE_NS_SSL_SERVER Можно ли использовать для сервера Netscape SSL?
X509_PURPOSE_SMIME_SIGN Можно ли подписывать S/MIME email?
X509_PURPOSE_SMIME_ENCRYPT Можно ли шифровать S/MIME email?
X509_PURPOSE_CRL_SIGN Можно ли им подписывать список отзыва сертификатов (CRL)?
X509_PURPOSE_ANY Можно ли использовать для любых задач?
Эти опции не являются бинарной маской - можно использовать только одно значение за раз!

ca_info

ca_info должен содержать массив доверенных CA файлов/директорий, как описано на странице проверки сертификатов.

untrusted_certificates_file

Если задано, то должно содержать путь до PEM-файла, содержащего сертификаты, которые могут быть использованы для проверки сертификата, но не являющиеся при этом доверенными.

Возвращаемые значения

Возвращает true, если сертификат можно использовать по указанному назначению, false - если нельзя и -1 в случае возникновения ошибки.

Список изменений

Версия Описание
8.0.0 certificate теперь принимает экземпляр OpenSSLCertificate; ранее принимался ресурс (resource) типа OpenSSL X.509.
8.0.0 untrusted_certificates_file теперь допускает значение null.