Инструмент подписи DSA
Алгоритм цифровой подписи (FIPS 186)
Уведомление об устаревании FIPS 186-5
DSA признан устаревшим для генерации подписей в FIPS 186-5 (февраль 2023). Одобрена только проверка подписей. Рассмотрите ECDSA или Ed25519 для новых приложений.
Импорт ключей DSA
Вставьте ваши ключи DSA (формат PEM). Из-за ограничений браузера этот инструмент не поддерживает генерацию ключей DSA. Вы можете сгенерировать ключи с помощью OpenSSL и импортировать их сюда.
Генерация ключей с OpenSSL
# Генерация параметров DSA openssl dsaparam -out dsaparam.pem 2048
# Генерация закрытого ключа openssl gendsa -out private.pem dsaparam.pem
# Экспорт открытого ключа openssl dsa -in private.pem -pubout -out public.pem
Ключ успешно проверен
Документация
DSA (Digital Signature Algorithm) — это федеральный стандарт обработки информации для цифровых подписей, определённый в FIPS 186. Впервые опубликованный в 1994 году, DSA широко использовался для приложений цифровой подписи в государственных и коммерческих системах. Хотя он всё ещё безопасен при правильной реализации, NIST признал DSA устаревшим для генерации подписей в FIPS 186-5 (2023), отдав предпочтение более эффективным алгоритмам на эллиптических кривых.
Статус FIPS 186-5
С февраля 2023 года NIST FIPS 186-5 больше не одобряет DSA для генерации цифровых подписей. Только проверка подписей DSA одобрена для проверки подписей, созданных до перехода. Для новых приложений, требующих цифровые подписи, NIST рекомендует ECDSA (P-256, P-384, P-521) или EdDSA (Ed25519, Ed448).
Основные возможности
- Совместимость с FIPS: Реализует стандарт цифровой подписи NIST FIPS 186-4
- Множественные параметры: Поддерживает комбинации (L, N) (2048, 256), (3072, 256) и legacy-размеры
- Семейство SHA-2: Совместим с хеш-функциями SHA-1 (устаревший), SHA-224, SHA-256
- Кодирование DER: Создаёт подписи в стандартном формате ASN.1 DER
- На базе браузера: Все операции выполняются локально в вашем браузере с использованием библиотеки jsrsasign
Поддерживаемые параметры
- (2048, 256): Рекомендуемый набор параметров. Простой модуль L=2048 бит, простой множитель N=256 бит. Обеспечивает уровень безопасности 112 бит.
- (3072, 256): Набор параметров высокой безопасности. Простой модуль L=3072 бит для уровня безопасности 128 бит. Медленнее, но более перспективен.
- (1024, 160): Устаревший набор параметров. Только для совместимости с существующими системами. Не рекомендуется для новых приложений.
- (2048, 224): Альтернативный набор параметров с множителем N=224 бит. Менее распространён, но всё ещё безопасен.
Алгоритмы хеширования
- SHA-256: Рекомендуемая хеш-функция для DSA. Обеспечивает устойчивость к коллизиям 128 бит, подходит для параметров (2048, 256).
- SHA-224: Альтернативная хеш-функция со 112-битной устойчивостью к коллизиям. Подходит для стандартных требований безопасности.
- Примечание: SHA-384 и SHA-512 не поддерживаются в этой реализации из-за ограничений библиотеки jsrsasign.
- SHA-1: Устаревшая хеш-функция с известными уязвимостями. Используйте только для проверки старых подписей, никогда для новых.
Вопросы безопасности
- Рекомендуется миграция: NIST рекомендует мигрировать с DSA на ECDSA или EdDSA для новых приложений подписи.
- Качество случайности: Безопасность DSA критически зависит от высококачественной случайности при подписи. Низкое качество случайности может привести к утечке закрытого ключа.
- Защита закрытого ключа: Никогда не раскрывайте и не передавайте свой закрытый ключ. Рассмотрите использование аппаратных модулей безопасности (HSM) для критичных приложений.
- Валидация параметров: Всегда проверяйте параметры DSA (p, q, g) перед использованием для предотвращения атак с злонамеренно созданными параметрами.
- Локальная обработка: Этот инструмент работает полностью в вашем браузере. Ваши ключи никогда не покидают ваше устройство.
DSA vs современные схемы подписи
| Характеристика | DSA (2048, 256) | ECDSA (P-256) | Ed25519 |
|---|---|---|---|
| Размер закрытого ключа | ~256 бит | 256 бит | 256 бит |
| Размер открытого ключа | ~2048 бит | 512 бит | 256 бит |
| Размер подписи | ~512 бит | 512 бит | 512 бит |
| Уровень безопасности | 112 бит | 128 бит | 128 бит |
| Статус FIPS 186-5 | Устаревший | Одобрен | Одобрен |
Связанные инструменты
Инструмент подписи ECDSA
Создание пар ключей ECDSA, подпись сообщений и проверка подписей с кривыми secp256k1, P-256, P-384, P-521
Инструмент подписи Ed25519
Создание пар ключей Ed25519, подпись сообщений и проверка подписей с использованием алгоритма цифровой подписи на кривой Эдвардса
RSA Шифрование/Дешифрование
Использование асимметричного шифрования RSA для шифрования открытым ключом, дешифрования закрытым ключом, цифровой подписи и проверки
SHA Генератор хешей
Онлайн-генератор SHA хешей с поддержкой алгоритмов SHA-1, SHA-256, SHA-384, SHA-512