AES

AES 加密解密

使用 AES-GCM 对文本加密与解密

密码安全
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 Evan 维护•最近更新:2026年9月30日
选项模式
输入

先选加密或解密,填文本和密码直接运行;参数说明与错误对照可在高级模式查看。

输出
加密载荷—
🔒 本地处理 · 不保存明文或密码草稿
页面阅读模式

完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。

工具说明

使用 AES-256-GCM 加密 UTF-8 文本,密钥由文本密码经 PBKDF2-SHA256 派生。每次加密使用 Web Crypto 生成新的 16 字节盐和 12 字节 IV,输出 Base64(salt).Base64(iv).Base64(ciphertext + 16 字节认证标签),不使用额外认证数据。解密需要相同密码和迭代次数,载荷本身不包含次数。该工具只读取这一兼容格式,不能解密所有 AES 密文;明文与密码不上传,也不保存草稿。

生产可用片段

解密由独立 Node crypto 生成的固定样例

text

模式:解密
密码:Toolskit-2026
PBKDF2 迭代次数:150000
载荷:
ABEiM0RVZneImaq7zN3u/w==.AAECAwQFBgcICQoL.LANSgCuzJveE6mqH257JcfY+E0SrELE71yz8a8mXTcCMz8qC8lhMBwOY3+7jbgXkyEjnnJJR
预期明文:ToolsKit AES interoperability example.
固定盐和 IV 仅用于此公开样例。

常见问题

salt.iv.ciphertext 中具体包含什么?

三个以点分隔的标准 Base64 段,需要时包含 = 填充。盐为 16 字节、IV 为 12 字节,最后一段是密文后接 16 字节 GCM 认证标签。它不是 Base64url、OpenSSL salted 格式、CBC 或通用 AES 文件容器。

解密外部输出时哪些参数必须一致?

需要 AES-256-GCM、附在密文末尾的 128 位认证标签、使用 HMAC-SHA256 的 PBKDF2、相同 UTF-8 密码/盐/迭代次数、12 字节 IV,并且没有 AAD。本工具还要求 16 字节盐与三段 Base64 封装;密码框不接受直接指定 AES 原始密钥。

迭代次数如何处理?

默认 150000,界面接受 10000–600000 的整数,小数和范围外数值会报错。载荷不包含次数,需与测试参数一起另行记录;这些界面限制不是通用于所有生产系统的安全建议。

相同文本和密码为什么每次密文不同?

每次加密都会重新生成随机盐和 IV,因此结果不同是正常的。公开解密样例中的固定值只是为了复现结果,不能复用它的 IV 和盐去加密新数据。

认证失败或无法读取文本的原因是什么?

密码错误、迭代次数不同、密文或标签被改动,以及参数不一致,都可能导致 GCM 认证失败。通过认证的字节也必须是有效 UTF-8,才能被此文本工具显示。工具无法找回遗忘密码或推断缺失参数。

明文和密码会保留吗?

不会上传,也不保存到 localStorage 草稿;打开页面会删除旧版同时保存明文和密码的草稿。编辑或清空输入会使待完成结果失效。PBKDF2 能提高猜测成本,但不能把弱密码变成高熵秘密。

继续浏览