Skip to main content
CheckTown
Generatory

Generator kluczy RSA: Tworz pary kluczy RSA online

Opublikowano 5 min czytania
W tym artykule

Zrozumienie szyfrowania RSA

RSA to jeden z fundamentalnych algorytmów kryptografii klucza publicznego, używany do zabezpieczania wszystkiego, od ruchu webowego po szyfrowanie e-maili i podpisy cyfrowe. Działa poprzez generowanie dwóch matematycznie powiązanych kluczy — klucza publicznego, którego każdy może użyć do szyfrowania danych lub weryfikacji podpisów, oraz klucza prywatnego, którego używa tylko właściciel do odszyfrowywania danych lub tworzenia podpisów. Bezpieczeństwo opiera się na matematycznej trudności faktoryzacji iloczynu dwóch bardzo dużych liczb pierwszych.

Pomimo pojawienia się nowszych algorytmów, takich jak kryptografia krzywych eliptycznych, RSA pozostaje niezbędny w wielu systemach. Jest domyślnym algorytmem podpisywania certyfikatów X.509 używanych w HTTPS, wymaganym algorytmem w wielu ramach zgodności i jedyną opcją obsługiwaną przez niektóre starsze systemy. Zrozumienie generowania kluczy RSA pomaga podejmować świadome decyzje dotyczące rozmiarów kluczy, formatów wyjściowych i zastosowania różnych algorytmów w infrastrukturze bezpieczeństwa.

Jak korzystać z generatora kluczy RSA

Generator kluczy RSA od CheckTown tworzy pary kluczy w Twojej przeglądarce przy użyciu Web Crypto API, zapewniając bezpieczne generowanie po stronie klienta.

  • Wybierz rozmiar klucza — 2048 bitów (zalecane minimum), 3072 bity (odpowiednie dla większości zastosowań) lub 4096 bitów (najwyższe bezpieczeństwo, wolniejsze operacje)
  • Wybierz format wyjściowy — PEM (kodowany Base64, powszechnie używany w serwerach webowych i OpenSSL) lub JWK (format JSON, popularny w API webowych i bibliotekach JWT)
  • Kliknij Generuj, aby utworzyć parę kluczy — klucz prywatny i klucz publiczny pojawią się w odpowiednich polach
  • Skopiuj lub pobierz klucze — użyj klucza publicznego do szyfrowania lub weryfikacji, a klucz prywatny przechowuj bezpiecznie do odszyfrowywania lub podpisywania

Wypróbuj za darmo — bez rejestracji

Generuj klucze RSA →

Rozmiar klucza RSA a bezpieczeństwo

Wybór odpowiedniego rozmiaru klucza RSA to balans między siłą bezpieczeństwa a wydajnością. Większe klucze są bezpieczniejsze, ale wolniejsze przy operacjach szyfrowania i podpisywania.

  • 2048 bitów to aktualnie zalecane minimum według NIST i większości standardów branżowych — zapewnia odpowiednie bezpieczeństwo do około 2030 roku, ale powinno być traktowane jako minimum, nie jako wybór długoterminowy
  • 3072 bity są zalecane dla systemów, które muszą pozostać bezpieczne po 2030 roku — zapewniają równoważny poziom bezpieczeństwa 128 bitów i stanowią optymalny wybór dla większości nowych wdrożeń
  • 4096 bitów zapewnia najwyższy poziom bezpieczeństwa RSA i jest zalecane dla urzędów certyfikacji, długożyjących kluczy podpisywania i systemów o wysokiej wartości, gdzie koszt wydajnościowy większych kluczy jest akceptowalny

Najczesciej zadawane pytania

Jaka jest różnica między formatem PEM a JWK?

PEM (Privacy Enhanced Mail) to format kodowany w Base64, opakowany w linie nagłówka i stopki, takie jak BEGIN PUBLIC KEY i END PUBLIC KEY. Jest to standardowy format dla OpenSSL, serwerów webowych i urzędów certyfikacji. JWK (JSON Web Key) reprezentuje klucz jako obiekt JSON z nazwanymi polami dla każdego komponentu matematycznego. Jest używany w aplikacjach webowych, systemach OAuth i podpisywaniu tokenów JWT, gdzie JSON jest natywnym formatem danych.

Czy RSA jest nadal bezpieczne w użyciu?

Tak, RSA z odpowiednimi rozmiarami kluczy pozostaje bezpieczne do bieżącego użytku. Ważne jest jednak, aby używać co najmniej 2048 bitów, a dla nowych systemów preferowane jest 3072 lub 4096 bitów. RSA ostatecznie stanie się podatne na komputery kwantowe uruchamiające algorytm Shora, ale praktyczne komputery kwantowe zdolne do złamania RSA nie są spodziewane przez co najmniej dekadę. Dla nowych projektów bez ograniczeń starszych systemów rozważ algorytmy krzywych eliptycznych, takie jak Ed25519, które oferują równoważne bezpieczeństwo przy mniejszych kluczach.

Czy mogę używać wygenerowanych kluczy do podpisywania JWT?

Tak. Klucze RSA są powszechnie używane do podpisywania i weryfikacji JSON Web Tokens. Użyj algorytmów RS256, RS384 lub RS512 (odpowiednio RSA z SHA-256, SHA-384 lub SHA-512). Klucz prywatny podpisuje token na Twoim serwerze, a klucz publiczny może być udostępniony dowolnej usłudze, która musi zweryfikować token. Format wyjściowy JWK jest szczególnie wygodny dla bibliotek JWT, ponieważ większość z nich akceptuje klucze bezpośrednio w formacie JWK.

Powiązane narzędzia