功能说明
File Encryptor 用 AES-256-GCM 认证加密为任意文件上锁,全部在你的浏览器中完成。你设定一个密码;工具用 PBKDF2-SHA256(100,000 次迭代)和一个新生成的 16 字节随机盐从密码派生出 256 位密钥,再用随机的 12 字节 IV 封装文件。输出文件的结构是 salt (16 B) + IV (12 B) + ciphertext + GCM tag (16 B) - 恰好比输入大 44 字节。解密则反转这一过程:读取盐和 IV,从你的密码重新派生密钥,并且先验证 GCM 认证标签,然后才释放哪怕一个字节的明文。100% 客户端 - 文件和密码永远不会离开你的机器。
使用方法
- 用切换开关选择加密(Encrypt)或解密(Decrypt)。
- 把文件拖进放置区(或点击浏览)。任何文件类型都可以。
- 输入密码。用眼睛按钮显示或隐藏它。
- 点击 Encrypt file / Decrypt file。结果自动下载,并对比原始与输出的大小,让你看到那 44 字节的开销。
示例
加密一份报告:
invoice.pdf(218.4 KB)+ 密码 correct horse battery staple → invoice.pdf.enc(218.5 KB,+44 B)
再解密回来:
invoice.pdf.enc + 同一个密码 → invoice.pdf,与原始文件逐字节一致
错误密码:
invoice.pdf.enc + 任何其他密码 → Decryption failed: wrong password or corrupted file. - GCM 标签校验失败,不写出任何内容。
补充说明
- 零服务器接触: 一切都通过浏览器的 Web Crypto API 运行。不上传、无日志、无账户。断网之后工具照样可用。
- 为什么选 AES-256-GCM? 它是一种认证密码:16 字节的标签证明文件在加密之后未被改动。篡改任何一个字节 - 密文、IV 或盐 - 都会让解密大声失败,而不是返回损坏的数据。
- 为什么用 100k 次迭代的 PBKDF2? 密钥拉伸让每一次密码猜测都代价高昂,因此对窃取的
.enc文件按短密码暴力破解,比直接尝试原始密钥慢得多。 - 密码强度就是全部的安全模型。 没有密钥恢复、没有托管、没有重置。忘记密码,文件就无法找回 - 这是设计使然。
- 同一个文件加密两次,每次输出都不同,因为盐和 IV 在每次加密时都全新随机。
- 相关工具: Password Generator(选一个强密码)、Password Strength Analyser(检查一个)、
HashHashA one-way function that maps data of any size to a fixed-length digest. Same input, same digest; any change, different digest; not reversible.
Generator(校验和)。