【笔记】PHP实现AES加解密

前言

PHP实现AES加解密

下载依赖

Linux

Debian
1
apt install php-openssl

AES加密

1
base64_encode(openssl_encrypt($data, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv));

加密选项

AES-256-CBC
AES-256-ECB
AES-256-CFB
AES-256-OFB

填充选项

OPENSSL_RAW_DATA:指定输出或输入数据为原始二进制数据。如果未设置此选项,默认输出为Base64编码的字符串
OPENSSL_ZERO_PADDING:启用零填充(Zero Padding)。在加密时,如果数据长度不是加密块的整数倍,会用零字节填充到合适长度
OPENSSL_NO_PADDING:禁用填充。这意味着数据长度必须是加密块的整数倍,否则会报错

AES解密

1
openssl_decrypt(base64_decode($data), 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv);

完成

参考文献

CSDN——繁依Fanyi