openssl pkey get private()

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

openssl_pkey_get_private

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

openssl_pkey_get_private — Hämta en privat nyckel

Beskrivning

openssl_pkey_get_private(
    #[\SensitiveParameter] OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $private_key,
    #[\SensitiveParameter] ?string $passphrase = null
): OpenSSLAsymmetricKey|false

openssl_pkey_get_private() analyserar private_key och förbereder den för användning av andra funktioner.

Parametrar

  • private_key — Kan vara ett av följande:
 * En sträng i formatet file://path/to/file.pem. Den angivna filen måste innehålla ett PEM-kodat certifikat/privat nyckel (den kan innehålla båda).
 * En PEM-kodad privat nyckel.
  • passphrase — Det valfria lösenordet måste användas om nyckeln är krypterad (skyddad av ett lösenord).

Returnerar

Returnerar en instans av OpenSSLAsymmetricKey vid framgång, eller false vid fel.

Changelog

Version Beskrivning
8.0.0 Vid framgång returnerar funktionen nu en instans av OpenSSLAsymmetricKey; tidigare returnerades en resurs av typen OpenSSL-nyckel.
8.0.0 private_key accepterar nu en instans av OpenSSLAsymmetricKey eller OpenSSLCertificate; tidigare accepterades en resurs av typen OpenSSL-nyckel eller OpenSSL X.509.
8.0.0 passphrase är nu nullable.

Exempel

<?php
// Hämta en privat nyckel från en fil
$pem_key = "file://path/to/private_key.pem";
$private_key = openssl_pkey_get_private($pem_key, "my_password");

if ($private_key !== false) {
    echo "Privat nyckel laddad";
} else {
    echo "Kunde inte ladda den privata nyckeln";
}
?>

Se även

openssl_pkcs7_read

(PHP 7 >= 7.2.0, PHP 8)

openssl_pkcs7_read — Exporterar PKCS7-filen till en array av PEM-certifikat

Beskrivning

openssl_pkcs7_read(string $data, array &$certificates): bool

Denna funktion analyserar PKCS7-certifikatfilen (p7b-format) och returnerar en array med PEM-kodade certifikat.

Parametrar

  • data — Strängen med data i p7b-format som ska analyseras.
  • certificates — Array som innehåller PEM-certifikat från p7b-inmatningsdata.

Returnerar

Returnerar

true

vid framgång eller

false

vid fel.

Exempel

Exempel #1 Hämta en PEM-array från en P7B-fil

<?php

$file = 'certs.p7b';

$f = file_get_contents($file);
$p7 = array();
$r = openssl_pkcs7_read($f, $p7);

if ($r === false) {
    printf("ERROR: %s är inte en giltig p7b-fil".PHP_EOL, $file);
        for($e = openssl_error_string(), $i = 0; $e; $e = openssl_error_string(), $i++)
            printf("SSL l%d: %s".PHP_EOL, $i, $e);
    exit(1);
}

print_r($p7);
?>

Se även

  • openssl_csr_sign() — Signera en CSR med ett annat certifikat (eller sig själv) och generera ett certifikat

Sidslut

Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.openssl-pkey-get-private.php PHP Funktioner Funktionsreferens OpenSSL-funktioner


Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorreparation Stockholm som har sponsrat Linux.se med webserver.