Генератор пары ключей RSA
Сгенерируйте пару ключей RSA (открытый и закрытый) в стандартном формате PEM для тестов шифрования или подписи. Генерация использует встроенный в ваш браузер API WebCrypto: закрытый ключ создаётся локально и никогда не передаётся на сервер, в том числе на тот, где размещена эта страница.
Как это работает
RSA — это асимметричный алгоритм шифрования, основанный на паре математически связанных ключей: то, что зашифровано открытым ключом (или подписано закрытым), можно расшифровать (или проверить) только другим ключом пары. Инструмент напрямую вызывает crypto.subtle.generateKey — встроенную, прошедшую аудит реализацию RSA в браузере, — а затем экспортирует оба ключа в формат PEM (Base64 между заголовками -----BEGIN...-----), который напрямую используется большинством библиотек и инструментов (OpenSSL, Node.js, Python).
Какой размер ключа выбрать?
2048 бит — сегодня общепринятый рекомендуемый минимум, которого для большинства задач более чем достаточно на ближайшие годы. 3072 или 4096 бит дают дополнительный запас прочности ценой более медленных операций — для данных, которые должны оставаться защищёнными очень долго.
Что выбрать: «подпись» или «шифрование»?
Одна пара ключей RSA на практике обычно предназначена для одного технического применения: «подпись» (RSASSA-PKCS1-v1_5) служит для подтверждения подлинности документа без его сокрытия; «шифрование» (RSA-OAEP) делает содержимое нечитаемым для всех, у кого нет закрытого ключа. Выберите вариант, соответствующий вашей реальной задаче.
Конфиденциальность: генерация выполняется 100% локально через API WebCrypto вашего браузера — закрытый ключ ни в какой момент не отправляется и не сохраняется на сервере.