HTTPS

protokol pro komunikaci v počítačové síti

HTTPS (Hypertext Transfer Protocol Secure) je v informatice protokol umožňující zabezpečenou komunikaci v počítačové síti. HTTPS využívá protokol HTTP spolu s protokolem SSL nebo TLS. HTTPS je využíván především pro komunikaci webového prohlížeče s webovým serverem. Zajišťuje autentizaci, důvěrnost přenášených dat a jejich integritu. Standardní port na straně serveru je 443 TCP.

Aspekt ověřování HTTPS vyžaduje, aby podepisovala digitální certifikáty na straně serveru důvěryhodná třetí strana. Jednalo se o historicky nákladnou operaci, což znamenalo, že plně ověřená připojení HTTPS byla obvykle nalezena pouze na zabezpečených službách platebních transakcí a dalších zabezpečených podnikových informačních systémech na World Wide Web. V roce 2016 vedla kampaň Electronic Frontier Foundation s podporou vývojářů webových prohlížečů k tomu, že se protokol stal běžnějším.[1]

Protokol HTTPS byl v roce 1994 vyvinut společností Netscape Communications pro webový prohlížeč Netscape Navigator[2].

Všeobecně se doporučuje podporovat HTTPS místo nezabezpečeného HTTP pro všechny webové stránky.[3][4][5][6][7][8]

Princip funkce

editovat

Bezpečnost komunikace zaručuje protokol SSL anebo novější TLS[9]. Pomocí asymetrické kryptografie je ověřena identita webového serveru, volitelně i klienta. Poté následuje dohoda na klíči pro symetrické šifrování samotné komunikace (z výkonnostních důvodů). Klíč pro symetrickou šifru je buď vybrán klientem a nebo dohodnut pomocí Diffieho-Hellmanovy výměny klíče pro dosažení dopředné bezpečnosti.

Pro SSL a TLS je zásadní infrastruktura veřejného klíče a X.509 certifikáty, díky nimž probíhá autentizace. Pro úspěšné ověření identity je nutná důvěra v zaslaný certifikát, která nejčastěji bývá zprostředkovaná některou z certifikačních autorit, jejichž certifikáty jsou v úložišti důvěryhodných certifikátů operačního systému nebo aplikace (například webového prohlížeče). Většina certifikačních autorit vystavuje certifikáty na komerční bázi (Symantec, Verisign, COMODO, Thawte a jiné), avšak existují i certifikační autority vystavující certifikáty bezplatně jako například Let's Encrypt, StartSSL a jiné. Do úložiště důvěryhodných certifikátů lze doinstalovat další certifikační autority.

Nepodaří-li se certifikát ověřit automaticky, je možné na uživatelův pokyn pokračovat bez ověření (ovšem se zvýšeným rizikem Man in the middle útoku) anebo ověření provést jiným způsobem manuálně.

Bezpečnost

editovat

Míra bezpečnosti závisí na chování uživatele, na implementaci protokolů ve webovém prohlížeči a webovém serveru, správné konfiguraci a na důvěryhodnosti certifikačních autorit.

Výhody HTTPS

editovat
  • ověření identity obou stran pomocí certifikátů
  • důvěrnost přenášených dat
  • integrita obsahu
  • možnost využití HTTP/2 protokolu
  • zvýhodnění ve vyhledávači Google[10][11]
  • jen nepatrný pokles výkonu u novějšího hardwaru[12][13]

Nevýhody HTTPS

editovat

Budoucnost

editovat

Kryptografické algoritmy, které se dnes běžně používají v HTTPS, obecně neposkytují ochranu proti (dnes hypotetickým) kvantovým počítačům (např. algoritmus RSA svou bezpečnost odvozuje od složitosti faktorizace, kterou by však Shorův algoritmus na kvantovém počítači dokázal provádět v polynomiálním čase). Pokud by se tedy podařilo sestrojit prakticky použitelný kvantový počítač dostatečné kapacity, bezpečnost internetové komunikace by byla prolomena. Toto riziko se snaží eliminovat vývoj tzv. postkvantové kryptografie. Pokud však nějaký útočník dnes zaznamenává cizí internetovou komunikaci zabezpečenou HTTPS, tak by sice zatím neměl být schopen ji dešifrovat, avšak v budoucnu, jakmile budou k dispozici kvantové počítače, by tuto uloženou komunikaci mohl dešifrovat zpětně.[14]

Nasazení HTTPS

editovat

Navzdory rozšířenému názoru, že HTTPS je nutné pouze pro weby pracující s citlivými údaji, je mnohými organizacemi[3][5][7][8] a odborníky[4][15][16] doporučeno používat HTTPS na všech webech. HTTPS představuje účinnou obranu proti vkládání nežádoucího obsahu (malware, nevyžádané reklamy…)[17][18] poskytovatelem internetového připojení či jiným útočníkem. Dalším významným důvodem pro nasazení HTTPS je možnost ukončení podpory HTTP ve webových prohlížečích a v důsledku toho odstranění rizika SSL-stripping útoku.

