Protokół HTTPS

HTTPS (ang. Hypertext Transfer Protocol Secure) – 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[1]. 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[1].

W przeciwieństwie do niezabezpieczonego HTTP, którego serwery nasłuchują na porcie 80[2], serwery obsługujące HTTPS nasłuchują domyślnie na porcie 443 protokołu TCP[1]. Adresy URL zaczynają się od https://, podczas gdy adresy niezabezpieczonego HTTP od http://[1].

Ograniczenia i rozpowszechnienie

edytuj

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 (ang. Server Name Indication), które przechowuje informację o domenie w nieszyfrowanej postaci[3].

Procent domen w Internecie serwujących strony domyślnie po HTTPS na przestrzeni lat
Źródło: W3Tech, marzec 2023[4][5]

W starszych wersjach HTTP szyfrowanie połączenia było rozszerzeniem protokołu. Począwszy od HTTP/2 mimo braku takiego wymogu w RFC[6], szyfrowanie stało się de facto wymogiem protokołu ze względu na stan implementacji w najpopularniejszych silnikach przeglądarek internetowych[7].

Zobacz też

edytuj

Przypisy

edytuj
  1. a b c d Eric Rescorla, HTTP Over TLS, RFC 2818, IETF, maj 2000, DOI10.17487/RFC2818, ISSN 2070-1721, OCLC 943595667 (ang.).
  2. R. Fielding i inni, Hypertext Transfer Protocol -- HTTP/1.1, RFC 2616, IETF, czerwiec 1999, DOI10.17487/RFC2616, ISSN 2070-1721, OCLC 943595667 (ang.).
  3. Rozszerzenie 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.
  4. Historical yearly trends in the usage statistics of site elements for websites. w3techs.com. [dostęp 2023-03-03]. (ang.).
  5. Sam Soltano: 20% of all websites and 53.9% of the top 1000 sites redirect to https.. w3techs.com, 2017-08-08. [dostęp 2023-03-03]. (ang.).
  6. Mark Nottingham: HTTP/2 Implementation Status. 2015-07-15. [dostęp 2022-09-06].
  7. HTTP/2 Frequently Asked Questions. [dostęp 2022-09-06]. (ang.).

📚 Artikel Terkait di Wikipedia

DOH

DOH, skrót IATA portu lotniczego Doha DNS over HTTPS(inne języki), protokół internetowy

Asymmetric Digital Subscriber Line

portów) BGP: 179 BOOTP: 67, 68 DHCP: 546, 547 DNS: 53 Finger: 79 FTP: 20, 21 Gopher: 70 HTTP: 80 HTTPS: 443 IMAP: 143 IRC: 194 NetBIOS: 137, 138, 139

IPsec

Support Robust Header Compression over IPsec RFC 5858 ↓: IPsec Extensions to Support Robust Header Compression over IPsec RFC 7296 ↓: Internet Key Exchange

Point-to-Point Protocol

Dodatkowo często wykorzystuje się DHCP do przekazywania adresu IP serwera DNS. Protokół PPP został opisany przez IETF w specyfikacji RFC 1661 ↓. RFC 1994

Secure Shell

FrançoisF. Michel FrançoisF., OlivierO. Bonaventure OlivierO., Secure shell over HTTP/3 connections [online], 28 lutego 2024 [dostęp 2025-09-20] . l, ssh3

Transport Layer Security

jest nikomu ujawniany. SSL jest najczęściej kojarzony z protokołem HTTP (HTTPS), ale może służyć do zabezpieczania wielu innych protokołów, m.in.: Telnet

Phishing

oprogramowania firm trzecich chroniącego przed phishingiem. Używanie OpenDNS. Skuteczną obroną przed phishingiem są regularne szkolenia pracowników. Polega

NetBIOS

5. warstwie (sesji) modelu OSI. NetBIOS transmitowany w TCP/IP (NetBIOS over TCP/IP) używa portów: 137 – NetBIOS Name 138 – NetBIOS Datagram 139 – NetBIOS