php - PHP:无法解密 AES 128 CBC
问题描述
我有一个以 AES 128 + 零填充 + IV 和 CBC 模式加密的字符串。
- 关于零填充,如果长度不是128bit,加密会填充剩余部分0x00,达到128bit。
- 只有将IV值和IV值确认设置为相同的值,才能成功指定IV值
- 默认值全是 0x00
- 所以密码示例 = ** 位 + ** 零
我已经尝试了太多东西来解密这个,比如
function decrypt($data, $key)
{
$encryption_key = base64_decode($key);
list($encrypted_data, $iv) = array_pad(explode('::', base64_decode($data), 2), 2, null);
return openssl_decrypt($encrypted_data, 'aes-128-cbc', $encryption_key, 0, $iv);
}
我尝试了太多其他的东西,没有任何效果,我做错了什么?我使用“示例”作为关键。
解决方案
推荐阅读
- go - 如何将基本模板扩展到其他模板
- android - Kotlin 和 Firebase 读写数据
- python - 如何在熊猫中循环 groupby 函数?
- python - 'ß' 字符在 SQL Server 和 Python 中大写不同
- mysql - 使用 Node.js 在 mariaDB 中插入 BLOB 数据
- c# - 我需要下载什么才能在 C# 中使用 SQLite?
- opengl - 在着色器问题中未正确选择纹理槽
- node.js - 反应 | 节点应用 | Docker 部署
- java - 构造函数完成后,trie 实现对象为 null
- python - 如何使用用户输入的行数打印图案