Certyfikaty cyfrowe (X.509) — definicja, klasy i zastosowania
Certyfikaty cyfrowe (X.509) — definicja, klasy i zastosowania. Poznaj działanie certyfikatów, różnice klas (1–3) oraz zastosowania w zabezpieczeniach i transakcjach online.
Certyfikaty cyfrowe to elektroniczne "karty kredytowe", które poświadczają wiarygodność użytkownika podczas prowadzenia działalności gospodarczej lub dokonywania innych transakcji w sieci. Są one wydawane przez urząd certyfikacji (CA). Zawierają imię i nazwisko, numer seryjny, datę ważności, kopię klucza publicznego posiadacza certyfikatu (używanego do szyfrowania wiadomości i podpisów cyfrowych) oraz podpis cyfrowy urzędu wydającego certyfikat, dzięki czemu odbiorca może sprawdzić, czy certyfikat jest prawdziwy. Niektóre certyfikaty cyfrowe są zgodne ze standardem X.509. Certyfikaty cyfrowe mogą być przechowywane w rejestrach, dzięki czemu uwierzytelniający się użytkownicy mogą sprawdzać klucze publiczne innych użytkowników.
Budowa i podstawowe pola certyfikatu (X.509)
Certyfikat X.509 zawiera zestaw predefiniowanych pól, które pozwalają zidentyfikować posiadacza i określić sposób użycia klucza publicznego. Najważniejsze elementy to:
- Podmiot (Subject) – tożsamość właściciela certyfikatu (np. nazwa organizacji, imię i nazwisko, adres e‑mail).
- Wystawca (Issuer) – nazwa urzędu certyfikacji (CA), który podpisał certyfikat.
- Klucz publiczny – publiczna część pary kluczowej używana do szyfrowania i weryfikacji podpisów.
- Numer seryjny – unikatowy identyfikator certyfikatu nadany przez CA.
- Okres ważności – data rozpoczęcia i zakończenia ważności certyfikatu.
- Algorytm podpisu – informacja o algorytmie użytym przez CA do podpisania certyfikatu (np. RSA, ECDSA z SHA‑256).
- Rozszerzenia – m.in. Key Usage (do czego można używać klucza), Extended Key Usage (np. TLS, e‑mail, podpis kodu), identyfikatory alternatywne subiektu (SAN) i inne.
- Podpis cyfrowy CA – cyfrowe potwierdzenie autentyczności certyfikatu.
Standard X.509 i formaty
Standard X.509 definiuje strukturę certyfikatów używanych powszechnie w protokołach takich jak TLS/SSL, S/MIME czy IPSec. Certyfikaty mogą być zapisywane w formatach binarnych (DER) lub tekstowych (PEM, z zakodowanym base64 i nagłówkami -----BEGIN CERTIFICATE-----). Wersje X.509 (np. v3) pozwalają na rozszerzenia, które umożliwiają dodawanie nowych informacji i ograniczeń dotyczących użycia klucza.
Łańcuch zaufania i weryfikacja
Weryfikacja certyfikatu polega na sprawdzeniu:
- poprawności podpisu CA (czy certyfikat wystawcy podpisał dany certyfikat),
- czy wystawca należy do zaufanych urzędów (root CA obecne w magazynie zaufanych certyfikatów systemu lub przeglądarki),
- czy certyfikat nie wygasł (okres ważności),
- czy certyfikat nie został unieważniony (sprawdzenie CRL lub zapytanie OCSP),
- czy użycie certyfikatu odpowiada aktualnym potrzebom (Key Usage, EKU).
Najczęściej spotykanym mechanizmem jest łańcuch certyfikatów: certyfikat użytkownika jest podpisany przez pośredni CA, który z kolei ma certyfikat podpisany przez wyższy CA, a na końcu znajduje się root CA, którego zaufanie jest wbudowane w system lub przeglądarkę.
Unieważnianie certyfikatów (revocation)
Gdy klucz prywatny zostanie skompromitowany, dane właściciela ulegną zmianie lub certyfikat wystawiono błędnie, CA może unieważnić certyfikat. Dwa podstawowe mechanizmy sprawdzania unieważnienia to:
- CRL (Certificate Revocation List) – listy publikowane przez CA zawierające numery seryjne unieważnionych certyfikatów,
- OCSP (Online Certificate Status Protocol) – zapytanie online do serwisu OCSP zwracające aktualny status pojedynczego certyfikatu.
Główne zastosowania certyfikatów cyfrowych
- HTTPS/TLS – zabezpieczenie połączeń stron internetowych.
- Podpisy elektroniczne – uwierzytelnianie i nienaruszalność dokumentów elektronicznych (np. S/MIME, podpisy kwalifikowane tam, gdzie wymagane).
- Uwierzytelnianie użytkowników – logowanie do systemów za pomocą certyfikatów klienckich.
- Podpisy kodu – zapewnienie integralności i pochodzenia oprogramowania (np. sterowniki, aplikacje).
- Szyfrowanie poczty – wymiana zaszyfrowanych wiadomości e‑mail (S/MIME).
- VPN i sieci korporacyjne – uwierzytelnianie urządzeń i tunelowanie ruchu.
Gdzie przechowywać certyfikaty i klucze
Certyfikaty publiczne zazwyczaj przechowywane są w magazynach systemu operacyjnego, przeglądarki lub centralnych rejestrach. Klucze prywatne powinny być chronione: w plikach z ograniczonym dostępem, na tokenach sprzętowych (smartcard, USB) lub w modułach HSM. Ważne jest stosowanie silnych algorytmów i długości klucza oraz regularna rotacja i odnawianie certyfikatów.
Klasy certyfikatów — poziomy weryfikacji tożsamości
W praktyce różne systemy i urzędy certyfikacji stosują rozróżnienia poziomów pewności tożsamości (tzw. klasy lub poziomy assurance). Przykładowe, często spotykane klasy:
- Klasa 1 – podstawowy poziom: weryfikacja ograniczona, zwykle oparta jedynie na potwierdzeniu adresu e‑mail lub innym minimalnym identyfikatorze. Certyfikaty klasy 1 nie są zazwyczaj przeznaczone do zastosowań wymagających wysokiego poziomu pewności tożsamości.
- Klasa 2 – średni poziom: tożsamość weryfikowana na podstawie zaufanej, wstępnie zweryfikowanej bazy danych lub dokumentów (np. sprawdzenie danych firmy, rejestrów publicznych, dokumentów tożsamości wysłanych drogą elektroniczną z dodatkową kontrolą).
- Klasa 3 – wysoki poziom: wymaga osobistej obecności i potwierdzenia tożsamości przed organem rejestracyjnym lub przedstawieniem oryginalnych dokumentów w określony, zaufany sposób. Certyfikaty tej klasy są stosowane tam, gdzie wymagane jest silne uwierzytelnienie (np. dostęp do systemów wrażliwych, podpisy o znaczącej wadze prawnej).
W niektórych krajach i kontekstach pojawiają się dodatkowe kategorie, np. certyfikaty rozszerzone (EV) w przeglądarkach, które sygnalizują wyższy poziom weryfikacji podmiotu (głównie dla witryn internetowych). Różne instytucje mogą stosować własne kryteria dla poszczególnych klas.
Dobre praktyki
- Stosować silne algorytmy i odpowiednią długość klucza (np. RSA 2048+ lub krzywe eliptyczne).
- Chronić klucze prywatne (HSM, smartcard, dostęp z autoryzacją wieloskładnikową).
- Monitorować daty wygaśnięcia i odnawiać certyfikaty przed końcem ważności.
- Wdrażać mechanizmy sprawdzania unieważnienia (OCSP, CRL) w systemach korzystających z certyfikatów.
- Upewnić się, że łańcuch zaufania jest poprawny i że root CA pochodzi z zaufanego źródła.
Certyfikaty X.509 są fundamentem zaufania w sieci — umożliwiają bezpieczną wymianę informacji, uwierzytelnianie i podpisy cyfrowe. Znajomość ich struktury, cyklu życia i mechanizmów weryfikacji pomaga bezpiecznie projektować i używać systemy oparte na infrastrukturze klucza publicznego (PKI).
Pytania i odpowiedzi
P: Co to są certyfikaty cyfrowe?
O: Certyfikaty cyfrowe to elektroniczne "karty kredytowe", które potwierdzają Państwa wiarygodność podczas prowadzenia działalności gospodarczej lub innych transakcji w sieci.
P: Kto wydaje certyfikaty cyfrowe?
O: Certyfikaty cyfrowe są wydawane przez urząd certyfikacji (CA).
P: Jakie informacje zawiera certyfikat cyfrowy?
O: Certyfikat cyfrowy zawiera nazwisko posiadacza certyfikatu, numer seryjny, datę ważności, kopię klucza publicznego posiadacza certyfikatu (używanego do szyfrowania wiadomości i podpisów cyfrowych) oraz podpis cyfrowy urzędu wydającego certyfikat, aby odbiorca mógł sprawdzić, czy certyfikat jest prawdziwy.
P: Co to jest X.509?
O: X.509 to standard dla certyfikatów cyfrowych.
P: Jakie są klasy certyfikatów cyfrowych?
O: Klasy certyfikatów cyfrowych to klasa 1, klasa 2 i klasa 3.
P: Co to jest certyfikat cyfrowy klasy 1?
O: Klasa 1 określa certyfikat, który nie ma żadnej mocy prawnej, ponieważ proces walidacji opiera się tylko na ważnym identyfikatorze e-mail i nie wymaga bezpośredniej weryfikacji.
P: Co to jest certyfikat cyfrowy klasy 3?
O: Klasa 3 wymaga, aby osoba stawiła się przed organem rejestrującym i udowodniła swoją tożsamość.
Przeszukaj encyklopedię