CHACHA20 加解密工具
高性能流加密算法,支持 Poly1305。
密钥 (Key)
偏移量(IV/Nonce)
输入内容
输出结果
什么是 CHACHA20 加密?
ChaCha20 是一种由 Daniel J. Bernstein 设计的高性能流加密算法。它比 AES 在软件实现上更快且更安全,特别是在没有硬件加速的设备(如手机)上。XChaCha20 是其变体,支持更长的 IV/Nonce 以防止碰撞。Poly1305 是一种消息认证码 (MAC),与 ChaCha20 结合可提供带认证的加密 (AEAD)。
核心价值
- 软件实现性能极高
- 抗侧信道攻击能力强
- 支持 256 位安全强度
- 现代互联网标准 (RFC 7539)
算法变体
- ChaCha20 (12字节 IV/Nonce)
- XChaCha20 (24字节 IV/Nonce)
- Poly1305 (带认证数据)
应用场景
- 移动端应用加解密
- TLS 1.3 安全传输
- WireGuard VPN 协议
- 磁盘加密存储
技术特性
- 流加密算法
- 无需填充 (No Padding)
- 支持随机访问加密流中的任意位置
🚀 使用指南
- 密钥:必须为 32 字节 (256 位)
- IV/Nonce:ChaCha20 系列为 12 字节,XChaCha20 系列为 24 字节
- AAD:仅用于 *-Poly1305 算法,用于认证但不加密
- TAG:解密 *-Poly1305 加密的数据时必须提供
- 重要:相同的 (密钥, IV/Nonce) 对不能重复使用!
💡 常见问题
为什么要用 XChaCha20?
XChaCha20 将 IV/Nonce 长度从 96 位扩展到 192 位,允许随机生成 IV/Nonce 而无需担心重复导致的密钥流泄露。
Poly1305 的作用是什么?
它确保密文在传输过程中没有被篡改。如果数据被改动,解密时会验证失败。