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 邮件?
X509_PURPOSE_SMIME_ENCRYPT正式是否可用用来加密 S/MIME 邮件?
X509_PURPOSE_CRL_SIGN证书是否可以用来签名证书撤销列表(CRL)?
X509_PURPOSE_ANY证书是否可以用于任何目的?
这些选项不是位字段——只能指定一个字段!
ca_info

ca_info 应该是一个受信任的 CA 文件/文件夹组成的数组,如 Certificate Verification 所描述的一样。

untrusted_certificates_file

如果指定,这应该是 PEM 编码文件的名称,该文件持有证书,可以用来帮助验证证书,尽管从该文件中获得的证书不受信任。

返回值

如果证书可以用于预期目的,返回 true,如果不行,则返回 false 错误便会返回 -1。

更新日志

版本说明
8.0.0certificate 现在接受 OpenSSLCertificate 实例;之前接受类型 OpenSSL X.509resource
8.0.0untrusted_certificates_file 现在可为 null。
To Top