Nodea — logo

OCSP stapling

OCSP stapling to optymalizacja protokołu TLS, w której serwer WWW przejmuje na siebie sprawdzanie, czy certyfikat SSL nie został unieważniony, i dołącza gotowy dowód jego ważności bezpośrednio do handshake. Nazwa pochodzi od angielskiego „to staple” (zszywać) — serwer „zszywa” odpowiedź OCSP z certyfikatem, dzięki czemu przeglądarka nie musi już samodzielnie odpytywać urzędu certyfikacji.

Jak działa OCSP stapling?

Certyfikat SSL może zostać unieważniony przed upływem terminu, dlatego przeglądarka powinna zweryfikować jego status. W klasycznym modelu OCSP (Online Certificate Status Protocol) robi to sama, wysyłając zapytanie do serwera urzędu certyfikacji — co opóźnia ładowanie strony i ujawnia CA, jakie witryny odwiedza użytkownik.

Przy staplingu inicjatywę przejmuje serwer WWW: to on cyklicznie pobiera od CA podpisaną, oznaczoną czasem odpowiedź o ważności certyfikatu, zapisuje ją w pamięci podręcznej i przy każdym nowym połączeniu HTTPS dołącza ją do handshake. Odpowiedź jest kryptograficznie podpisana przez CA, więc serwer nie może jej sfałszować, a przeglądarka ufa jej tak samo, jakby zapytała urząd bezpośrednio.

Zastosowanie w praktyce

OCSP stapling przyspiesza pierwsze połączenie z witryną, bo eliminuje dodatkowe zapytanie sieciowe do CA, oraz poprawia prywatność — urząd certyfikacji nie widzi już adresów IP i historii odwiedzin użytkowników. Rozwiązuje też problem dostępności: gdy serwer OCSP urzędu jest chwilowo niedostępny, strona nadal ładuje się poprawnie, korzystając ze zbuforowanej odpowiedzi.

Technika jest domyślnie wspierana przez popularne serwery (Apache, Nginx, LiteSpeed) i współpracuje z darmowymi certyfikatami Let's Encrypt. Na dobrze skonfigurowanym hostingu czy VPS-ie stapling działa bez ingerencji użytkownika i jest jednym z drobnych, ale zauważalnych czynników wpływających na szybkość ładowania witryny.

Powiązane pojęcia

Najczęstsze pytania

Czy OCSP stapling trzeba samodzielnie konfigurować?

Na hostingu współdzielonym zwykle nie — panele i serwery WWW (Apache, Nginx, LiteSpeed) mają stapling włączony domyślnie. Na własnym VPS-ie wystarczy dopisać kilka dyrektyw do konfiguracji serwera i wskazać plik z łańcuchem certyfikatów. Warto potem sprawdzić działanie testem SSL, bo błędna ścieżka do łańcucha to najczęstsza przyczyna niedziałającego staplingu.