openssl_csr_get_public_key

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

openssl_csr_get_public_keyRetorna a chave pública de um CSR

Descrição

openssl_csr_get_public_key(OpenSSLCertificateSigningRequest|string $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.

Parâmetros

csr

Consulte Parâmetros CSR para obter uma lista de valores válidos.

short_names
Warning

Este parâmetro é ignorado

Valor Retornado

Retorna um OpenSSLAsymmetricKey em caso de sucesso ou false em caso de erro.

Registro de Alterações

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.

Exemplos

Example #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'];
?>

Veja Também