Devuelve la clave pública de un CSR

# openssl_csr_get_public_key

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

openssl_csr_get_public_key — Devuelve la clave pública de un CSR

### Descripción

function openssl_csr_get_public_key(OpenSSLCertificateSigningRequest|string `$csr`, bool `$short_names` = `true`): OpenSSLAsymmetricKey|false

openssl_csr_get_public_key() extrae la clave pública de la `csr` y la prepara para su utilización por otras funciones.

### Parámetros

`csr`
  Ver los parámetros CSR para obtener una lista de los valores válidos.
`short_names`
  Advertencia

  Este parámetro es ignorado

### Valores devueltos

Devuelve una OpenSSLAsymmetricKey en caso de éxito, o `false` en caso de error.

### Historial de cambios

Versión | Descripción
--- | ---
8.0.0 | En caso de éxito, esta función devuelve ahora una instancia de OpenSSLAsymmetricKey ; anteriormente se devolvía un resource de tipo `OpenSSL key`.
8.0.0 | `csr` acepta ahora una instancia de OpenSSLCertificateSigningRequest ; anteriormente, se aceptaba un resource de tipo `OpenSSL X.509 CSR`.

### Ejemplos

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

### Ver también

- openssl_csr_get_subject() - Retorna el sujeto de una CSR
- openssl_csr_new() - Genera una CSR
- openssl_pkey_get_details() - Devuelve un array que contiene los detalles de la clave
- openssl_pkey_export_to_file() - Guarda una clave en formato ASCII en un fichero
- openssl_pkey_export() - Almacena una representación exportable de la clave en una cadena de caracteres

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open