Dopasuj klucz i certyfikat
Sprawdza czy klucz prywatny odpowiada certyfikatowi (modulus match).
Dlaczego trzeba sprawdzać, czy klucz pasuje do certyfikatu?
Każdy certyfikat SSL działa w parze z konkretnym kluczem prywatnym, który wygenerowałeś razem z CSR. Jeśli na serwerze wgrasz certyfikat i niewłaściwy klucz — serwer odmówi uruchomienia, a Ty zobaczysz błąd typu
nginx: [emerg] SSL_CTX_use_PrivateKey("/etc/ssl/key.pem") failed lub
[Apache] private key does not match certificate.
Nasze narzędzie pozwala sprawdzić dopasowanie zanim wgrasz cokolwiek na produkcję.
Apache/Nginx/IIS odmówił uruchomienia — sprawdź dopasowanie zanim zaczniesz szukać w innym miejscu.
Przenosisz certyfikat z jednego serwera na drugi — upewnij się, że klucz i cert są w komplecie.
Masz w folderze kilka kluczy i certyfikatów — dowiedz się, które tworzą parę.
Certyfikat przyszedł, ale masz wątpliwości — sprawdź parowanie z Twoim lokalnym kluczem.
Jak działa dopasowanie kryptograficzne?
Pod spodem to matematyka, ale idea jest prosta. Każdy klucz prywatny odpowiada dokładnie jednemu kluczowi publicznemu — i to klucz publiczny jest wpisany w certyfikacie.
Procedura naszej weryfikacji:
-
1
Ładujemy klucz prywatny (z uwzględnieniem hasła, jeśli zaszyfrowany) i obliczamy z niego klucz publiczny metodą matematyczną. Dla RSA — to tzw. moduł (n) i wykładnik (e). Dla EC — punkt na krzywej.
-
2
Wyciągamy klucz publiczny z certyfikatu — jest on tam zapisany jawnie, jako osobne pole (Subject Public Key Info).
-
3
Porównujemy oba klucze publiczne bit po bicie. Jeśli są identyczne — para pasuje. Jeśli się różnią choćby w jednym bicie — nie pasuje. Nie ma stanu "częściowo pasuje".
Najczęstsze pytania i problemy
Wynik "NIE pasuje" — co robić dalej?
Oznacza to, że masz niewłaściwy klucz prywatny — nie ten, który został użyty do wygenerowania CSR. Możliwe przyczyny:
- Wygenerowałeś drugi CSR na tym samym serwerze i podmieniłeś klucz
- Nastąpiła reinstalacja systemu, a klucz został utracony
- Masz dwa klucze w folderze i wziąłeś niewłaściwy
- CA wystawił certyfikat na podstawie cudzego CSR (mało prawdopodobne, ale zdarza się)
Rozwiązanie: poszukaj właściwego klucza (.key w backupach, /etc/ssl/private/, ~/.ssh/). Jeśli nie znajdziesz — zamów re-issue certyfikatu z nowym CSR.
Jak sprawdzić dopasowanie lokalnie, bez wysyłania klucza?
Użyj polecenia openssl na swoim komputerze:
$ openssl rsa -noout -modulus -in key.pem | openssl sha256
$ openssl x509 -noout -modulus -in cert.pem | openssl sha256Jeśli oba polecenia zwrócą identyczny skrót SHA-256, klucz pasuje do certyfikatu. Dla kluczy EC zamień openssl rsa na openssl ec.
Jak odszyfrować klucz prywatny, jeśli jest zaszyfrowany hasłem?
Zaszyfrowany klucz rozpoznasz po nagłówku -----BEGIN ENCRYPTED PRIVATE KEY----- lub Proc-Type: 4,ENCRYPTED. W naszym narzędziu po prostu wpisz hasło w pole "Hasło do klucza" — obsłużymy resztę. Żeby odszyfrować lokalnie do pliku:
$ openssl rsa -in encrypted.key -out decrypted.keyJakie formaty kluczy prywatnych obsługujecie?
Wspieramy wszystkie popularne formaty PEM:
-----BEGIN PRIVATE KEY-----(PKCS#8, standard)-----BEGIN RSA PRIVATE KEY-----(PKCS#1, stary RSA)-----BEGIN EC PRIVATE KEY-----(stary EC)-----BEGIN ENCRYPTED PRIVATE KEY-----(zaszyfrowany PKCS#8)
Dla kluczy w formacie DER / PFX użyj najpierw narzędzia Konwertuj certyfikat.
Czy można sprawdzić dopasowanie bez wysyłania klucza do Was?
Tak — preferujemy właśnie to podejście dla kluczy wysokiego ryzyka (np. klucze kwalifikowanych certyfikatów EV, klucze infrastruktury banków). Użyj openssl w swoim terminalu (patrz pytanie wyżej). To jest 100% offline — klucz nigdy nie opuszcza Twojego komputera. Nasze narzędzie online jest wygodne dla typowych zastosowań, gdzie kompromis wygoda/bezpieczeństwo jest akceptowalny.
Co zrobić, gdy nie mam już klucza prywatnego?
Klucz prywatny nie jest odzyskiwalny — nikt, nawet CA, nie przechowuje Twojego klucza. Jeśli go zgubisz, certyfikat staje się bezużyteczny. Rozwiązanie: wygeneruj nowy CSR (z nowym kluczem) i zamów re-issue certyfikatu. W większości CA (w tym Certum) jest to bezpłatne w ramach aktywnego certyfikatu. Jako lekcja na przyszłość — zawsze rób backup klucza prywatnego od razu po wygenerowaniu CSR.
Czy klucz z PFX mogę tu sprawdzić?
Nie bezpośrednio. PFX to kontener zawierający klucz + cert + chain w jednym pliku — nie ma sensu sprawdzać parowania wewnątrz niego. Ale jeśli chcesz wyekstraktować klucz i cert z PFX, użyj naszego narzędzia Konwertuj certyfikat z opcją PFX → PEM. Po ekstrakcji dostaniesz klucz i cert jako osobne pliki, które możesz tu porównać.
Bezpieczeństwo klucza prywatnego
Klucz prywatny to najważniejszy element Twojej infrastruktury SSL. Jeśli wpadnie w niepowołane ręce, atakujący może odszyfrować cały ruch HTTPS przechwycony w przeszłości i podszywać się pod Twoją stronę. Dlatego:
- Klucz przetwarzamy wyłącznie w pamięci RAM — po obliczeniu klucza publicznego jest on natychmiast usuwany.
- Nie logujemy zawartości — w logach widać tylko HTTP status i timestamp.
- HTTPS TLS 1.3 — komunikacja jest szyfrowana między Tobą a naszym serwerem.
- Dla kluczy produkcyjnych wysokiego ryzyka — rekomendujemy użycie openssl lokalnie. Zawsze masz wybór między wygodą online a 100% offline.
- Po sprawdzeniu przeładuj stronę — w cache przeglądarki nie pozostaną żadne dane wpisane do formularza.