Генератор ключей RSA и шифрование/подпись

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

Загрузка инструмента…

Генератор ключей RSA и шифрование/подписьСоздайте новую пару ключей RSA на 2048, 3072 или 4096 бит, получите открытый и закрытый ключи в готовом к использованию формате PEM и сразу примените их в деле. Переключайтесь между шифрованием (RSA-OAEP) и подписью (RSA-PSS), а затем двигайтесь вперёд (зашифровать или подписать) или назад (расшифровать или проверить) над собственным текстом. Каждый ключ и каждая операция выполняются через нативный Web Crypto API прямо в вашем браузере, поэтому никакой ключевой материал никогда не загружается и не хранится на сервере.

Что такое Генератор ключей RSA и шифрование/подпись?

Это бесплатный браузерный набор инструментов RSA, который объединяет генератор пары ключей с практическим шифрованием и подписью. Нажмите «Сгенерировать пару ключей», чтобы создать новую пару открытый/закрытый ключ с выбранным размером модуля; ключи появляются в виде блоков PEM, которые можно скопировать прямо в файлы конфигурации, скрипты или другой инструмент. Элемент управления «Операция» выбирает RSA-OAEP (шифрование с открытым ключом) или RSA-PSS (цифровые подписи, оба с SHA-256), а элемент управления «Направление» переключает между прямым и обратным ходом, так что вы можете зашифровать, а затем расшифровать, или подписать, а затем проверить. Разработчики, студенты и инженеры по безопасности используют его, чтобы тестировать криптографические процессы, изучать, как работают асимметричные ключи, или быстро получить одноразовую пару ключей PEM без установки OpenSSL. Поскольку инструмент опирается на встроенный в браузер Web Crypto, результаты соответствуют стандартам, а ваш закрытый ключ никогда не покидает страницу.

Как пользоваться Генератор ключей RSA и шифрование/подпись

  1. Откройте «Настройки» и выберите размер ключа: 2048, 3072 или 4096 бит.
  2. Выберите «Операцию»: Шифрование (RSA-OAEP) или Подпись (RSA-PSS) — это определяет алгоритм генерируемых ключей.
  3. Нажмите «Сгенерировать пару ключей»; открытый и закрытый ключи появятся в формате PEM, и их можно скопировать кнопками копирования.
  4. Установите «Направление» на Шифрование/Подпись (прямое) или Расшифровка/Проверка (обратное).
  5. Введите сообщение в поле «Открытый текст», а для обратного направления вставьте base64-шифртекст или подпись во второе поле.
  6. Прочитайте результат, который обновляется автоматически по мере ввода, и скопируйте его.

Примеры

Зашифровать короткое сообщение с помощью RSA-OAEP

Ввод

Операция: Шифрование, Направление: Шифрование, Открытый текст: hello world

Вывод

Base64-шифртекст вроде kQf8...==, который может расшифровать только соответствующий закрытый ключ.

Туда и обратно: расшифруйте то, что только что зашифровали

Ввод

Операция: Шифрование, Направление: Расшифровка, Шифртекст: kQf8...==

Вывод

hello world

Подписать и проверить с помощью RSA-PSS

Ввод

Операция: Подпись, Направление: Подпись, Сообщение: invoice #42

Вывод

Base64-подпись; переключите Направление на Проверку, вставьте её обратно, и результат покажет «Подпись действительна».

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

Отправляется ли что-нибудь на сервер?
Нет. Генерация ключей, шифрование, расшифровка, подпись и проверка выполняются локально через Web Crypto API браузера. Ваш закрытый ключ и открытый текст остаются на странице и никогда не загружаются и не сохраняются, поэтому инструмент работает офлайн.
Почему я не могу шифровать ключами, созданными для подписи?
Ключи RSA-OAEP и RSA-PSS привязываются к своему алгоритму при создании. Если вы меняете «Операцию», сгенерируйте новую пару ключей, чтобы ключи соответствовали выбранному алгоритму.
Сколько текста может зашифровать RSA-OAEP?
RSA шифрует только небольшие данные — примерно размер ключа за вычетом дополнения (для ключей 2048 бит около 190 байт). Для более длинных данных реальные системы шифруют данные симметричным ключом и оборачивают с помощью RSA только сам этот ключ.
В каком формате находятся ключи?
Открытый ключ экспортируется как SPKI, а закрытый — как PKCS#8, оба обёрнуты в стандартный PEM (-----BEGIN PUBLIC KEY----- / -----BEGIN PRIVATE KEY-----), тот же формат, который принимают OpenSSL и большинство библиотек.
Какие хеш и дополнение используются?
Оба алгоритма используют SHA-256. Подписи RSA-PSS используют 32-байтовую соль, а RSA-OAEP использует SHA-256 для генерации маски, что соответствует распространённым значениям по умолчанию.

Похожие инструменты