FIPS 140-2
FIPS 140-2 (Federal Information Processing Standard Publication 140-2) — это федеральный стандарт обработки информации США, устанавливающий требования к криптографическим модулям, используемым для защиты чувствительной, но несекретной информации (Sensitive but Unclassified, SBU) в компьютерных и телекоммуникационных системах. Стандарт был разработан Национальным институтом стандартов и технологий США (NIST) и опубликован 25 мая 2001 года, заменив предыдущий стандарт FIPS 140-1. Основная цель FIPS 140-2 — обеспечение единого уровня безопасности криптографических модулей, используемых в государственных учреждениях США, а также в коммерческих и международных системах, работающих с правительственными данными.
История и предпосылки создания
До появления FIPS 140-2 в США не существовало единого стандарта для оценки криптографических модулей. Различные ведомства (например, Министерство обороны, АНБ) использовали собственные критерии, что затрудняло совместимость и взаимное признание сертификации. В 1994 году NIST опубликовал первый стандарт — FIPS 140-1, который ввёл четыре уровня безопасности и установил базовые требования к аппаратным и программным реализациям криптографии.
Однако к концу 1990-х годов развитие технологий (в частности, появление облачных вычислений, виртуализации и более мощных атак) потребовало пересмотра стандарта. Работа над FIPS 140-2 началась в 1999 году, а окончательная версия была утверждена в 2001 году. С 2002 года стандарт стал обязательным для всех федеральных агентств США при закупке криптографических продуктов.
Основные положения стандарта
FIPS 140-2 определяет криптографический модуль как набор аппаратных, программных, встроенных (firmware) или комбинированных средств, реализующих криптографические функции (шифрование, хеширование, генерацию ключей, цифровую подпись). Стандарт охватывает 11 областей требований, каждая из которых оценивается для конкретного уровня безопасности:
- Спецификация криптографического модуля — чёткое описание границ, интерфейсов и реализуемых алгоритмов.
- Интерфейсы криптографического модуля — требования к физическим и логическим портам ввода/вывода данных, управления и состояния.
- Роли, услуги и аутентификация — разделение пользователей на роли (например, оператор, администратор) и обязательная аутентификация.
- Модель конечного автомата — описание состояний модуля (например, инициализация, работа, ошибка) и переходов между ними.
- Физическая безопасность — защита от вскрытия, снятия сигналов, температурных и радиационных атак (только для аппаратных модулей).
- Рабочая среда — устойчивость к внешним воздействиям (вибрация, влажность, перепады напряжения) для аппаратных модулей.
- Управление криптографическими ключами — генерация, хранение, распределение, уничтожение ключей.
- Электромагнитная совместимость/электромагнитная защита (EMI/EMC) — подавление паразитных излучений, которые могут быть использованы для перехвата данных.
- Самопроверка — автоматическая проверка целостности модуля и корректности криптографических алгоритмов при запуске и периодически.
- Гарантии проектирования — документация, тестирование, управление конфигурацией, процедуры поставки.
- Смягчение атак по побочным каналам — защита от атак, использующих время выполнения, потребление энергии, излучение (требуется только для уровня 4).
Уровни безопасности
FIPS 140-2 определяет четыре возрастающих уровня безопасности (Security Levels 1–4), которые могут быть выбраны в зависимости от требуемого риска и стоимости реализации:
| Уровень | Физическая безопасность | Аутентификация | Управление ключами | Самопроверка |
|---|---|---|---|---|
| 1 | Не требуется (только программная реализация) | Опционально | Базовые требования | Только при запуске |
| 2 | Требуется защита от вскрытия (например, пломбы, датчики) | Ролевая | Строгие процедуры | При запуске и по запросу |
| 3 | Защита от вскрытия и попыток снятия сигналов | Идентификация на основе ролей и паролей/биометрии | Обязательное шифрование ключей | Автоматическая периодическая |
| 4 | Полная защита от физических и температурных атак | Многофакторная | Аппаратная защита ключей | Непрерывная |
Уровень 1 — минимальные требования, применим для программных реализаций на стандартных ОС (например, библиотеки OpenSSL, сертифицированные в режиме FIPS). Уровень 2 — обязателен для большинства правительственных систем, требует физической защиты (например, корпуса с датчиками вскрытия). Уровень 3 — применяется для высокозащищённых сред (например, банковские HSM, военные системы). Уровень 4 — наивысший, используется для модулей, работающих в враждебной среде (например, в полевых условиях).
Процесс сертификации
Сертификация по FIPS 140-2 проводится аккредитованными лабораториями, входящими в программу Cryptographic Module Validation Program (CMVP), управляемую NIST и Канадским центром безопасности связи (CSE). Процесс включает:
- Подача заявки — производитель предоставляет модуль, документацию и тестовые векторы.
- Тестирование в лаборатории — проверка всех 11 областей требований, включая криптоалгоритмы (должны быть утверждёнными NIST: AES, SHA-2, RSA, ECDSA и др.).
- Анализ уязвимостей — поиск потенциальных атак (переполнение буфера, side-channel, внедрение кода).
- Выдача сертификата — при успешном прохождении модуль вносится в реестр NIST.
Срок действия сертификата не ограничен, но стандарт требует периодического пересмотра при изменении алгоритмов или обнаружении новых уязвимостей. По состоянию на 2024 год в реестре CMVP числится более 2500 сертифицированных модулей.
Применение и значение
FIPS 140-2 широко используется в государственных системах США (например, в системах электронного документооборота, военных коммуникациях, обработке персональных данных), а также в финансовом секторе (банковские HSM, платёжные терминалы), здравоохранении (защита медицинских записей) и промышленности. Многие международные стандарты (например, ISO 19790) основаны на FIPS 140-2.
В России аналогичные требования к криптографическим модулям регулируются ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012 и другими национальными стандартами, а также нормативными документами ФСБ России. Однако FIPS 140-2 не является обязательным для российских организаций, хотя может использоваться в международных проектах.
Критика и ограничения
К основным недостаткам FIPS 140-2 относят:
- Устаревание — стандарт не учитывает современные угрозы, такие как квантовые атаки, атаки на виртуализацию, облачные среды.
- Сложность и стоимость — сертификация уровня 3–4 может стоить десятки тысяч долларов и занимать более года.
- Ограниченный набор алгоритмов — разрешены только алгоритмы, утверждённые NIST, что исключает использование, например, российских ГОСТов.
- Отсутствие требований к защите от программных уязвимостей — стандарт в основном фокусируется на физической и логической защите, но не на безопасности кода (например, buffer overflow).
В 2019 году NIST объявил о разработке замены — FIPS 140-3, который вступил в силу 22 сентября 2023 года. Новый стандарт включает требования к защите от атак по побочным каналам, поддержку квантово-устойчивых алгоритмов и более строгие правила для облачных сред. Тем не менее, FIPS 140-2 остаётся действующим до 2026 года для уже сертифицированных модулей.
Источники
- Национальный институт стандартов и технологий (NIST). «FIPS 140-2: Security Requirements for Cryptographic Modules». 2001.
- Национальный институт стандартов и технологий (NIST). «Cryptographic Module Validation Program (CMVP)». Официальный сайт.
- Федеральный закон США «Computer Security Act of 1987».
- «Guide to FIPS 140-2: Understanding the Standard and Its Implementation». NIST Special Publication 800-140. 2019.
- «ISO/IEC 19790:2012 — Information technology — Security techniques — Security requirements for cryptographic modules».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →