HTTP staje się bezpieczny dzięki włączeniu Transport Layer Security (TLS) lub jego poprzednika, Secure Sockets Layer (SSL). Protokoły te szyfrują dane przesyłane pomiędzy klientem a serwerem, zapobiegając nieautoryzowanemu dostępowi i manipulacji. Gdy połączenie HTTP jest zabezpieczone za pomocą TLS/SSL, staje się ono HTTPS, co oznacza Hypertext Transfer Protocol Secure.
To, co sprawia, że protokół HTTP jest bezpieczny, to szyfrowanie zapewniane przez TLS/SSL. Szyfrowanie to gwarantuje, że dane wymieniane pomiędzy klientem a serwerem będą nieczytelne dla każdego, kto je przechwyci. Oprócz szyfrowania, protokół HTTPS zapewnia integralność danych, zapewniając, że dane wysyłane i odbierane nie zostały zmienione, oraz uwierzytelnianie, potwierdzające tożsamość serwera za pomocą certyfikatów cyfrowych wydawanych przez zaufane urzędy certyfikacji (CA).
Aby żądania HTTP były bezpieczne, serwer musi obsługiwać protokół TLS/SSL i być skonfigurowany do korzystania z niego. Serwer powinien posiadać ważny certyfikat SSL/TLS wydany przez zaufany urząd certyfikacji. Gdy klient wysyła żądanie, powinien w adresie URL użyć „https://” zamiast „http://”. Serwer i klient nawiązują następnie bezpieczne połączenie, w którym przesyłane dane są szyfrowane.
Aby zabezpieczyć połączenie HTTP, uzyskaj i zainstaluj certyfikat SSL/TLS na serwerze. Skonfiguruj serwer WWW, aby korzystał z tego certyfikatu i przekierowywał żądania HTTP do HTTPS. Upewnij się, że wszystkie zasoby (takie jak obrazy, skrypty i arkusze stylów) w witrynie są żądane za pośrednictwem protokołu HTTPS. Regularnie aktualizuj i odnawiaj certyfikat SSL/TLS oraz konfiguruj serwer tak, aby korzystał z silnych algorytmów i protokołów szyfrowania.
HTTP staje się HTTPS po włączeniu TLS/SSL na serwerze internetowym. Wiąże się to z uzyskaniem certyfikatu SSL/TLS od zaufanego urzędu certyfikacji i zainstalowaniem go na serwerze. Następnie serwer jest konfigurowany tak, aby akceptował i ustanawiał bezpieczne połączenia przy użyciu tego certyfikatu. Gdy klient żąda adresu URL HTTPS, serwer i klient dokonują uzgadniania w celu ustanowienia bezpiecznego połączenia, podczas którego serwer przedstawia swój certyfikat, a klient go weryfikuje. Po nawiązaniu bezpiecznego połączenia dane są szyfrowane i bezpiecznie przesyłane.