php8.5
Home/ Manual/ openssl / functions/ openssl_x509_check_private_key

openssl_x509_check_private_key

PHP function Edit on GitHub ✎

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

Checks if a private key corresponds to a certificate

Description

openssl_x509_check_private_key(OpenSSLCertificate|string $certificate, OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $private_key): bool

Checks whether the given private_key is the private key that corresponds to certificate.

Warning

The function does not check if private_key is indeed a private key or not. It merely compares the public materials (e.g. exponent and modulus of an RSA key) and/or key parameters (e.g. EC params of an EC key) of a key pair.

This means, for example, that a public key could be given for private_key and the function may return true.

Parameters

certificate

The certificate.

private_key

The private key.

Return Values

Returns true if private_key is the private key that corresponds to certificate, or false otherwise.

Changelog

VersionDescription
8.0.0certificate accepts an OpenSSLCertificate instance now; previously, a Resource of type OpenSSL X.509 was accepted.
8.0.0private_key accepts an OpenSSLAsymmetricKey or OpenSSLCertificate instance now; previously, a Resource of type OpenSSL key or OpenSSL X.509 was accepted.

Source: reference/openssl/functions/openssl-x509-check-private-key.xml · from the official PHP manual (php/doc-en)