ISO/IEC 18033-2¶
ISO/IEC 18033-2 — это международный стандарт, определяющий алгоритмы и методы асимметричного шифрования. Он является частью семейства стандартов ISO/IEC 18033, посвящённых криптографическим алгоритмам защиты данных. Стандарт устанавливает единые требования к алгоритмам шифрования с открытым ключом, обеспечивая их совместимость, безопасность и эффективность в различных информационных системах. В отличие от симметричного шифрования (ISO/IEC 18033-3), асимметричные схемы используют пару ключей: открытый для шифрования и закрытый для расшифрования.
¶История
Разработка стандарта ISO/IEC 18033-2 началась в конце 1990-х годов в рамках деятельности подкомитета SC 27 (IT Security Techniques) объединённого технического комитета ISO/IEC JTC 1. Первая редакция была опубликована в 2006 году. Основной целью создания стандарта было преодоление фрагментации рынка криптографических продуктов, где различные производители использовали собственные, часто несовместимые реализации асимметричного шифрования. Стандарт опирался на результаты многолетних исследований в области криптографии, включая работы, посвящённые криптосистеме Эль-Гамаля и схеме RSA. В 2010 году была выпущена вторая редакция, которая уточнила требования к стойкости алгоритмов и добавила новые механизмы, в частности, схемы на основе эллиптических кривых. Третья редакция, опубликованная в 2019 году, включила в себя алгоритмы, устойчивые к атакам с использованием квантовых компьютеров (постквантовая криптография), а также уточнила процедуры проверки корректности реализации.
¶Классификация алгоритмов
Стандарт ISO/IEC 18033-2 классифицирует алгоритмы асимметричного шифрования по нескольким критериям, включая математическую основу, тип схемы и уровень безопасности.
¶По математической основе
- Алгоритмы на основе факторизации целых чисел: Классическим примером является RSA (Rivest–Shamir–Adleman). Безопасность таких схем основана на сложности разложения большого составного числа на простые множители. Стандарт включает RSA-OAEP (Optimal Asymmetric Encryption Padding) как рекомендуемую схему.
- Алгоритмы на основе дискретного логарифмирования: К этой группе относится криптосистема Эль-Гамаля (ElGamal). Безопасность основана на сложности вычисления дискретного логарифма в конечной группе (например, в мультипликативной группе поля простого числа). Стандарт определяет несколько вариантов Эль-Гамаля, включая схемы с дополнительным хэшированием.
- Алгоритмы на основе эллиптических кривых (ECC): Схемы, такие как ECIES (Elliptic Curve Integrated Encryption Scheme), используют алгебраическую структуру эллиптических кривых. Они обеспечивают эквивалентный уровень безопасности при меньшей длине ключа по сравнению с RSA или Эль-Гамалем, что делает их предпочтительными для мобильных и встраиваемых систем.
- Постквантовые алгоритмы: В третьей редакции стандарта были включены схемы, устойчивые к атакам с использованием квантовых компьютеров. Среди них — алгоритмы на основе решёток (например, NTRUEncrypt) и кодов (например, McEliece). Эти алгоритмы пока не получили широкого распространения, но их включение в стандарт отражает тенденцию к подготовке к постквантовой эпохе.
¶По типу схемы
- Схемы с прямым шифрованием: Открытый текст шифруется непосредственно с помощью открытого ключа. Примеры: RSA-OAEP, Эль-Гамаль.
- Гибридные схемы: Асимметричное шифрование используется только для защиты сеансового ключа, который затем применяется для симметричного шифрования данных. Это наиболее распространённый подход на практике, так как он сочетает удобство асимметричного шифрования с высокой скоростью симметричного. Стандарт включает такие схемы, как ECIES и RSA-KEM (Key Encapsulation Mechanism).
¶Устройство и характеристики
Каждый алгоритм, включённый в стандарт, должен удовлетворять строгим требованиям к безопасности, производительности и формату данных.
¶Основные компоненты
- Генерация ключей: Процесс создания пары (открытый ключ, закрытый ключ). Стандарт требует, чтобы генерация была случайной и непредсказуемой, а также чтобы ключи имели достаточную длину (например, для RSA — не менее 2048 бит, для ECC — не менее 256 бит).
- Процедура шифрования: Преобразование открытого текста в шифротекст с использованием открытого ключа. Стандарт определяет точные математические операции и форматы данных (например, дополнение OAEP для RSA).
- Процедура расшифрования: Восстановление открытого текста из шифротекста с использованием закрытого ключа. Должна быть однозначной и обратимой.
- Дополнение (Padding): Для большинства алгоритмов требуется добавление случайных данных к открытому тексту перед шифрованием, чтобы предотвратить атаки по выбранному шифротексту. Стандарт определяет конкретные схемы дополнения, такие как OAEP и OAEP+.
- Хэширование: Многие схемы используют криптографические хэш-функции (например, SHA-256) для обеспечения целостности и аутентификации.
¶Параметры безопасности
- Стойкость к атакам: Стандарт требует, чтобы алгоритмы были устойчивы к атакам по выбранному открытому тексту (IND-CPA) и, в большинстве случаев, к атакам по выбранному шифротексту (IND-CCA2). Это означает, что даже если злоумышленник может шифровать произвольные тексты и расшифровывать любые шифротексты (кроме целевого), он не сможет получить информацию о зашифрованном сообщении.
- Длина ключа: Минимальная длина ключа для каждого алгоритма устанавливается в зависимости от требуемого уровня безопасности. Для RSA это 2048 бит, для ECC — 256 бит, для постквантовых алгоритмов — от 1024 до 4096 бит.
- Скорость: Асимметричное шифрование значительно медленнее симметричного. Стандарт не устанавливает жёстких требований к скорости, но рекомендует использовать гибридные схемы для повышения производительности.
¶Применение
ISO/IEC 18033-2 нашёл широкое применение в различных областях, где требуется безопасная передача данных по открытым каналам.
¶Защита электронной почты
Стандарты S/MIME (Secure/Multipurpose Internet Mail Extensions) и OpenPGP (Pretty Good Privacy) используют алгоритмы из ISO/IEC 18033-2 для шифрования сообщений. Например, в S/MIME часто применяется RSA-OAEP, а в OpenPGP — Эль-Гамаль или RSA.
¶Протоколы защиты транспортного уровня
Протоколы TLS (Transport Layer Security) и его предшественник SSL (Secure Sockets Layer) используют асимметричное шифрование для установления защищённого канала. В TLS 1.3, например, для обмена ключами применяется ECDHE (Elliptic Curve Diffie-Hellman Ephemeral), который является вариантом схемы, описанной в стандарте. Шифрование данных в TLS осуществляется симметричными алгоритмами, но сам сеансовый ключ защищается асимметричным шифрованием.
¶Электронные подписи и сертификаты
Хотя стандарт ISO/IEC 18033-2 посвящён именно шифрованию, его алгоритмы часто используются в связке с электронными подписями (например, по стандарту ISO/IEC 9796). Сертификаты X.509, используемые в инфраструктуре открытых ключей (PKI), содержат открытые ключи, которые могут быть применены для шифрования в соответствии с ISO/IEC 18033-2.
¶Защита данных в облачных хранилищах
Многие облачные сервисы используют асимметричное шифрование для защиты данных пользователей. Например, пользователь может зашифровать файл своим открытым ключом перед отправкой в облако, и только владелец закрытого ключа сможет его расшифровать. Это обеспечивает конфиденциальность даже в случае компрометации сервера.
¶Примеры алгоритмов, включённых в стандарт
- RSA-OAEP: Наиболее распространённая схема на основе RSA. OAEP (Optimal Asymmetric Encryption Padding) — это процедура дополнения, которая делает RSA устойчивым к атакам по выбранному шифротексту.
- ElGamal: Схема, основанная на задаче дискретного логарифмирования. В стандарте определены несколько вариантов, включая ElGamal с хэшированием для повышения безопасности.
- ECIES (Elliptic Curve Integrated Encryption Scheme): Гибридная схема, использующая эллиптические кривые. Она включает в себя этапы обмена ключами (Diffie-Hellman) и симметричного шифрования.
- NTRUEncrypt: Постквантовый алгоритм на основе решёток. Отличается высокой скоростью и относительно короткими ключами по сравнению с другими постквантовыми схемами.
- McEliece: Постквантовый алгоритм на основе кодов, исправляющих ошибки. Очень быстрый, но имеет большие размеры ключей.
¶Критика и ограничения
- Сложность реализации: Реализация алгоритмов, особенно с учётом требований к дополнению и защите от побочных атак (например, атак по времени), требует высокой квалификации разработчиков. Ошибки в реализации могут привести к уязвимостям.
- Производительность: Асимметричное шифрование значительно медленнее симметричного. Для шифрования больших объёмов данных оно практически не применяется, а используется только для защиты ключей.
- Управление ключами: Требуется надёжная система генерации, хранения, распространения и отзыва открытых ключей. Инфраструктура открытых ключей (PKI) сложна в развёртывании и обслуживании.
- Постквантовая угроза: С развитием квантовых компьютеров алгоритмы, основанные на факторизации и дискретном логарифмировании (RSA, Эль-Гамаль, ECC), могут стать уязвимыми. Хотя стандарт уже включает постквантовые алгоритмы, их внедрение в существующие системы требует значительных усилий.
¶Интересные факты
- Стандарт ISO/IEC 18033-2 является частью более широкого семейства, в которое также входят ISO/IEC 18033-1 (общие положения), ISO/IEC 18033-3 (симметричное шифрование) и ISO/IEC 18033-4 (механизмы аутентификации).
- Включение постквантовых алгоритмов в третью редакцию (2019 год) было одним из первых шагов международного сообщества по стандартизации криптографии, устойчивой к квантовым атакам.
- Алгоритм RSA-OAEP, описанный в стандарте, был разработан в 1994 году и с тех пор является основой для многих криптографических протоколов, включая TLS и S/MIME.
¶Источники
- ISO/IEC 18033-2:2019 — Information technology — Security techniques — Encryption algorithms — Part 2: Asymmetric ciphers.
- Menezes, A. J., van Oorschot, P. C., Vanstone, S. A. Handbook of Applied Cryptography. CRC Press, 1996.
- Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons, 1996.
- Bernstein, D. J., Lange, T. (eds.). Post-Quantum Cryptography. Springer, 2009.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


