CHACHA20 加解密工具
高性能流加密算法,支持 Poly1305。
加密
解密
ChaCha20
XChaCha20
ChaCha20-Poly1305
XChaCha20-Poly1305
密钥 (Key)
Hex
UTF-8
Base64
偏移量(IV/Nonce)
Hex
UTF-8
Base64
输入内容
UTF-8
Hex
Base64
输出结果
Base64
Hex
UTF-8

什么是 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 的作用是什么?
它确保密文在传输过程中没有被篡改。如果数据被改动,解密时会验证失败。