Większość aplikacji, które zależą od certyfikatów X.509, wymaga sprawdzania poprawności stanu certyfikatu używanego podczas operacji przeprowadzania uwierzytelniania, podpisywania i szyfrowania. Sprawdzanie okresu ważności i odwołania tego certyfikatu jest wykonywane dla wszystkich certyfikatów w łańcuchu certyfikatów aż do certyfikatu głównego. Jeśli certyfikat główny lub jakikolwiek inny w łańcuchu jest nieprawidłowy, wszystkie certyfikaty w łańcuchu znajdujące się poniżej uszkodzonego są również nieprawidłowe.

Sprawdzanie poprawności obejmuje następujące elementy:

  • Prawidłowość każdego podpisu certyfikatu.

  • Bieżącą datę i godzinę w każdym okresie ważności certyfikatu.

  • Uszkodzenia lub nieprawidłowości w każdym certyfikacie.

W każdym certyfikacie w łańcuchu jest dodatkowo sprawdzany stan odwołania. Sprawdzanie odwołań może być wykonywane zarówno za pomocą listy odwołania certyfikatów (CRL), jak i odpowiedzi protokołu stanu certyfikatów online (OCSP).

Co to jest protokół OCSP?

Obiekt odpowiadający w trybie online firmy Microsoft używa protokołu OCSP, który umożliwia odbiorcy certyfikatu przesłanie żądania stanu certyfikatu do obiektu odpowiadającego protokołu OCSP za pomocą protokołu HTTP. Ten obiekt odpowiadający protokołu OCSP zwraca ostateczną podpisaną cyfrowo odpowiedź określającą stan certyfikatu. Ilość danych otrzymanych dla każdego żądania jest stała niezależnie od liczby odwołanych certyfikatów w urzędzie certyfikacji.

Aby uzyskać więcej informacji, zobacz dokument RFC 2560, „X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP” (https://go.microsoft.com/fwlink/?LinkID=71068 (strona może zostać wyświetlona w języku angielskim)).

Obiekt odpowiadający w trybie online

Implementacja protokołu OCSP firmy Microsoft (Obiekt odpowiadający w trybie online) obejmuje składniki klienta i serwera. Składnik klienta jest wbudowany w bibliotekę CryptoAPI 2.0, natomiast składnik serwera jest oferowany jako nowa usługa zapewniana przez rolę serwera Usługi certyfikatów w usłudze Active Directory (AD CS). Współpracę składników klienta i serwera opisano w poniższych procesach:

  1. Gdy aplikacja próbuje zweryfikować certyfikat określający lokalizację obiektów odpowiadających protokołu OCSP, składnik klienta najpierw przeszukuje lokalną pamięć i pamięć podręczną dysku, aby znaleźć buforowaną odpowiedź protokołu OCSP zawierającą bieżące dane odwołań.

  2. Jeśli nie zostanie znaleziona akceptowalna odpowiedź buforowana, żądanie zostanie wysłane do obiektu odpowiadającego w trybie online za pomocą protokołu HTTP.

  3. Serwer proxy sieci Web obiektu odpowiadającego w trybie online dekoduje i weryfikuje żądanie. Jeśli żądanie jest prawidłowe, w pamięci podręcznej serwera proxy sieci Web sprawdzane są informacje dotyczące odwołań niezbędne do wypełnienia żądania. Jeśli bieżące informacje nie są dostępne w pamięci podręcznej, żądanie jest przesłane dalej do usługi obiektów odpowiadających w trybie online.

  4. Usługa obiektów odpowiadających w trybie online otrzymuje żądanie i sprawdza lokalną listę CRL, jeśli jest ona dostępna, a także buforowaną kopię najnowszej listy CRL wystawioną przez urząd certyfikacji.

  5. Jeśli certyfikat nie występuje na lokalnej ani na buforowanej liście odwołania, dostawca odwołań uzyskuje zaktualizowaną listę CRL urzędu certyfikacji (jeśli jest dostępna) z lokalizacji określonych w konfiguracji odwołania, aby sprawdzić stan certyfikatu. Z kolei dostawca zwraca stan certyfikatu do usługi obiektów odpowiadających w trybie online.

  6. Serwer proxy sieci Web koduje i wysyła odpowiedź z powrotem do klienta, aby powiadomić klienta, że certyfikat jest poprawny. Przechowuje też kopię odpowiedzi w pamięci podręcznej przez pewien ograniczony czas na wypadek, gdyby pojawiły się dodatkowe żądania stanu dotyczące tego certyfikatu.


Spis treści