ChaCha20-Poly1305 是一种常用的认证加密(AEAD)算法组合:用 ChaCha20 做数据加密(保密性),用 Poly1305 做消息认证(完整性与防篡改)。它常用于 TLS/HTTPS、SSH、VPN、QUIC 等协议中,尤其在缺少 AES 硬件加速的设备上表现良好。
(注:在不同实现/标准中也可能看到写作 ChaCha20–Poly1305。)
/ˌtʃɑːtʃɑː ˈtwenti pəˌliː ˌθɜːrˈtiːn oʊ faɪv/
We use ChaCha20-Poly1305 to encrypt messages.
我们使用 ChaCha20-Poly1305 来加密消息。
TLS 1.3 allows ChaCha20-Poly1305 as an AEAD cipher suite, providing both confidentiality and integrity with a single primitive.
TLS 1.3 允许使用 ChaCha20-Poly1305 作为 AEAD 加密套件,用一种原语同时提供机密性与完整性。
ChaCha20 来自 Daniel J. Bernstein 设计的流密码家族(与 Salsa20 同源,“ChaCha”可理解为对 Salsa20 轮函数的一种变体/改进版本);Poly1305 也是 Bernstein 提出的高速消息认证码(MAC)。二者组合成 AEAD 方案后,被 IETF 标准化并广泛部署(常见于相关 RFC 文档中)。