FIPS 140
FIPS 140 — это серия федеральных стандартов обработки информации (Federal Information Processing Standards) правительства США, устанавливающих требования к криптографическим модулям, используемым в государственных информационных системах для защиты несекретной, но конфиденциальной информации. Стандарт определяет классификацию уровней безопасности, методы тестирования и критерии, которым должны соответствовать аппаратные и программные средства шифрования.
История
Разработка стандарта началась в конце 1980-х годов в ответ на необходимость унификации подходов к защите данных в федеральных ведомствах США. Первая версия, FIPS 140-1, была опубликована Национальным институтом стандартов и технологий США (NIST) 11 января 1994 года. Она заменила собой ряд разрозненных ведомственных требований и установила четыре уровня безопасности для криптографических модулей.
В 2001 году вышла вторая версия — FIPS 140-2, которая стала наиболее распространённой и действовала до 2019 года. В ней были уточнены требования к физической защите, управлению ключами, а также введены новые тесты на случайные числа. В 2019 году NIST опубликовал FIPS 140-3, который гармонизировал стандарт с международным ISO/IEC 19790:2012. Переходный период завершился 22 сентября 2021 года, после чего сертификация по FIPS 140-2 была прекращена.
Структура и уровни безопасности
Стандарт делит все криптографические модули на четыре уровня безопасности, каждый из которых добавляет новые требования к предыдущему.
Уровень 1 (Security Level 1)
Базовый уровень. Предполагает использование только проверенных криптографических алгоритмов (например, AES, RSA, SHA). Не требует физической защиты модуля — достаточно программной реализации. Применяется в недорогих устройствах и приложениях, где риск физического доступа злоумышленника минимален.
Уровень 2 (Security Level 2)
Добавляет требования к физической защите: корпус модуля должен иметь защиту от вскрытия (например, пломбы или датчики). Также вводится обязательная аутентификация оператора (роль-ориентированная). Используется в серверных решениях и сетевом оборудовании.
Уровень 3 (Security Level 3)
Требует усиленной физической защиты: при попытке вскрытия модуль должен уничтожать критические ключи (zeroization). Вводится разделение ролей (например, администратор и оператор) и обязательная идентификация на основе паролей или биометрии. Применяется в банковских терминалах, аппаратных модулях безопасности (HSM) и правительственных системах.
Уровень 4 (Security Level 4)
Высший уровень. Предусматривает защиту от всех известных физических атак, включая перепады температуры, напряжения и электромагнитное излучение. Модуль должен быть способен обнаружить аномалии окружающей среды и немедленно уничтожить ключи. Используется в военных и дипломатических системах, а также в критической инфраструктуре.
Криптографические алгоритмы
FIPS 140 не определяет собственные алгоритмы, а ссылается на утверждённые NIST. В стандарт включены:
- Симметричные шифры: AES (с длиной ключа 128, 192, 256 бит), Triple DES (только для обратной совместимости).
- Асимметричные шифры: RSA (размер ключа не менее 2048 бит), ECDSA (на эллиптических кривых).
- Хеш-функции: SHA-1 (только для проверки подписей, не для новых реализаций), SHA-224, SHA-256, SHA-384, SHA-512.
- Генераторы случайных чисел: DRBG (детерминированные генераторы, соответствующие SP 800-90A).
Все алгоритмы проходят валидацию через программу Cryptographic Algorithm Validation Program (CAVP).
Процесс сертификации
Сертификация по FIPS 140 проводится аккредитованными лабораториями, входящими в программу Cryptographic Module Testing (CMT). Процесс включает:
- Подача заявки в NIST или назначенную лабораторию.
- Тестирование алгоритмов (CAVP) — проверка корректности реализации.
- Тестирование модуля (CMVP) — проверка соответствия требованиям уровня безопасности.
- Выдача сертификата — публикация в базе NIST.
Сертификат действителен бессрочно, но при изменении модуля (например, обновление ПО) требуется повторная сертификация. Стоимость процедуры варьируется от 50 000 до 200 000 долларов США в зависимости от сложности модуля.
Применение
FIPS 140 является обязательным для всех федеральных ведомств США, включая Министерство обороны, Министерство финансов и Национальную безопасность. Также стандарт широко используется в коммерческом секторе:
- Банковская сфера: аппаратные модули безопасности (HSM) для обработки транзакций и хранения ключей.
- Облачные сервисы: Amazon Web Services (AWS), Microsoft Azure и Google Cloud предлагают сертифицированные модули для защиты данных клиентов.
- Корпоративные системы: VPN-устройства, серверы электронной почты и системы управления идентификацией.
- Медицинские учреждения: защита электронных медицинских записей (HIPAA).
Критика
Основные претензии к FIPS 140 связаны с его жёсткостью и дороговизной. Критики отмечают:
- Сложность обновления: стандарт не поспевает за развитием криптографии (например, поддержка постквантовых алгоритмов пока не включена).
- Бюрократичность: сертификация занимает от 6 до 18 месяцев, что замедляет внедрение новых технологий.
- Зависимость от США: многие страны (включая Россию) разрабатывают собственные стандарты (ГОСТ Р 34.10-2012, ГОСТ 28147-89), несовместимые с FIPS 140.
В России использование FIPS 140 не является обязательным, однако для международных проектов и экспорта продукции часто требуется сертификация по этому стандарту.
Интересные факты
- Первая версия FIPS 140-1 содержала всего 30 страниц, тогда как FIPS 140-3 — более 200 страниц с приложениями.
- В 2013 году NIST признал, что алгоритм Dual_EC_DRBG, включённый в FIPS 140-2, содержал потенциальный бэкдор, разработанный АНБ.
- Сертифицированные модули часто маркируются логотипом «FIPS 140-2 Validated» (или «FIPS 140-3 Validated»), который можно найти на корпусах HSM и сетевых устройствах.
- В 2020 году NIST начал работу над FIPS 140-4, который должен учесть требования к постквантовой криптографии.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →