openssl_encrypt

PHP 5 >= 5.3.0, PHP 7, PHP 8
openssl_encrypt - Encrypts data
Manual
Code Examples

openssl_encrypt(
     string$data,
     string$cipher_algo,
     string$passphrase,
     [int$options = 0],
     [string$iv = ""],
     [stringtag = null],
     [string$aad = ""],
     [int$tag_length = 16]
): string|false

Encrypts given data with given method and key, returns a raw or base64 encoded string

Parameters

data

The plaintext message data to be encrypted.

cipher_algo

The cipher method. For a list of available cipher methods, use openssl_get_cipher_methods.

passphrase

The passphrase. If the passphrase is shorter than expected, it is silently padded with NUL characters; if the passphrase is longer than expected, it is silently truncated.

options

options is a bitwise disjunction of the flags OPENSSL_RAW_DATA and OPENSSL_ZERO_PADDING.

iv

A non-NULL Initialization Vector.

tag

The authentication tag passed by reference when using AEAD cipher mode (GCM or CCM).

aad

Additional authenticated data.

tag_length

The length of the authentication tag. Its value can be between 4 and 16 for GCM mode.

Return Values

Returns the encrypted string on success or false on failure.

Exceptions and Errors

Emits an E_WARNING level error if an unknown cipher algorithm is passed in via the cipher_algo parameter.

Emits an E_WARNING level error if an empty value is passed in via the iv parameter.

Changelog

Version Description
7.1.0 The tag, aad and tag_length parameters were added.

Related Functions

Example of openssl_encrypt

Show all examples for openssl_encrypt

PHP Version:


Function openssl_encrypt:

OpenSSL Functions

Most used PHP functions