的步骤如下:
$certs = array();
if (openssl_pkcs12_read(file_get_contents($p12File), $certs, $password)) {
// 证书信息提取成功
$certData = openssl_x509_parse($certs['cert']);
$privateKey = openssl_pkey_get_private($certs['pkey'], $password);
// 提取证书信息
$subject = $certData['subject'];
$issuer = $certData['issuer'];
$validFrom = date('Y-m-d H:i:s', $certData['validFrom_time_t']);
$validTo = date('Y-m-d H:i:s', $certData['validTo_time_t']);
// 输出证书信息
echo "Subject: " . $subject['CN'] . "\n";
echo "Issuer: " . $issuer['CN'] . "\n";
echo "Valid From: " . $validFrom . "\n";
echo "Valid To: " . $validTo . "\n";
} else {
// 证书信息提取失败
echo "Failed to extract certificate information.";
}
在上述代码中,我们首先使用openssl_pkcs12_read函数读取p12证书文件并将证书信息存储在$certs数组中。然后,我们使用openssl_x509_parse函数解析证书信息,并使用openssl_pkey_get_private函数获取私钥。最后,我们提取了证书的主题、颁发者、有效期开始时间和结束时间,并将其输出。
需要注意的是,上述代码仅适用于使用密码保护的p12证书文件。如果你的p12证书文件没有密码保护,可以将$password参数设置为null。
推荐的腾讯云相关产品:腾讯云SSL证书服务。该服务提供了多种类型的SSL证书,包括DV SSL证书、OV SSL证书和EV SSL证书,可用于保护网站和应用程序的安全通信。你可以在腾讯云SSL证书服务的官方文档中了解更多信息:腾讯云SSL证书服务。
领取专属 10元无门槛券
手把手带您无忧上云