openssl_x509_check_private_key

(PHP 4 >= 4.2.0, PHP 5)

openssl_x509_check_private_key — Checks if a private key corresponds to a certificate

Описание

bool openssl_x509_check_private_key ( mixed $cert , mixed $key )

Checks whether the given key is the private key that corresponds to cert .

Список параметров

cert

The certificate.

key

The private key.

Возвращаемые значения

Returns TRUE if key is the private key that corresponds to cert , or FALSE otherwise.

Коментарии

This function will return FALSE if the private key requires a pass phrase.
2015-04-24 23:58:08
http://php5.kiev.ua/manual/ru/function.openssl-x509-check-private-key.html
This function DOES return TRUE if the key has a passphrase, you just need to set up the data in such a way that the function can understand it. It is not documented here.

This error message led me to the solution:

PHP Warning:  openssl_x509_check_private_key(): key array must be of the form array(0 => key, 1 => phrase)

So this works:

$certFile = file_get_contents('cert.crt');
$keyFile = file_get_contents('cert.key');
$keyPassphrase = "password1234";
$keyCheckData = array(0=>$keyFile,1=>$keyPassphrase);
$result = openssl_x509_check_private_key($certFile,$keyCheckData);
2017-12-05 15:51:10
http://php5.kiev.ua/manual/ru/function.openssl-x509-check-private-key.html

    Поддержать сайт на родительском проекте КГБ