Криптография без лишней сложности

AEAD и ChaCha20-Poly1305

AEAD защищает конфиденциальность и целостность шифротекста и связанных незашифрованных данных. ChaCha20-Poly1305 — конструкция AEAD из RFC 8439. [1]

Проверено 2 первичных источника или источника первой стороны Автор — SealTask

Главное

  • AEAD одновременно шифрует содержимое и проверяет его целостность.
  • Связанные данные аутентифицируются, но остаются незашифрованными.
  • ChaCha20-Poly1305 требует уникального nonce для каждого сообщения под одним ключом.
  • Успешная проверка тега не подтверждает безопасность конечного устройства.

Определение и область

AEAD возвращает шифротекст и тег аутентификации, позволяя получателю обнаружить изменение содержимого. ChaCha20-Poly1305 из RFC 8439 сочетает потоковый шифр ChaCha20 с одноразовым аутентификатором Poly1305. Расшифрованный текст должен использоваться только после успешной проверки тега. [1]

Граница безопасности

Associated data позволяет включить в проверку заголовки, версию схемы или идентификатор назначения, не скрывая их. Получатель обязан представить те же связанные данные. Для каждого ключа nonce должен быть уникален; повтор может раскрыть сведения о сообщениях и разрушить гарантии целостности. [1]

Ограничения и оценка

AEAD не скрывает длину сообщения и не определяет управление ключами, распределение nonce или доверие к отправителю. Оно также не защищает открытый текст после расшифровки на заражённом устройстве. Эти свойства должен обеспечивать окружающий протокол. [1]

Частые вопросы.

Что означает AEAD и ChaCha20-Poly1305?

AEAD защищает конфиденциальность и целостность шифротекста и связанных незашифрованных данных. ChaCha20-Poly1305 — конструкция AEAD из RFC 8439. [1]

Чего не гарантирует AEAD и ChaCha20-Poly1305?

AEAD не скрывает длину сообщения и не определяет управление ключами, распределение nonce или доверие к отправителю. Оно также не защищает открытый текст после расшифровки на заражённом устройстве. Эти свойства должен обеспечивать окружающий протокол. [1]

Как SealTask рассматривает AEAD и ChaCha20-Poly1305?

SealTask шифрует поля содержимого с помощью ChaCha20-Poly1305 и включает в associated data версию формата и назначение поля. Клиент проверяет тег до разбора открытого текста, а правила формирования nonce и ротации ключей заданы форматом зашифрованных объектов. [2]

Первичные источники

Определения опираются прежде всего на органы стандартизации, государственные рекомендации и архитектуру SealTask из первых рук. Ссылки открывают полный источник.

  1. 01
    RFC 8439: ChaCha20 and Poly1305 for IETF Protocols Первичный источник или источник первой стороны для определения, требований протокола, границы безопасности либо нормативного контекста.
  2. 02
    SealTask security architecture Первичный источник или источник первой стороны для определения, требований протокола, границы безопасности либо нормативного контекста.
Открыть весь центр знаний