Function openssl_pkey_get_details can read this resource. Try:
<?php
print_r(openssl_pkey_get_details(openssl_csr_get_public_key($csr)));
?>
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_csr_get_public_key — Retorna a chave pública de um CSR
$csr
, bool $short_names
= true
): OpenSSLAsymmetricKey|false
openssl_csr_get_public_key() extrai a chave pública de
csr
e a prepara para uso por outras funções.
csr
Consulte Parâmetros CSR para obter uma lista de valores válidos.
short_names
Este parâmetro é ignorado
Retorna um OpenSSLAsymmetricKey em caso de sucesso ou false
em caso de erro.
Versão | Descrição |
---|---|
8.0.0 |
Em caso de sucesso, esta função retorna uma instância OpenSSLAsymmetricKey agora;
anteriormente, retornava um resource do tipo OpenSSL key .
|
8.0.0 |
csr aceita uma instância OpenSSLCertificateSigningRequest agora;
anteriormente, um resource do tipo OpenSSL X.509 CSR era aceito.
|
Exemplo #1 Exemplo de 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'];
?>
Function openssl_pkey_get_details can read this resource. Try:
<?php
print_r(openssl_pkey_get_details(openssl_csr_get_public_key($csr)));
?>