Генератор пары ключей RSA

Генерация ключей PKCS#8 (приватный) и SPKI (публичный) PEM (1024, 2048, 4096 бит) через Web Crypto.

Генератор пары ключей RSA

Генерация ключей PKCS#8 (приватный) и SPKI (публичный) PEM (1024, 2048, 4096 бит) через Web Crypto.

Как это работает

1
Set Criteria & Options
Select length, format, or generation parameters for your output.
2
Generate Instantly
Generate secure, random, or custom data entirely in your browser.
3
Copy or Export
Copy the generated output to your clipboard or download the file.
Центр знаний и экспертное руководство

Генератор Ключей RSA, Создание Публичных и Приватных Ключей PEM 2048 / 4096 Бит

Генератор криптографических пар ключей RSA (алгоритм Ривеста — Шамира — Адлемана) обеспечивает создание криптографически стойких публичных и приватных ключей в стандартизированных форматах PEM (PKCS#1 и PKCS#8) для настройки SSH-доступа, TLS/SSL сертификатов, подписи веб-токенов JWT и шифрования сообщений PGP. Асимметричная криптография позволяет свободно распространять открытый ключ для зашифрования данных или проверки подписи, сохраняя закрытый ключ в строгой тайне.

В интерфейсе инструмента пользователь выбирает требуемую длину криптографического модуля: 2048 бит (стандартная надежность) или 4096 бит (максимальная корпоративная стойкость) с открытой экспонентой 65537 (0x10001) и алгоритмом хэширования SHA-256. Встроенный криптографический генератор на базе аппаратного интерфейса Web Crypto API за доли секунды рассчитывает простые числа и выводит пару форматированных текстовых блоков в формате PEM: -----BEGIN RSA PRIVATE KEY----- и -----BEGIN PUBLIC KEY-----. Каждый ключ можно моментально скопировать в буфер обмена или сохранить в виде файлов private.pem и public.pem.

Критически важный аспект безопасности: вся процедура генерации ключей и кодирования в формат ASN.1/DER происходит локально на процессоре вашего компьютера. Приватный ключ никогда не передается по сети, не логируется и не сохраняется на удаленных серверах.

Архитектура и математическая формула

RSA Keygen: crypto.subtle.generateKey({ name: 'RSASSA-PKCS1-v1_5', modulusLength: 2048 | 4096, publicExponent: 65537, hash: 'SHA-256' })

Системный энтропийный пул генерирует два больших случайных простых числа p и q, вычисляет модуль n = p×q и закрытую экспоненту d, сериализуя структуру в стандартные PEM-контейнеры Base64.

Лучшие практики и ключевые рекомендации

  • Используйте длину ключа не менее 2048 бит для стандартных задач: Ключи длиной 1024 бита признаны устаревшими и небезопасными Национальным институтом стандартов и технологий (NIST).
  • Выбирайте 4096 бит для долговременных корневых сертификатов: Дополнительная вычислительная сложность ключей 4096 бит оправдана для инфраструктурных CA-сертификатов с длительным сроком действия.
  • Никогда и никому не передавайте сгенерированный приватный ключ: Открытый ключ можно публиковать в профилях GitHub или на веб-серверах, но закрытый ключ должен храниться только на доверенной машине.
  • Устанавливайте строгие права доступа (chmod 600) на файл приватного ключа: В операционных системах Linux и macOS клиент OpenSSH откажется использовать ключ с открытыми правами чтения для посторонних.

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

В чем разница между длинами ключей 2048 и 4096 бит?
Ключ 4096 бит обеспечивает колоссальный запас криптографической стойкости против факторизации на десятилетия вперед, однако операции шифрования и подписи с ним выполняются в 3–5 раз медленнее, чем с 2048 бит.
Что означает формат PEM и чем он отличается от бинарного DER?
PEM — это текстовое представление бинарных ASN.1 структур DER, закодированное в Base64 с добавлением читаемых маркеров заголовка и окончания (-----BEGIN RSA PRIVATE KEY-----).
Можно ли использовать полученный открытый ключ для настройки доступа по SSH?
Да. Однако для авторизации в authorized_keys OpenSSH открытый ключ PEM необходимо преобразовать в однострочный формат ssh-rsa с помощью стандартной консольной утилиты ssh-keygen -i -m PKCS8.
Насколько безопасна генерация приватного RSA-ключа на этом сайте?
На все 100%. Вызовы генерации ключей производятся через нативный браузерный API Web Crypto непосредственно в изолированной памяти вашего устройства без сетевых транзакций.