Генератор ключей RSA и инструмент шифрования

Бесплатный онлайн-генератор приватных ключей RSA и инструмент шифрования. Генерируйте ключи RSA 1024/2048/4096, шифруйте и расшифровывайте сообщения с помощью RSA-OAEP.

Алгоритм

Ключи

Зашифровать / Расшифровать

Часто задаваемые вопросы (FAQ)

Что такое шифрование RSA?

RSA — это асимметричный криптографический алгоритм, использующий два разных ключа: открытый ключ для шифрования данных и закрытый ключ для их расшифровки. Широко применяется для безопасной передачи данных и цифровых подписей.

В чём разница между RSA-OAEP и RSA-PKCS1?

RSA-OAEP ( Optimal Asymmetric Encryption Padding, оптимальное асимметричное дополнение шифрования) — более новая и безопасная схема дополнения, настоятельно рекомендуемая для новых приложений. RSA-PKCS1 — более старый стандарт, сохраняемый главным образом для совместимости с устаревшими системами.

Почему при шифровании появляется ошибка «Сообщение слишком длинное»?

Асимметричные алгоритмы, такие как RSA, не предназначены для прямого шифрования больших объёмов данных. Максимальный размер данных зависит от длины ключа (например, ключ RSA 2048 бит может зашифровать лишь около 200 байт данных). Для больших файлов или текстов используйте «гибридное шифрование»: зашифруйте данные симметричным алгоритмом вроде AES, а затем зашифруйте AES-ключ с помощью RSA.

Безопасны ли мои сгенерированные закрытые ключи на этом сайте?

Да. Все процессы генерации ключей, шифрования и расшифровки выполняются локально в вашем браузере с помощью Web Crypto API. Никакие закрытые ключи или данные открытого текста никогда не отправляются на наши серверы.

Руководство по алгоритмам и лучшие практики безопасности

Краткая справка

Алгоритм Тип Лучше всего для Безопасность Размер ключа
RSA-OAEP Шифрование Общее использование ⭐⭐⭐⭐⭐ 2048+ бит
RSA-PKCS1 Шифрование Устаревшие системы ⭐⭐⭐⭐ 2048+ бит
RSA-PSS Подпись Цифровые подписи ⭐⭐⭐⭐⭐ 2048+ бит
ECDH Обмен ключами Производительность ⭐⭐⭐⭐⭐ 256+ бит
ECDSA Подпись Быстрые подписи ⭐⭐⭐⭐⭐ 256+ бит
SM2 Шифрование Соответствие КНР ⭐⭐⭐⭐⭐ 256 бит

Руководство по выбору алгоритма

Для шифрования (защита данных)

  • RSA-OAEP + SHA-256: лучшая совместимость, рекомендуется в большинстве случаев
  • ECDH + AES-GCM: лучшая производительность, идеально для больших данных

Для цифровых подписей

  • ECDSA + P-256: быстро и эффективно
  • RSA-PSS + SHA-256: максимальная совместимость

Для соответствия стандартам КНР

  • SM2: требуется для государственных и финансовых систем в Китае

Сравнение размеров ключей

Биты RSA Биты ECC Уровень безопасности
1024 - ⚠️ Не рекомендуется
2048 256 ✅ Рекомендуется
3072 384 ✅ Надёжно
4096 521 ✅ Максимально

Распространённые сценарии использования

1. Безопасная связь

Отправляйте зашифрованные сообщения, не передавая секретный ключ заранее. Отправитель шифрует открытым ключом получателя, и только получатель может расшифровать его закрытым ключом.

2. Цифровые подписи

Подтверждают подлинность и целостность сообщения. Подписант использует свой закрытый ключ, любой может проверить открытым ключом.

3. Обмен ключами

Безопасно обменивайтесь симметричными ключами (например, ключами AES) между сторонами с помощью ECDH.

Лучшие практики безопасности

  1. Никогда не используйте чистый RSA — всегда применяйте дополнение (OAEP для шифрования)
  2. Используйте ключи RSA 2048+ бит — 1024-битные считаются небезопасными
  3. Отдавайте предпочтение ECC перед RSA — лучшая производительность при сопоставимой безопасности
  4. Используйте одобренные кривые — P-256, P-384, P-521 одобрены NIST
  5. Используйте SHA-256 или новее — избегайте SHA-1 для новых реализаций
  6. Защищайте закрытые ключи — применяйте HSM для производственных систем

Устранение неполадок

Ошибка Причина Решение
Не удалось импортировать ключ Неверный формат Используйте формат PEM или JWK
Не удалось зашифровать Слишком маленький размер ключа Используйте ключи 2048+ бит
Не удалось расшифровать Неверная пара ключей Убедитесь, что открытый/закрытый ключи совпадают
Данные слишком длинные Сообщение превышает ёмкость ключа Используйте гибридное шифрование (RSA + AES)