ChaCha20-Poly1305
Что такое ChaCha20-Poly1305?
ChaCha20-Poly1305AEAD-конструкция, объединяющая поточный шифр ChaCha20 и одноразовый аутентификатор Poly1305; стандартизована в RFC 8439 для TLS 1.3 и WireGuard.
ChaCha20-Poly1305 — AEAD-шифр, описанный в RFC 8439 (ранее RFC 7539). ChaCha20 — поточный ARX-шифр с 256-битным ключом, спроектированный Дэниелом Бернштейном; он использует 96-битный nonce и 32-битный счётчик, выдавая 512-битный блок гаммы за вызов. Poly1305 — 128-битный одноразовый MAC по шифротексту и присоединённым данным, ключ для которого берётся из первого блока гаммы ChaCha20. Связка работает в постоянном времени и быстра в программных реализациях без AES-NI, поэтому она является штатным запасным шифром TLS 1.3, QUIC, SSH, OpenVPN и WireGuard. Как и AES-GCM, она катастрофически разрушается при повторе nonce.
● Примеры
- 01
Шифр-набор TLS 1.3 TLS_CHACHA20_POLY1305_SHA256.
- 02
Туннельные кадры WireGuard шифруются ChaCha20-Poly1305.
● Частые вопросы
Что такое ChaCha20-Poly1305?
AEAD-конструкция, объединяющая поточный шифр ChaCha20 и одноразовый аутентификатор Poly1305; стандартизована в RFC 8439 для TLS 1.3 и WireGuard. Относится к категории Криптография в кибербезопасности.
Что означает ChaCha20-Poly1305?
AEAD-конструкция, объединяющая поточный шифр ChaCha20 и одноразовый аутентификатор Poly1305; стандартизована в RFC 8439 для TLS 1.3 и WireGuard.
Как работает ChaCha20-Poly1305?
ChaCha20-Poly1305 — AEAD-шифр, описанный в RFC 8439 (ранее RFC 7539). ChaCha20 — поточный ARX-шифр с 256-битным ключом, спроектированный Дэниелом Бернштейном; он использует 96-битный nonce и 32-битный счётчик, выдавая 512-битный блок гаммы за вызов. Poly1305 — 128-битный одноразовый MAC по шифротексту и присоединённым данным, ключ для которого берётся из первого блока гаммы ChaCha20. Связка работает в постоянном времени и быстра в программных реализациях без AES-NI, поэтому она является штатным запасным шифром TLS 1.3, QUIC, SSH, OpenVPN и WireGuard. Как и AES-GCM, она катастрофически разрушается при повторе nonce.
Как защититься от ChaCha20-Poly1305?
Защита от ChaCha20-Poly1305 обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия ChaCha20-Poly1305?
Распространённые альтернативные названия: ChaCha20/Poly1305, RFC 8439, ChaPoly.
● Связанные термины
- cryptography№ 023
AES-GCM
Режим аутентифицированного шифрования, объединяющий AES в режиме счётчика с тегом аутентификации на основе GHASH, обеспечивая конфиденциальность и целостность за один проход.
- cryptography№ 1109
Поточный шифр
Симметричный шифр, шифрующий данные побитно или побайтно через XOR с псевдослучайной ключевой последовательностью, выработанной из ключа и nonce.
- network-security№ 1159
TLS (Transport Layer Security)
Стандартизованный IETF криптографический протокол, обеспечивающий конфиденциальность, целостность и аутентификацию трафика между двумя сетевыми приложениями.
- network-security№ 1244
WireGuard
Современный минималистичный VPN-протокол с фиксированным набором актуальных криптопримитивов, работающий как часть ядра Linux.
- cryptography№ 258
Curve25519
Эллиптическая кривая Монтгомери, разработанная Дэниелом Бернштейном; применяется в функции Diffie-Hellman X25519 (RFC 7748) с уровнем безопасности ~128 бит.