FIPS 186-5
FIPS 186-5 — это федеральный стандарт обработки информации США (Federal Information Processing Standard), опубликованный Национальным институтом стандартов и технологий (NIST) 3 февраля 2023 года. Стандарт определяет алгоритмы цифровой подписи, одобренные для использования в государственных учреждениях США и их подрядчиках. FIPS 186-5 является пятой ревизией стандарта, который впервые был принят в 1994 году. Основное нововведение версии 186-5 — включение алгоритмов на основе эллиптических кривых в варианте Эдвардса (Edwards-curve Digital Signature Algorithm, EdDSA) и отказ от устаревших методов, таких как цифровая подпись на основе эллиптических кривых с детерминированным k (ECDSA) в некоторых режимах.
История
Предшественником FIPS 186-5 был стандарт FIPS 186-4, принятый в 2013 году и обновлённый в 2019 году. В 2019 году NIST начал процесс пересмотра стандарта, чтобы адаптировать его к современным требованиям криптографической стойкости и производительности. Основными причинами для обновления стали:
- Устаревание SHA-1: алгоритм хеширования SHA-1, используемый в некоторых режимах подписи, был признан небезопасным из-за возможности коллизий.
- Развитие постквантовой криптографии: хотя FIPS 186-5 не включает постквантовые алгоритмы, NIST учёл необходимость перехода к ним в будущем.
- Популяризация EdDSA: алгоритм EdDSA (на основе кривой Curve25519) показал более высокую производительность и безопасность по сравнению с классическим ECDSA, особенно на встраиваемых устройствах.
Проект стандарта был опубликован для общественного обсуждения в 2021 году, а финальная версия утверждена в 2023 году. FIPS 186-5 заменил FIPS 186-4 и стал обязательным для всех федеральных агентств США с 2024 года.
Алгоритмы, включённые в стандарт
FIPS 186-5 определяет три основных алгоритма цифровой подписи:
1. DSA (Digital Signature Algorithm)
DSA — классический алгоритм, основанный на задаче дискретного логарифмирования в конечных полях. Он был включён в первую версию стандарта (FIPS 186) в 1994 году. В FIPS 186-5 DSA сохраняется, но с ограничениями:
- Размер ключа: от 1024 до 3072 бит.
- Используемые хеш-функции: SHA-224, SHA-256, SHA-384, SHA-512.
- DSA с размером ключа 1024 бит считается устаревшим и не рекомендуется для новых применений.
2. ECDSA (Elliptic Curve Digital Signature Algorithm)
ECDSA — вариант DSA, использующий эллиптические кривые. Он обеспечивает более высокую безопасность при меньших размерах ключей. В FIPS 186-5 ECDSA поддерживается, но с изменениями:
- Детерминированный вариант: в FIPS 186-4 требовалось использование случайного k для каждой подписи. В FIPS 186-5 разрешён детерминированный ECDSA, где k вычисляется как хеш от закрытого ключа и сообщения, что устраняет уязвимости, связанные с плохим генератором случайных чисел.
- Кривые: NIST P-256, P-384, P-521 (стандартные кривые NIST), а также кривые Brainpool (RFC 5639) и Secp256k1 (используется в Bitcoin).
- Хеш-функции: SHA-224, SHA-256, SHA-384, SHA-512.
3. EdDSA (Edwards-curve Digital Signature Algorithm)
EdDSA — новый алгоритм, впервые включённый в стандарт. Он основан на скрученных кривых Эдвардса и отличается высоким быстродействием и устойчивостью к атакам по побочным каналам. В FIPS 186-5 определены две кривые:
- Ed25519: кривая с 256-битным ключом, обеспечивающая безопасность, эквивалентную 128-битному симметричному шифрованию. Рекомендована для большинства применений.
- Ed448: кривая с 448-битным ключом, обеспечивающая безопасность, эквивалентную 224-битному симметричному шифрованию. Используется для высокозащищённых систем.
EdDSA использует хеш-функцию SHA-512 (для Ed25519) или SHAKE256 (для Ed448). Алгоритм не требует генерации случайных чисел при подписании, что делает его предпочтительным для устройств с ограниченными ресурсами.
Критерии выбора алгоритмов
NIST при разработке FIPS 186-5 руководствовался следующими принципами:
- Безопасность: все алгоритмы должны быть устойчивы к известным атакам, включая атаки на основе квантовых компьютеров (хотя постквантовые алгоритмы не включены).
- Совместимость: стандарт должен поддерживать взаимодействие с существующими системами, поэтому DSA и ECDSA сохранены.
- Производительность: EdDSA превосходит ECDSA по скорости подписания и верификации, особенно на процессорах с поддержкой инструкций SIMD.
- Открытость: алгоритмы основаны на открытых спецификациях (RFC 8032 для EdDSA).
Применение
FIPS 186-5 обязателен для использования в:
- Федеральных информационных системах США (например, в системах электронного документооборота, голосования, управления доступом).
- Продуктах, поставляемых правительству США (например, в криптографических библиотеках, аппаратных модулях безопасности).
- Международных стандартах, где требуется совместимость с американскими системами (например, в протоколах TLS 1.3, SSH, DNSSEC).
В России и других странах FIPS 186-5 не является обязательным, но его алгоритмы (особенно EdDSA) широко используются в международных криптографических протоколах. Например, Ed25519 применяется в протоколе SSH, в системе управления версиями Git, в блокчейн-платформах.
Критика и ограничения
Несмотря на преимущества, FIPS 186-5 подвергается критике по нескольким причинам:
- Отсутствие постквантовых алгоритмов: стандарт не включает алгоритмы, устойчивые к квантовым компьютерам (например, CRYSTALS-Dilithium или Falcon). NIST планирует включить их в будущую версию FIPS 186-6, но переходный период может затянуться.
- Сложность поддержки устаревших алгоритмов: DSA и ECDSA с 1024-битными ключами считаются небезопасными, но их поддержка замедляет внедрение более современных решений.
- Зависимость от NIST: использование кривых NIST (P-256, P-384, P-521) вызывает опасения из-за возможных бэкдоров, хотя доказательств этому нет. EdDSA на основе Curve25519 (разработанной Дэниелом Бернштейном) считается более прозрачной.
- Ограниченная поддержка в России: российские стандарты (ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012) несовместимы с FIPS 186-5, что создаёт сложности при интеграции с международными системами.
Влияние на криптографию
FIPS 186-5 ускорил переход к EdDSA как к стандарту де-факто для цифровых подписей. Многие крупные компании (Google, Microsoft, Cloudflare) уже внедрили Ed25519 в свои продукты. Стандарт также стимулировал развитие аппаратных ускорителей для эллиптических кривых Эдвардса.
Источники
- National Institute of Standards and Technology. FIPS 186-5: Digital Signature Standard (DSS). — 2023.
- Bernstein, D. J., et al. High-speed high-security signatures. — Journal of Cryptographic Engineering, 2012.
- RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA). — IETF, 2017.
- NIST Special Publication 800-186: Recommendations for Discrete Logarithm-based Cryptography. — 2023.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →