Открыть сервис

ISO/IEC 19772

ISO/IEC 19772 — это международный стандарт, разработанный совместной технической комиссией ISO/IEC JTC 1, который определяет методы аутентифицированного шифрования (authenticated encryption, AE). Стандарт устанавливает общие требования и спецификации для криптографических механизмов, обеспечивающих одновременно конфиденциальность, целостность и аутентификацию данных. Опубликованный в 2009 году и обновлённый в 2020 году (вторая редакция), ISO/IEC 19772 является частью серии стандартов ISO/IEC 18033, посвящённых криптографическим алгоритмам, и широко используется в системах защиты информации, включая протоколы связи, хранение данных и финансовые транзакции.

История и разработка

Разработка ISO/IEC 19772 началась в 2000-х годах в ответ на растущую потребность в стандартизированных криптографических методах, объединяющих шифрование и аутентификацию. Традиционные подходы, такие как последовательное применение шифрования и кода аутентификации сообщения (MAC), были подвержены ошибкам реализации и уязвимостям, связанным с неправильной комбинацией алгоритмов. Рабочая группа ISO/IEC JTC 1/SC 27 (безопасность информации) координировала создание стандарта, опираясь на существующие научные работы, включая исследования Чарика, Линделла и Рогэвея.

Первая редакция ISO/IEC 19772 была опубликована в 2009 году. В 2020 году вышла вторая редакция, которая включила дополнительные режимы работы, уточнила требования к безопасности и исправила обнаруженные уязвимости. Стандарт гармонизирован с другими международными нормами, такими как NIST SP 800-38D (режим GCM) и ISO/IEC 18033-4 (шифрование с аутентификацией).

Основные принципы аутентифицированного шифрования

Аутентифицированное шифрование (AE) — это криптографический примитив, который одновременно обеспечивает три свойства:

  • Конфиденциальность: данные доступны только авторизованным сторонам.
  • Целостность: данные не были изменены в процессе передачи или хранения.
  • Аутентификация: подтверждение источника данных (обычно на основе общего ключа).

ISO/IEC 19772 определяет два основных подхода к AE:

  • Режимы с одношаговым шифрованием: шифрование и аутентификация выполняются одновременно в одном процессе, что повышает производительность и снижает риск ошибок.
  • Режимы с раздельным этапом: шифрование и аутентификация могут быть реализованы последовательно, но с использованием единого ключа и согласованных параметров.

Стандарт также включает понятие «ассоциированные данные» (associated data, AD) — метаданные, которые не шифруются, но аутентифицируются (например, заголовки пакетов). Это позволяет защищать целостность контекстной информации без её раскрытия.

Режимы работы, определённые в ISO/IEC 19772

Стандарт специфицирует несколько режимов аутентифицированного шифрования, каждый из которых основан на блочных шифрах (например, AES) или потоковых шифрах. Основные режимы включают:

GCM (Galois/Counter Mode)

GCM — один из наиболее распространённых режимов AE, основанный на счётчиковом режиме шифрования и умножении в поле Галуа (GF(2^128)) для аутентификации. Он обеспечивает высокую производительность за счёт параллелизации вычислений. GCM поддерживает ассоциированные данные и используется в протоколах TLS 1.2/1.3, IPsec и SSH.

CCM (Counter with CBC-MAC)

CCM комбинирует счётчиковый режим для шифрования и CBC-MAC (Cipher Block Chaining Message Authentication Code) для аутентификации. Этот режим требует двух проходов (сначала аутентификация, затем шифрование) и менее производителен, чем GCM, но обеспечивает простоту реализации. CCM определён в IEEE 802.11 (Wi-Fi) и ZigBee.

EAX (Encrypt-then-Authenticate-then-Translate)

EAX — режим, основанный на схеме Encrypt-then-MAC, где шифрование выполняется в счётчиковом режиме, а аутентификация — с помощью OMAC (One-Key CBC-MAC). EAX отличается простотой и устойчивостью к ошибкам, позволяя использовать один ключ для обоих этапов.

OCB (Offset Codebook Mode)

OCB — параллелизуемый режим, разработанный Филиппом Рогэвеем, который обеспечивает высокую скорость за счёт однопроходного шифрования и аутентификации. OCB защищён патентами (до 2020 года), что ограничило его применение в открытых стандартах. В ISO/IEC 19772 включён OCB 2.0, но в 2019 году были обнаружены уязвимости в OCB 2.0, что привело к рекомендации использовать OCB 3.0 (не включённый в стандарт).

Key Wrap (KW, KWP, TKW)

