array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'zh', ), 'this' => array ( 0 => 'function.openssl-csr-get-public-key.php', 1 => 'openssl_csr_get_public_key', ), 'up' => array ( 0 => 'ref.openssl.php', 1 => 'OpenSSL 函数', ), 'prev' => array ( 0 => 'function.openssl-csr-export.php', 1 => 'openssl_csr_export', ), 'next' => array ( 0 => 'function.openssl-csr-get-subject.php', 1 => 'openssl_csr_get_subject', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'zh', 'path' => 'reference/openssl/functions/openssl-csr-get-public-key.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_csr_get_public_key — 返回 CSR 的公钥
$csr
, bool $short_names
= true
): OpenSSLAsymmetricKey|false
openssl_csr_get_public_key() 从 csr
中提取公钥供其他功能使用。
成功时返回 OpenSSLAsymmetricKey,错误则返回 false
。
版本 | 说明 |
---|---|
8.0.0 |
成功时此函数现在返回 OpenSSLAsymmetricKey
实例;之前返回类型 OpenSSL key 的 resource。
|
8.0.0 |
csr 现在接受 OpenSSLCertificateSigningRequest
实例;之前接受类型 OpenSSL X.509 CSR 的 resource。
|
示例 #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'];
?>