Skip to main content
CheckTown
Генератори

Генератор ключiв RSA: Створiть пару ключiв RSA онлайн

Опубліковано 5 хв читання
У цій статті

Розуміння шифрування RSA

RSA — один з фундаментальних алгоритмів криптографії з відкритим ключем, що використовується для захисту всього — від вебтрафіку до шифрування email та цифрових підписів. Він працює шляхом генерації двох математично пов'язаних ключів — відкритого ключа, який будь-хто може використовувати для шифрування даних або перевірки підписів, та приватного ключа, який лише власник використовує для дешифрування даних або створення підписів. Безпека спирається на математичну складність факторизації добутку двох дуже великих простих чисел.

Незважаючи на появу новіших алгоритмів, таких як криптографія на еліптичних кривих, RSA залишається необхідним у багатьох системах. Це алгоритм підпису за замовчуванням для сертифікатів X.509, що використовуються в HTTPS, обов'язковий алгоритм у багатьох фреймворках відповідності та єдина опція, підтримувана деякими застарілими системами. Розуміння генерації ключів RSA допомагає приймати обґрунтовані рішення щодо розмірів ключів, форматів виводу та місця застосування різних алгоритмів у вашій інфраструктурі безпеки.

Як використовувати генератор ключів RSA

Генератор ключів RSA від CheckTown створює пари ключів у вашому браузері за допомогою Web Crypto API для безпечної генерації на стороні клієнта.

  • Виберіть розмір ключа — 2048 біт (рекомендований мінімум), 3072 біти (підходить для більшості завдань) або 4096 біт (найвища безпека, повільніші операції)
  • Виберіть формат виводу — PEM (кодування Base64, широко використовується у веб-серверах та OpenSSL) або JWK (формат JSON, поширений у веб-API та бібліотеках JWT)
  • Натисніть «Згенерувати» для створення пари ключів — приватний та відкритий ключі з'являться у відповідних полях
  • Скопіюйте або завантажте ключі — використовуйте відкритий ключ для шифрування або перевірки, а приватний ключ зберігайте надійно для дешифрування або підпису

Спробуйте безкоштовно — реєстрація не потрібна

Згенерувати ключі RSA →

Розмір ключа RSA та безпека

Вибір правильного розміру ключа RSA балансує надійність захисту та продуктивність. Більші ключі є безпечнішими, але повільнішими для операцій шифрування та підпису.

  • 2048 біт — поточний мінімум, рекомендований NIST та більшістю галузевих стандартів — він забезпечує достатню безпеку приблизно до 2030 року, але має розглядатися як базовий рівень, а не довгостроковий вибір
  • 3072 біти рекомендовано для систем, що повинні залишатися захищеними після 2030 року — це забезпечує еквівалент 128-бітного рівня безпеки та є оптимальним вибором для більшості нових розгортань
  • 4096 біт забезпечує найвищий рівень безпеки RSA і рекомендується для центрів сертифікації, довготривалих ключів підпису та високоцінних систем, де витрати на продуктивність від більших ключів є прийнятними

Поширені запитання

Яка різниця між форматами PEM та JWK?

PEM (Privacy Enhanced Mail) — це формат у кодуванні Base64, обгорнутий рядками заголовка та підвалу, такими як BEGIN PUBLIC KEY та END PUBLIC KEY. Це стандартний формат для OpenSSL, веб-серверів та центрів сертифікації. JWK (JSON Web Key) представляє ключ як JSON-об'єкт з іменованими полями для кожного математичного компонента. Він використовується у вебзастосунках, системах OAuth та підписі токенів JWT, де JSON є рідним форматом даних.

Чи безпечно досі використовувати RSA?

Так, RSA з відповідними розмірами ключів залишається безпечним для поточного використання. Проте важливо використовувати принаймні 2048 біт, а для нових систем переважно 3072 або 4096 біт. RSA з часом стане вразливим до квантових комп'ютерів, що виконують алгоритм Шора, але практичні квантові комп'ютери, здатні зламати RSA, не очікуються щонайменше ще десятиліття. Для нових проєктів без обмежень сумісності розгляньте алгоритми на еліптичних кривих, такі як Ed25519, що забезпечують еквівалентну безпеку з меншими ключами.

Чи можу я використовувати згенеровані ключі для підпису JWT?

Так. Ключі RSA широко використовуються для підпису та перевірки JSON Web Tokens. Використовуйте алгоритми RS256, RS384 або RS512 (RSA з SHA-256, SHA-384 або SHA-512 відповідно). Приватний ключ підписує токен на вашому сервері, а відкритий ключ може бути переданий будь-якому сервісу, якому потрібно перевірити токен. Формат виводу JWK особливо зручний для бібліотек JWT, оскільки більшість приймають ключі безпосередньо у форматі JWK.

Пов'язані інструменти