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 →