使用步骤
- 选择「加密」,再选择文本或文件。
- 输入内容,并输入两次密码。
- 点击「加密」,复制密文或保存 .enc 文件。
- 需要查看时选择「解密」,粘贴密文或选择文件,输入同一个密码。
参数说明
- 算法
- AES-256 GCM 模式,每次使用随机盐值和随机数。密钥由密码经 PBKDF2-SHA256 迭代 60 万次派生,可以大幅减慢暴力猜测。
- 文件
- 原文件名会一起加密保存,解密后恢复原名。加密后的文件以 .enc 结尾。
加密后的数据里有什么
输出是一个布局固定的短二进制结构:
| 部分 | 大小 | 作用 |
|---|---|---|
| 版本 | 1 字节 | 目前是 1 |
| 盐(Salt) | 16 字节 | 随机生成,让每次的密钥都不一样 |
| Nonce | 12 字节 | 随机生成,绝不会与同一个密钥重复使用 |
| 密文 | 与输入相同 | 加密后的内容 |
| 认证标签 | 16 字节 | 用来发现密码错误或任何改动 |
这样额外增加 45 字节。文本以 Base64 显示,所以像 “hello” 这样 5 字节的消息会产生 50 字节,也就是 68 个字符。文件则按字节原样保存,文件名先存放在加密部分的最前面(2 字节的长度,后面跟着 UTF-8 编码的名称),所以 .enc 文件会比原文件稍大一点。
由于盐和 Nonce 是随机的,用同一个密码对同一段文字加密两次,得到的结果不同,但两者都能正确解密。密钥由 PBKDF2 配合 HMAC-SHA256 派生,迭代 600,000 次,这是 OWASP 密码存储指南给这个函数的数值。
常见问题
忘记密码怎么办?
无法恢复。没有后门,任何人都无法重置密码。
密码要多强?
长度最重要。四个以上随机词语组成的口令,或 12 位以上随机字符,都很难被猜中,而且每次猜测都要经过缓慢的密钥派生。
能用其他软件解密吗?
使用的是标准的 AES-GCM 与 PBKDF2,但数据排列(版本、盐值、随机数、密文)是本工具自定义的,最方便的是在这里解密。
会上传到服务器吗?
不会。加密使用浏览器内置的 Web Crypto,文字和密码都不会离开你的设备。
隐私说明
本工具完全在浏览器中运行,文件和文本都在你的设备上处理,不会上传到我们的服务器。