16
aesencrypt
aesencrypt
SYNOPSIS
aesencrypt($s, $key)
DESCRIPTION
aesencrypt returns the AES-256-CBC encryption of the string $s with the key $key.
A random initialization vector is generated and prepended to the encrypted string.
If the string cannot be encrypted, aesencrypt returns false.
EXAMPLE
To encrypt a character string:
php > require 'library/aes.php';
php > $secretkey=openssl_random_pseudo_bytes(32);
php > $url='https://www.izend.org';
php > $s=aesencrypt($url, $secretkey);
php > echo strlen($s);
60
CODE
- function aesencrypt($s, $key) {
- $cipher = 'aes-256-cbc';
- $iv_size = openssl_cipher_iv_length($cipher);
- $iv = random_bytes($iv_size);
- $crypto = @openssl_encrypt($s, $cipher, $key, 0, $iv);
- return $crypto ? $iv . $crypto : false;
- }
aesdecrypt
SYNOPSIS
aesdecrypt($s, $key)
DESCRIPTION
aesdecrypt returns the decryption of the AES-256-CBC encrypted string $s with the key $key.
The initialization vector is extracted from the beginning of the encrypted string.
If the string cannot be decrypted, aesdecrypt returns false.
EXAMPLE
To decrypt an encrypted string:
php > require 'library/aes.php';
php > $secretkey=openssl_random_pseudo_bytes(32);
php > $url='https://www.izend.org';
php > $s=aesencrypt($url, $secretkey);
php > echo aesdecrypt($s, $secretkey);
https://www.izend.org
CODE
- function aesdecrypt($s, $key) {
- $cipher = 'aes-256-cbc';
- $iv_size = openssl_cipher_iv_length($cipher);
- if (strlen($s) < $iv_size)
- return false;
- $iv = substr($s, 0, $iv_size);
Comments