mały|Protokół HTTPS HTTPS () – protokół HTTP chroniony przy pomocy szyfrowania protokołu TLS (dawniej SSL) i ustandaryzowany w dokumencie RFC 2818 pod rzadziej używaną nazwą HTTP Over TLS. Szyfrowanie komunikacji w systemie od końca do końca ma zapobiegać jej przechwytywaniu między klientem i serwerem (np. atak man in the middle) czy wręcz modyfikacji przesyłanych danych, zanim dotrą do celu.
W przeciwieństwie do niezabezpieczonego HTTP, którego serwery nasłuchują na porcie 80, serwery obsługujące HTTPS nasłuchują domyślnie na porcie 443 protokołu TCP. Adresy URL zaczynają się od https://, podczas gdy adresy niezabezpieczonego HTTP od http://.
Ograniczenia i rozpowszechnienie Protokół HTTP realizuje się warstwę wyżej od standardu TLS, który znajduje się na warstwie prezentacji. Najpierw następuje więc wymiana kluczy TLS, a dopiero później możliwe jest przesłanie żądania HTTP. Historycznie uniemożliwiało to serwerom obsługiwanie wielu domen (bądź poddomen) z różnymi certyfikatami przy użyciu jednego adresu IP. Było to spowodowane brakiem informacji o tym, którego certyfikatu X.509 i klucza prywatnego należy użyć do odszyfrowania danych, ponieważ nagłówek HTTP Host jest przekazywany wewnątrz zaszyfrowanej części zapytania (którego z kolei nie można odszyfrować, nie znając domeny). Jedynym obejściem było użycie wspólnego certyfikatu dla wszystkich domen. Problem został zażegnany poprzez wprowadzenie do TLS rozszerzenia SNI (), które przechowuje informację o domenie w nieszyfrowanej postaciRozszerzenie to łączy się jednak ze szczególnymi implikacjami prywatności i bezpieczeństwa, bowiem pozwala na wgląd w szyfrowany ruch sieciowy. Serwery pośredniczące w ruchu posiadają możliwość śledzenia, z jakimi domenami łączy się przeglądarka użytkownika. Ponieważ w implementacjach HTTP starszych niż 1.1 osobny IP musiał odpowiadać jednej zabezpieczonej domenie, co umożliwiało mapowanie ruchu, nie pogarsza to poziomu prywatności użytkowników, ale także go nie podnosi..
W starszych wersjach HTTP szyfrowanie połączenia było rozszerzeniem protokołu. Począwszy od HTTP/2 mimo braku takiego wymogu w RFC, szyfrowanie stało się de facto wymogiem protokołu ze względu na stan implementacji w najpopularniejszych silnikach przeglądarek internetowych.
Zobacz też
S-HTTP
Przypisy
Kategoria:HTTP