Режимы обёртывания ключей (key wrapping) предназначены для защиты криптографических ключей и ассоциированных метаданных. Они основаны на блочных шифрах (например, AES) и включают:

  • AES-KW (RFC 3394): шифрует ключ длиной до 2^32 бит.
  • AES-KWP (RFC 5649): расширенная версия с поддержкой произвольной длины.
  • TDES-KW: вариант для тройного DES.

Дополнительные режимы

Вторая редакция (2020) добавила режимы SIV (Synthetic Initialization Vector) и GCM-SIV, которые обеспечивают устойчивость к повторному использованию векторов инициализации (nonce-misuse resistance). SIV использует синтезированный вектор на основе данных, что предотвращает атаки при случайном или намеренном дублировании nonce.

Требования к безопасности

ISO/IEC 19772 устанавливает строгие критерии безопасности для всех режимов:

  • Стойкость к атакам на конфиденциальность: шифртекст не должен раскрывать информацию об открытом тексте (включая длину, если не указано иное).
  • Стойкость к атакам на целостность: любое изменение шифртекста или ассоциированных данных должно обнаруживаться с вероятностью, близкой к 1.
  • Устойчивость к атакам с выбранным открытым текстом (CPA): атакующий не должен получать преимущество при шифровании выбранных сообщений.
  • Устойчивость к атакам с выбранным шифртекстом (CCA): атакующий не должен получать информацию о ключе или открытом тексте при расшифровке произвольных шифртекстов.

Стандарт также требует, чтобы режимы были защищены от утечек по побочным каналам (например, временных атак) при условии корректной реализации.

Применение

ISO/IEC 19772 широко используется в различных областях информационной безопасности:

Сетевые протоколы

  • TLS/DTLS: GCM и CCM используются для защиты веб-трафика и VPN.
  • IPsec: GCM и CCM обеспечивают безопасность на сетевом уровне.
  • SSH: GCM поддерживается в протоколе SSH-2.

Беспроводные сети

  • IEEE 802.11 (Wi-Fi): CCM применяется в протоколе WPA2 (CCMP).
  • ZigBee: CCM используется для защиты устройств Интернета вещей (IoT).

Хранение данных

  • Дисковое шифрование: GCM и XTS (режим, не входящий в ISO/IEC 19772, но часто используемый совместно) применяются для защиты файловых систем.
  • Облачные сервисы: SIV и GCM-SIV используются для шифрования данных с возможностью дедупликации.

Финансовые технологии

  • EMV (Europay, Mastercard, Visa): CCM и GCM применяются для защиты платежных транзакций.
  • Криптовалюты: некоторые протоколы блокчейна используют AE для защиты транзакций.

Критика и ограничения

Несмотря на широкое распространение, ISO/IEC 19772 имеет ряд недостатков:

  • Сложность реализации: некоторые режимы (например, OCB) требуют тщательного управления nonce, что может привести к уязвимостям при повторном использовании.
  • Патенты: OCB 2.0 был запатентован, что ограничило его использование в открытом ПО до истечения срока действия патентов в 2020 году.
  • Уязвимости в OCB 2.0: в 2019 году исследователи обнаружили атаку на OCB 2.0, которая позволяет подделывать аутентификацию при определённых условиях. Это привело к рекомендации перехода на OCB 3.0 или другие режимы.
  • Отсутствие поддержки квантово-устойчивых алгоритмов: стандарт ориентирован на классические блочные шифры и не включает постквантовые криптографические методы.

Связь с другими стандартами

ISO/IEC 19772 тесно связан с другими международными и национальными стандартами:

  • ISO/IEC 18033-1 — общая структура криптографических алгоритмов.
  • ISO/IEC 18033-3 — блочные шифры (AES, SM4).
  • NIST SP 800-38D — рекомендации по режиму GCM (США).
  • ГОСТ Р 34.13-2015 — российский стандарт на режимы блочных шифров, включая аутентифицированное шифрование (например, режим MGM, схожий с GCM).

Будущее развитие

Рабочая группа ISO/IEC JTC 1/SC 27 продолжает работу над обновлением стандарта. Основные направления включают:

  • Интеграция постквантовых алгоритмов аутентифицированного шифрования.
  • Улучшение устойчивости к атакам с повторным использованием nonce.
  • Оптимизация для устройств с ограниченными ресурсами (IoT).
  • Учёт требований к конфиденциальности в контексте больших данных и облачных вычислений.

Источники

  • ISO/IEC 19772:2020 — Information technology — Security techniques — Authenticated encryption.
  • Rogaway, P. (2002). «Authenticated-Encryption with Associated-Data».
  • NIST Special Publication 800-38D — Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC.
  • Bellare, M., & Namprempre, C. (2000). «Authenticated Encryption: Relations among Notions and Analysis of the Generic Composition Paradigm».
  • Krovetz, T., & Rogaway, P. (2011). «The Software Performance of Authenticated-Encryption Modes».

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →