本篇文章给大家带来的内容是关于PHP中AES加密文件的解析(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
AES 简介
高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥。
对称加密
加密和解密用到的密钥是相同的,这种加密方式加密速度非常快,适合经常发送数据的场合。缺点是密钥的传输比较麻烦。秘钥容易泄露。
非对称加密
加密和解密用的密钥是不同的,这种加密方式是用数学上的难解问题构造的,通常加密解密的速度比较慢,适合偶尔发送数据的场合。优点是密钥传输方便。常见的非对称加密算法为RSA、ECC和EIGamal。
注意:
PHP7.2删除了Mcrypt扩展,这里使用OpenSSL扩展。<?php /*
* AES 算法
*/class Aes {
private $hex_iv = '00000000000000000000000000000000';
private $key = '397e2eb61307109f6e68006ebcb62f98';
function __construct($key) {
$this->key = $key;
$this->key = hash('sha256', $this->key, true);
} /*
* 字符串加密 不写入文件
*/
public function encrypt($input)