(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
openssl_public_encrypt — Encrypts data with public key
$data,&$encrypted_data,$public_key,$padding = OPENSSL_PKCS1_PADDING,$digest_algo = nullopenssl_public_encrypt() encrypts data with public public_key and stores the result into encrypted_data. Encrypted data can be decrypted via openssl_private_decrypt().
This function can be used e.g. to encrypt message which can be then read only by owner of the private key. It can be also used to store secure data in database.
dataencrypted_dataThis will hold the result of the encryption.
public_keypublic_key must be the public key that corresponds to the private key that will be used to decrypt the data.
paddingpadding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.
digest_algonull to use the default algorithm.| Version | Description |
|---|---|
| 8.5.0 | The optional parameter digest_algo has been added. |
| 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. |