($algorithm);
$iv = openssl_random_pseudo_bytes($ivlen);
$password = openssl_encrypt($data, $algorithm..., $algorithm, $key, 0, $iv), PHP_EOL;
// 测试对称加密
// Warning: openssl_encrypt(): Using an empty Initialization...$algorithm = 'aes-128-gcm';
$password = openssl_encrypt($data, $algorithm, $key, 0, $iv, $tags);
echo..., $iv, $tags), PHP_EOL;
// 测试对称加密
这个 $tags 是一个引用类型的参数,也就是加密后会赋值到这个变量中,解密的时候也需要相同的这个验证标签。...从加密解密的过程来看,如果我们要将这些信息保存在数据库中,或者进行传输解密时,我们至少要保存或传输这几个字段,加密使用的 iv ,加密使用的算法,以及 AEAD 模式的话加密所使用的验证标签,否则数据无法解密