Klasyka — sprawdzona od 1977 roku
Klasyczny algorytm asymetryczny oparty o problem faktoryzacji dużych liczb pierwszych. Wspierany przez 100% systemów, urządzeń sieciowych i przeglądarek.
Tworzy parę klucz + CSR w Twojej przeglądarce. Klucz NIGDY nie trafia na serwer.
.key powinien mieć uprawnienia chmod 600.
Większość generatorów CSR online działa po stronie serwera — to znaczy, że Twój klucz prywatny jest tworzony i może być przechwycony na serwerze dostawcy. Nasz generator jest inny: cała operacja odbywa się w Twojej przeglądarce, używając natywnego Web Crypto API. Klucz prywatny jest tworzony lokalnie, nigdy nie opuszcza Twojego komputera. To bezpieczeństwo na poziomie używania openssl w terminalu — z wygodą prostego formularza.
Klucz prywatny powstaje w pamięci RAM przeglądarki i nie trafia na żaden serwer.
Nie musisz mieć Linux, znajomości terminalu, ani konfigurowania openssl.
P-256 / P-384 / P-521 — szybsze i nowocześniejsze niż RSA.
Wygenerowany CSR akceptują Certum, DigiCert, Sectigo, GlobalSign, Let's Encrypt.
Cała operacja zajmuje od 100 ms (EC P-256) do 10 sekund (RSA 4096), zależnie od wybranego algorytmu.
Common Name (Twoja domena), opcjonalnie SAN-y i dane firmy. Wybierz algorytm — RSA 2048 (standard) lub EC P-256 (nowoczesny).
Web Crypto API tworzy parę klucz publiczny + prywatny lokalnie. Następnie buduje strukturę CSR (X.509) i podpisuje ją Twoim kluczem.
Otrzymasz 2 pliki PEM — CSR (do wysłania CA) i klucz prywatny (zachowaj go!). Możesz pobrać lub skopiować.
Skopiuj CSR i wklej w panelu zamawiania certyfikatu (Certum, DigiCert). CA wystawi certyfikat i odeśle go Tobie.
Oba są bezpieczne i akceptowane przez wszystkie nowoczesne urzędy certyfikacji. Wybór zależy od Twoich priorytetów.
Klasyczny algorytm asymetryczny oparty o problem faktoryzacji dużych liczb pierwszych. Wspierany przez 100% systemów, urządzeń sieciowych i przeglądarek.
Algorytm oparty o krzywe eliptyczne nad ciałem skończonym. Standaryzowany przez NIST. Domyślny wybór nowoczesnej infrastruktury (Cloudflare, Google).
| Algorytm | Bezpieczeństwo (równoważne) | Czas generowania | Typowe zastosowanie |
|---|---|---|---|
| RSA 2048 | 112 bit / standard | ~1 s | Kompatybilność, certyfikaty SSL |
| RSA 3072 | 128 bit / wyższe | ~3 s | Korporacje, bankowość |
| RSA 4096 | 152 bit / maksymalne | ~10 s | Root CA, kwalifikowane |
| EC P-256 | 128 bit / wysokie | <100 ms | Domyślne dla nowych systemów |
| EC P-384 | 192 bit / bardzo wysokie | ~200 ms | EV, instytucje rządowe |
| EC P-521 | 256 bit / maksymalne | ~500 ms | Top secret, kryptografia wojskowa |
Nie trafia — i nie ma takiej możliwości technicznej. Generator używa wyłącznie JavaScript w Twojej przeglądarce + natywne Web Crypto API. Możesz to zweryfikować otwierając DevTools (F12) → zakładka "Network" przed kliknięciem "Generuj". Po kliknięciu zobaczysz, że nie wysyłają się żadne requesty zawierające klucz. Cały kod jest też do wglądu — kliknij "View Page Source" lub sprawdź /static/js/vendor/pkijs-bundle.min.js.
EC P-256 oferuje wyższe bezpieczeństwo (128 bit) niż RSA 2048 (112 bit), przy znacznie szybszym handshake TLS i mniejszym kluczu (256 vs 2048 bit). EC bazuje na innym problemie matematycznym (krzywe eliptyczne) i jest nowocześniejszą alternatywą. Wszystkie aktualne CA wspierają EC. Jeśli nie masz konkretnych powodów aby trzymać się RSA — wybierz EC P-256.
Tak, wszystkie — od kilku lat EC jest standardowo wspierane. Certum, DigiCert, Sectigo, GlobalSign, Let's Encrypt i pozostałe duże CA bez problemu wystawią certyfikat na podstawie CSR z kluczem ECDSA P-256 lub P-384. Cloudflare wręcz domyślnie używa EC dla swoich klientów. Jedyne wyjątki to bardzo stare urządzenia sieciowe (sprzed 2015) i niektóre kwalifikowane podpisy elektroniczne — tam może być wymagane RSA.
Zostaje Ci tylko jedna opcja: wygenerować nowy CSR od zera. Klucz prywatny żyje wyłącznie w pamięci RAM przeglądarki — gdy zamkniesz kartę lub odświeżysz stronę, jest bezpowrotnie tracony. Nikt nie może go odzyskać, nawet my (bo nigdy go nie widzieliśmy). Dlatego: od razu po wygenerowaniu kliknij "Pobierz .key" i zachowaj plik w bezpiecznym miejscu. Idealnie z backupem (np. szyfrowany USB, menedżer haseł).
Klucz jest w formacie PKCS#8 PEM (nagłówki -----BEGIN PRIVATE KEY-----). To uniwersalny standard akceptowany przez Apache, Nginx, Java, OpenSSL i większość innych narzędzi. Nie szyfrujemy klucza hasłem — jeśli chcesz dodać hasło, użyj openssl: openssl pkcs8 -in key.pem -topk8 -out encrypted.pem.
Tak. W polu Common Name wpisz *.example.com. To pokryje wszystkie subdomeny pierwszego poziomu (mail.example.com, www.example.com, app.example.com), ale nie głębsze (foo.bar.example.com) ani głównej domeny (example.com). Jeśli chcesz pokryć też main domain, dodaj ją w polu SAN: example.com.
Tak — po pierwszym załadowaniu strony i bibliotek, możesz odłączyć internet. Generowanie CSR działa w 100% lokalnie. To dodatkowa warstwa bezpieczeństwa: jeśli chcesz absolutnej pewności że nic nie wysyłasz, odłącz Wi-Fi przed kliknięciem "Generuj". Po wygenerowaniu możesz wrócić do połączenia.
Dla RSA 2048:
$ openssl req -new -newkey rsa:2048 -nodes \
-keyout key.pem -out csr.pem \
-subj "/CN=example.com/O=Firma Sp z o.o./C=PL"Dla EC P-256:
$ openssl ecparam -name prime256v1 -genkey -noout -out key.pem
$ openssl req -new -key key.pem -out csr.pem \
-subj "/CN=example.com/O=Firma Sp z o.o./C=PL"To narzędzie zostało zaprojektowane z jednym głównym priorytetem: klucz prywatny nigdy nie ma prawa opuścić Twojej przeglądarki. Wszystkie inne funkcje są pod-rzędne tej zasadzie:
window.crypto.subtle Web Crypto API.Niezbędne cookies są zawsze włączone. Dodatkowo używamy cookies analitycznych (Google Analytics) i marketingowych — ale tylko za Twoją zgodą. Szczegóły w Polityce cookies.