AES 加密解密 🔒 本地处理
使用 AES-GCM 算法加密解密文本,PBKDF2 密钥派生,随机 IV,数据不离开您的浏览器
盐值(16B) + IV(12B) + 密文 + 认证标签(16B)
。 所有加密操作均在浏览器本地完成,数据不会上传到服务器。
AES 加密解密完整使用指南
在浏览器本地用 Web Crypto 做文本 AES-GCM 加解密:口令经 PBKDF2(SHA-256,约 100000 次迭代)派生密钥,随机盐与 IV,密文可输出 Base64 或 Hex。可选 AES-128 / AES-256(#keyLength)。界面含明文/密文输入 #input、口令 #password、显示切换、输出格式 #outputFormat、处理/清空/复制。模式在加密与解密间切换(updateMode)。全程 crypto.subtle,数据不上传。适合敏感草稿本地保护演示,不是企业级密钥托管或文件盘加密产品。
算法管线(与脚本一致)
deriveKey:importKey 口令为 PBKDF2 材料 → deriveKey 得 AES-GCM 密钥。- 加密:生成 salt/IV → encrypt → 打包输出(格式含 salt、iv、密文,具体拼接以脚本为准)。
- 解密:按格式解码 Base64/Hex → 拆分参数 → decrypt → UTF-8 明文。
- 工具函数:
arrayBufferToBase64/base64ToArrayBuffer、arrayBufferToHex/hexToArrayBuffer。 - 错误显示在
#error:口令错、格式损毁、非安全上下文等。
安全使用步骤
- 仅在 HTTPS 或 localhost 等安全上下文使用,确保 subtle 可用。
- 口令用长随机句,勿用生日;口令勿与密文一起发送。
- 加密后复制密文单独保存;忘记口令无法找回(设计如此)。
- 解密时格式(Base64/Hex)与密钥长度须与加密时一致。
- 公共电脑用完清空输入输出与剪贴板。
边界与误区
- AES-GCM 提供机密性与完整性,但不替代传输层 TLS 的完整方案设计。
- 弱口令会被暴力猜测;工具无法强迫你用强口令。
- 非本工具产出的任意密文可能格式不兼容。
- 大文本可能较慢;超大文件请用专用工具。
- 页面若被恶意扩展注入则本地也不再可信,请注意浏览器环境。
常见问题
解密失败最常见原因?
口令错误、输出格式选错、密文被截断或多了空格换行。
128 和 256 怎么选?
一般默认 256;需与协作方约定一致,否则无法互通。
和「文本加密」其他页区别?
本页明确 AES-GCM + PBKDF2 管线;其他页可能算法或场景不同,不要混用密文。
能加密文件吗?
主界面面向文本;二进制文件请先明确是否支持或改用文件类工具。
协作约定模板
与同事交换密文时书面约定:算法 AES-GCM、密钥长度、输出 Base64 或 Hex、口令传递渠道(线下/密码管理器),绝不要把口令写在同一封邮件正文。轮换口令后旧密文需重新加密归档。
口令与输出保管
口令只用密码管理器生成与粘贴,避免浏览器记住在公共配置文件。密文可存网盘,口令另通道。Base64 与 Hex 不要混用同一条密文。复制后如需二次分发,确认未把明文留在 #input。清空按钮应同时清输出,防止肩窥。PBKDF2 迭代约十万次会带来可感知延迟,属正常换取慢哈希的成本。
失败排查清单
1)模式是否在解密;2)密钥长度是否一致;3)格式 Base64/Hex 是否一致;4)密文是否完整;5)是否在安全上下文。扩展程序劫持页面时不要处理真秘密。本工具不上传,但屏幕共享会暴露输入,远程协助时切换窗口。
与随机密钥页配合
可用随机密钥页生成高熵口令再粘贴到本页密码框。文件哈希页用于完整性校验,不替代加密。概念分离:加密藏内容,哈希验是否被改,随机密钥提供材料。