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

> Создайте пару ключей RSA и экспортируйте закрытый PKCS#8 и открытый SPKI в PEM.

[Открыть инструмент](https://demindev.ru/tools/rsa-key-pair-generator/). Бесплатно, без регистрации. Для работы интерфейса нужен JavaScript.

Что учитывать: Закрытый ключ выводится без парольного шифрования. Генерация работает через Web Crypto в браузере.

## О генераторе ключей RSA

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

## Открытый ключ, закрытый ключ и PEM

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

PEM представляет бинарную структуру ключа в Base64 между строками `BEGIN` и `END`. Здесь открытый ключ экспортируется как SPKI с заголовком `PUBLIC KEY`, закрытый как PKCS#8 с заголовком `PRIVATE KEY`. Формат отличается от SSH-строки и от PKCS#1 с заголовком `RSA PRIVATE KEY`.

## Асимметричная криптография и размер ключа

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

Параметры выбранного режима также имеют значение. OAEP задает схему дополнения для шифрования и ограничивает размер одной обрабатываемой порции. Поэтому RSA обычно используют в сочетании с симметричным шифрованием для данных большого объема. Этот генератор создает и экспортирует пару, но не собирает такую гибридную схему.

## Ключ, сертификат и доверенная сторона

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

Если интеграция принимает файл сертификата, одного `public.pem` может быть недостаточно, даже когда ключ технически подходит. Сначала уточните ожидаемый контейнер и назначение: открытый ключ, закрытый ключ, запрос сертификата или сам сертификат. Заголовки PEM помогают различить форматы, но совместимость проверяется по требованиям принимающей системы.

## Как создать и сохранить пару

Выберите размер 2048, 3072 или 4096 бит и нажмите «Сгенерировать». Генерация запускается явно через Web Crypto. Более длинный ключ увеличивает объем вычислений и размер результата; поддерживаемый размер в первую очередь должен соответствовать принимающему приложению.

Скачайте `public.pem` и `private.pem` или скопируйте нужный блок целиком, включая границы. Повторное нажатие создает другую пару, поэтому сохраните оба ключа одного результата вместе до настройки интеграции.

## Совместимость с целевой системой

Ключи создаются с параметрами RSA-OAEP, SHA-256 и показателем 65537. Инструмент экспортирует ключевой материал, но не выполняет шифрование текста, не создает сертификат и не выпускает SSH-ключ.

Закрытый PKCS#8 выводится без парольного шифрования. Пароль к нему здесь не задается. Если приложению нужен зашифрованный PEM, другой контейнер или сертификат, подготовьте его отдельным подходящим средством. Наличие ключевой пары не подтверждает личность владельца и не задает доверие к нему.
