浏览器端文件加密

文件不上传服务器,全程浏览器本地处理。AES-256-GCM 加密,选文件 → 输密码 → 下载加密文件。

选择文件

拖拽文件到这里
或点击选择,支持任意文件类型

安全说明

零上传

文件全程在浏览器处理,不经过任何服务器。你可以断网后使用。

AES-256-GCM

军事级加密标准。密码通过 PBKDF2 派生密钥,10万次迭代,暴力破解不现实。

完整性校验

GCM 模式自带认证标签,篡改过的文件解密时会直接报错,不会给你一个损坏的文件。

开源可审计

所有代码公开在 GitHub,用的是浏览器原生 Web Crypto API,没有第三方加密库。

选择加密文件

拖拽 .enc 文件到这里
或点击选择

常见问题

忘记密码怎么办?
没有任何办法恢复。密码是唯一的密钥来源,我们不存储任何信息。这也是安全的代价。
.enc 文件能在其他工具打开吗?
不能。这是本工具的自定义格式(包含 salt、IV 和密文)。只能用本页面解密。
加密后文件会变大吗?
会增加约 24 字节头部 + 每 16MB 块增加 28 字节(12字节 IV + 16字节认证标签)。1GB 文件大约增加 1.8KB,可以忽略。
支持多大的文件?
采用 16MB 分块加密,内存占用恒定约 32MB,理论上支持任意大小。实测几个 GB 没问题,速度取决于你的设备性能。

加密流程

1
生成随机盐值(Salt)

16 字节的随机数据。即使两次用相同密码加密同一个文件,产生的密文也完全不同。

2
密码派生密钥(PBKDF2)

把你的密码和 Salt 一起,经过 100,000 次 SHA-256 哈希迭代,生成 256 位的 AES 密钥。迭代次数越多,暴力破解越慢。

3
生成初始化向量(IV)

12 字节的随机数据。GCM 模式要求每次加密使用不同的 IV,否则安全性会被破坏。

4
AES-256-GCM 加密

用密钥和 IV 对文件内容进行加密。GCM 模式同时生成 16 字节的认证标签(Auth Tag),用于验证密文是否被篡改。

5
分块打包输出

文件被分成 16MB 的块,每块独立加密。格式:[Magic "ENC2"] [Salt 16B] [ChunkSize 4B] + 每块 [IV 12B] [密文+AuthTag]。内存占用恒定,支持 GB 级大文件。

暴力破解要多久

密码类型 示例 密钥空间 暴力破解时间
6位纯数字 123456 10⁶ 约 10 秒
8位小写字母 password 26⁸ ≈ 2×10¹¹ 约 6 年
10位混合 P@ssw0rd!2 95¹⁰ ≈ 6×10¹⁹ 约 190 亿年
16位混合 My$ecure_Pass!16 95¹⁶ ≈ 4×10³¹ 宇宙热寂也破不完
假设攻击者有 10 万个 GPU 并行,每秒尝试 10 亿次 PBKDF2。实际上 PBKDF2 的 10 万次迭代让每次尝试都很慢,真实速度远低于此。

更专业的工具推荐

浏览器加密适合偶尔用一下。如果你经常需要加密文件上传网盘,这些桌面工具更合适:

Cryptomator

开源,跨平台。创建一个加密保险库,里面的文件自动加密,同步到网盘后别人看到的全是乱码。支持 Dropbox、OneDrive、Google Drive。

推荐日常使用
rclone crypt

命令行工具,支持 40+ 种云存储。可以把任何网盘变成加密网盘,上传时自动加密,下载时自动解密。适合技术用户。

适合技术用户
VeraCrypt

创建加密虚拟磁盘,挂载后像普通硬盘一样使用。支持隐藏卷(plausible deniability)。适合高安全需求场景。

高安全需求