📜  PHP openssl_pkcs12_read()函数(1)

📅  最后修改于: 2023-12-03 15:33:30.717000             🧑  作者: Mango

PHP函数介绍:openssl_pkcs12_read()

函数描述
bool openssl_pkcs12_read ( string $pkcs12 , array &$certs , string $pass )

openssl_pkcs12_read()函数用于解析PKCS#12格式的证书并从中提取私钥和相关的证书。这个函数将pkcs12格式的证书转换为数组,其中包括证书链及私钥。如果该函数返回true,则表示成功从PKCS#12格式的证书中提取到了证书和私钥;如果返回false,则表示提取失败。

需要注意的是,该函数仅适用于PHP 5.2.2及以上版本。

参数列表
  • $pkcs12:PKCS#12格式的证书,可以是证书内容的字符串或者是证书文件的路径。
  • $certs:如果提取成功,则在该参数中存放证书链及私钥。
  • $pass:证书的密码。
返回值

该函数返回值为布尔类型:成功时返回true,失败时返回false

使用示例
<?php

$cert_path = 'cert.p12';
$pass = 'password123';

// 读取cert.p12文件中的证书和私钥
if (openssl_pkcs12_read(file_get_contents($cert_path), $certs, $pass)) {
    // 提取成功,打印证书信息
    print_r($certs);
} else {
    // 提取失败,打印错误信息
    echo "Error: ".openssl_error_string();
}

?>
相关函数
  • openssl_csr_new():创建证书签名请求。
  • openssl_pkey_new():生成一个新的私钥和公钥。
  • openssl_csr_sign():使用 CA 或自签名证书对 CSR 进行签名,生成证书。