openssl_public_decrypt

Decrypts data with public key

Description

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

openssl_public_decrypt decrypts data that was previous encrypted via openssl_private_encrypt and stores the result into decrypted_data.

You can use this function e.g. to check if the message was written by the owner of the private key.

Parameters

data

decrypted_data

public_key

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

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_NO_PADDING.

Return Values

Returns true on success or false on failure.

Changelog

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

See Also

  • openssl_private_encrypt
  • openssl_private_decrypt