2024 PHP Conference Japan

openssl_csr_get_public_key

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

openssl_csr_get_public_key返回 CSR 的公開金鑰

說明

openssl_csr_get_public_key(OpenSSLCertificateSigningRequest|字串 $csr, 布林值 $short_names = true): OpenSSLAsymmetricKey|false

openssl_csr_get_public_key()csr 中提取公開金鑰,並準備供其他函數使用。

參數

csr

有關有效值的列表,請參閱 CSR 參數

short_names
警告

此參數會被忽略

返回值

成功時返回 OpenSSLAsymmetricKey 物件,錯誤時返回 false

更新日誌

版本 說明
8.0.0 成功時,此函數現在返回一個 OpenSSLAsymmetricKey 實例;之前返回的是類型為 OpenSSL key資源
8.0.0 csr 參數現在接受 OpenSSLCertificateSigningRequest 實例;之前接受的是類型為 OpenSSL X.509 CSR資源

範例

範例 #1 openssl_csr_get_public_key() 範例

<?php
$subject
= array(
"commonName" => "example.com",
);
$private_key = openssl_pkey_new(array(
"private_key_bits" => 2048,
"private_key_type" => OPENSSL_KEYTYPE_RSA,
));
$csr = openssl_csr_new($subject, $private_key, array('digest_alg' => 'sha256') );
$public_key = openssl_csr_get_public_key($csr);
$info = openssl_pkey_get_details($public_key);
echo
$info['key'];
?>

參見

新增註解

使用者貢獻的註解 1 則註解

php at siemenroorda dot nl
15 年前
openssl_pkey_get_details 函數可以讀取此資源。試試看

<?php
print_r
(openssl_pkey_get_details(openssl_csr_get_public_key($csr)));
?>
To Top