牛牛在线工具

openssl_x509_verify()

收录 8868 个 PHP 函数,含用途说明与用法示例。

openssl_x509_verify()

验证给定的证书是否正确

函数名称:openssl_x509_verify() 适用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7 函数描述:openssl_x509_verify() 函数用于验证给定的证书是否正确。 语法:int openssl_x509_verify(resource $certificate [, mixed $certificateAuthority = null [, array &$errorList = array() [, string $crlFile = null [, int $flags = 0 [, string $untrustedFile = null]]]]]) 参数: $certificate: 要验证的证书资源。 $certificateAuthority: 证书颁发机构的证书链,可以是单个证书或证书数组。如果未提供该参数,则验证将使用系统中已安装的证书颁发机构。 $errorList: 一个包含验证错误的数组。如果验证成功,则该数组将为空。 $crlFile: 证书吊销列表文件(CRL)的路径。如果不需要使用CRL,则可以省略。 $flags: 可选参数,用于指定验证的标志。默认为0,表示验证所有证书。 $untrustedFile: 可选参数,用于指定不受信任的证书列表文件的路径。如果不需要使用该列表,则可以省略。 返回值:验证成功返回1,验证失败返回0,发生错误返回-1。 示例: // 读取要验证的证书 $certificate = file_get_contents('certificate.pem'); // 读取证书颁发机构的证书链 $certificateAuthority = file_get_contents('ca_certificate.pem'); // 验证证书 $result = openssl_x509_verify($certificate, $certificateAuthority); if ($result === 1) { echo "证书验证成功!"; } elseif ($result === 0) { echo "证书验证失败!"; } else { echo "证书验证发生错误!"; } 注意事项: 要验证的证书必须是有效的X.509证书。 如果未提供证书颁发机构的证书链,则验证将使用系统中已安装的证书颁发机构。 如果需要使用证书吊销列表文件(CRL)或不受信任的证书列表文件,则可以指定相应的文件路径。 在验证过程中,可以通过引用传递$errorList参数来获取验证错误的详细信息。 需要确保服务器上已启用OpenSSL扩展。