TLS a certifikáty
Když adresa začíná https://, je spojení šifrované protokolem TLS.
TLS je zkratka pro Transport Layer Security a jedná se o kryptografický protokol, který zabezpečuje komunikaci po síti. Šifruje data přenášená mezi dvěma stranami (typicky mezi prohlížečem a webovým serverem), takže je nikdo po cestě nemůže přečíst ani pozměnit. Zároveň pomocí certifikátů ověřuje, že komunikujete se skutečným serverem, a ne s podvodníkem.
Je nástupcem staršího protokolu SSL (Secure Sockets Layer), proto se oba pojmy často zaměňují, často uslyšíte například „SSL certifikát“.
Aktuální verze TLS je 1.3 (od roku 2018), starší verze 1.0 a 1.1 se už považují za nebezpečné.
Dva klíče - privátní a veřejný
Běžný zámek má jeden klíč, kterým jde zámek zamknout i odemknout. Asymetrické šifrování má dva klíče, které patří k sobě sobě: co zašifrujete jedním klíčem, jde orzšifrovat jenom tím druhým.
Jeden klíč je veřejný – rozdává se komukoli. Druhý je soukromý a nikdy neopustí majitele. Kdokoli může veřejným klíčem zašifrovat zprávu, ale přečíst ji pak dokáže jen držitel soukromého klíče.
Co dělá TLS
Při navázání HTTPS spojení si prohlížeč a server přes asymetrické šifrování spolu mezi sebou domluví jednorázový symetrický klíč a tím pak šifrují celou následující komunikaci.
Proč nepoužijí asymetrické šifrování rovnou na celou komunikaci? Protože asymetrické šifrování je pomalé a náročné na výpočetní výkon. Použije se tedy pouze pro bezpečné vytvoření symetrického klíče, který je rychlejší a méně náročný na výkon.
Výsledkem je, že obsah stránky, hesla i platební údaje cestují nečitelně a rozšifrovat je dovedou jen oba konce. Kdyby někdo komunikaci odposlech někde uprostřed cesty (útok typu man in the middle), získá jen pro něho nečitelný blábol.
Certifikát a certifikační autorita
Zbývá problém: jak prohlížeč pozná, že veřejný klíč patří opravdu
mojebanka.cz, a ne někomu, kdo se za banku vydává? Tady nastupuje
certifikát – dokument, který spojuje doménu s veřejným klíčem a je
podepsaný certifikační autoritou (CA), které prohlížeč věří.
Autorit je několik málo a jejich kořenové certifikáty má prohlížeč zabudované. Ověření pak jde po řetězu:
Když kterýkoli článek chybí, je prošlý, nebo si ho web podepsal sám, prohlížeč spojení označí za nedůvěryhodné.
Šifrování jinde
- End-to-end šifrování (E2EE) používají komunikační aplikace: zprávu zašifruje odesílatel a rozšifruje až příjemce, takže ji nevidí ani provozovatel služby.
- VPN zašifruje veškerý provoz mezi zařízením a serverem VPN. Hodí se na nedůvěryhodných sítích a pro přístup do firemní sítě zvenčí.
Zámeček v adresním řádku prohlížeče znamená jen „spojení je šifrované“. Neříká, že web je poctivý – i podvodná stránka může mít platný certifikát. Ověřujte i adresu.