openssl_private_decrypt

Decrypts data with private key

Description

bool openssl_private_decrypt(
    string $data,
    #[\SensitiveParameter]string &$decrypted_data,
    #[\SensitiveParameter]OpenSSLAsymmetricKeyOpenSSLCertificatearraystring $private_key,
    int $padding = OPENSSL_PKCS1_PADDING
)

openssl_private_decrypt decrypts data that was previously encrypted via openssl_public_encrypt and stores the result into decrypted_data.

You can use this function e.g. to decrypt data which is supposed to only be available to you.

Parameters

data

decrypted_data

private_key

private_key must be the private key that corresponds to the public key that was used to encrypt the data.

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.

Return Values

Returns true on success or false on failure.

Changelog

Version Description
8.0.0 private_key accepts an OpenSSLAsymmetricKey or OpenSSLCertificate instance now; previously, a resource of type OpenSSL key or OpenSSL X.509 was accepted.

See Also

  • openssl_public_encrypt
  • openssl_public_decrypt