Prvním krokem pro nasazení HTTPS je získání certifikátu od některé z certifikačních autorit nebo vygenerování self-signed certifikátu. Poté následuje konfigurace web serveru, kde je důležitý zejména výběr šifrovacích sad. S konfigurací může pomoci online nástroj Mozilla SSL Configuration Generator. Bezpečnost webového serveru je vhodné otestovat. K tomuto účelu mohou být použity například online nástroje Qualys SSL Labs, CryptCheck nebo Observatory by Mozilla.

Po nasazení HTTPS je nutné pravidelně obnovovat certifikát, jehož platnost typicky může být od 1 do 3 let. V případě certifikační autority Let's Encrypt je platnost certifikátu pouze 90 dní, ale celý proces může být zautomatizován.[19]

Pokročilé možnosti zabezpečení

editovat

Zabezpečení HTTPS je možné zvýšit některými technikami jakými jsou například HSTS, HPKP, CAA a TLSA záznamy v DNS (je vhodné mít DNSSEC).

Rozšíření HTTPS

editovat

V červnu 2018 podporovalo HTTPS protokol jako výchozí 35,3 % webů ze seznamu Alexa top 1,000,000[20]. Dle údajů Firefox Telemetry bylo na konci června 2018 načteno prostřednictvím protokolu HTTPS 69% webových stránek[21].

Od ledna 2017 začal prohlížeč Chrome označovat webové stránky, které přijímají od uživatele citlivé informace bez použití HTTPS protokolu. Od této změny se očekává výrazný nárůst použití HTTPS.[7]

Reference

editovat
  1. Electronic prescriptions to be introduced nationally from November 2019. The Pharmaceutical Journal. 2019. Dostupné online [cit. 2022-04-04]. ISSN 2053-6186. DOI 10.1211/pj.2019.20207220. 
  2. WALLS, Colin. Embedded Software: The Works. [s.l.]: Elsevier, 2006. 390 s. Dostupné online. ISBN 0750679549, ISBN 9780750679541. S. 344. 
  3. a b Why HTTPS Matters  |  Web  |  Google Developers. Google Developers [online]. [cit. 2017-02-17]. Dostupné online. (anglicky) 
  4. a b Why We Encrypt - Schneier on Security. www.schneier.com [online]. [cit. 2017-02-17]. Dostupné online. 
  5. a b MORGAN, Cindy. IAB Statement on Internet Confidentiality | Internet Architecture Board [online]. [cit. 2017-02-17]. Dostupné online. 
  6. Securing the Web. www.w3.org [online]. [cit. 2017-02-17]. Dostupné online. (anglicky) 
  7. a b c Moving towards a more secure web. Google Online Security Blog. Dostupné online [cit. 2017-02-01]. (anglicky) 
  8. a b Marking HTTP As Non-Secure - The Chromium Projects. www.chromium.org [online]. [cit. 2017-02-17]. Dostupné online. 
  9. RESCORLA, E. HTTP Over TLS. tools.ietf.org [online]. [cit. 2017-02-17]. Dostupné online. (anglicky) 
  10. Použití kanonických adres URL - Nápověda Search Console. support.google.com [online]. [cit. 2017-02-17]. Dostupné online. 
  11. Google Starts Giving A Ranking Boost To Secure HTTPS/SSL Sites. Search Engine Land. 2014-08-07. Dostupné online [cit. 2017-02-17]. (anglicky) 
  12. LANGLEY, Adam. ImperialViolet - Overclocking SSL. www.imperialviolet.org [online]. [cit. 2017-02-17]. Dostupné online. (anglicky) 
  13. Analyzing HTTPS Performance Overhead. KeyCDN Blog. 2015-12-17. Dostupné online [cit. 2017-02-17]. (anglicky) 
  14. How future quantum computers will threaten today's encrypted data. phys.org [online]. 2017-09-14 [cit. 2021-12-28]. Dostupné online. (anglicky) 
  15. KRČMÁŘ, Petr. HTTPS by mělo být všude - Root.cz. Root.cz. Dostupné online [cit. 2017-02-17]. 
  16. Přednáška HTTPS všude. A proč vlastně? (F5 fórum). www.michalspacek.cz [online]. [cit. 2017-02-17]. Dostupné online. 
  17. NAKIBLY, Gabi; SCHCOLNIK, Jaime; RUBIN, Yossi. Website-Targeted False Content Injection by Network Operators. arxiv.org [online]. 2016-02-29. Dostupné online. (anglicky) 
  18. Verizon Injecting Perma-Cookies to Track Mobile Customers, Bypassing Privacy Controls. Electronic Frontier Foundation. 2014-11-03. Dostupné online [cit. 2017-02-17]. 
  19. ACME Client Implementations - Let's Encrypt - Free SSL/TLS Certificates. letsencrypt.org [online]. [cit. 2017-02-17]. Dostupné online. (anglicky) 
  20. HTTPS usage statistics on top websites. STATOPERATOR. Dostupné v archivu pořízeném dne 2019-02-09. (anglicky) 
  21. Let's Encrypt Stats - Let's Encrypt - Free SSL/TLS Certificates. letsencrypt.org [online]. [cit. 2018-06-28]. Dostupné online. (anglicky) 

Související články

editovat

Externí odkazy

editovat