If you're seeing this message, it means we're having trouble loading external resources on our website.

Pokud používáš webový filtr, ujisti se, že domény: *.kastatic.org and *.kasandbox.org jsou vyloučeny z filtrování.

Hlavní obsah

Transport Layer Security (TLS)

Počítače odesílají pakety dat po internetu. Tyto pakety jsou jako dopisy v obálce: přihlížející si může snadno přečíst data uvnitř nich. Pokud jsou tato data veřejné informace jako novinový článek, není to velký problém. Ale pokud jsou tato data heslo, číslo kreditní karty nebo důvěrný e-mail, je riskantní nechat kohokoli si tato data prohlížet.
Protokol Transport Layer Security (TLS) přidává vrstvu zabezpečení nad rámec přepravních protokolů TCP/IP. TLS používá jak symetrické šifrování tak šifrování veřejného klíče pro bezpečné odesílání soukromých dat, a přidává další bezpečnostní prvky, jako je ověření pravosti a odhalování nedovolených manipulací.
TLS přidává další kroky k procesu odesílání dat s TCP/IP, takže se zvyšuje
v komunikaci na internetu. Nicméně přínosy v oblasti bezpečnosti často stojí za zvýšenou latenci.
(TLS nahradil starší protokol s názvem SSL, takže termíny TLS a SSL se často používají zaměnitelně)

Od začátku do konce

Pojďme si projít procesem bezpečného odesílání dat s protokolem TLS z jednoho počítače do druhého. Odesílající počítač nazveme klient a přijímající počítač server.

TCP handshake (ověření)

Vzhledem k tomu, že TLS je implementováno nad rámec TCP/IP, klient musí nejprve dokončit 3-cestný TCP handshake se serverem.
Schéma dvou počítačů se šipkami mezi nimi. Počítač vpravo je server označen IP adresou pro khanacademy.org. Jedna šipka směřuje od notebooku na server s políčkem nad ní, které obsahuje "ClientHello, ProtocolVersion: TLS 1.3, CipherSuites: TLS_RSA_WITH_RC4_128_SHA".
  • Šipka směřuje z notebooku na server s popiskem "SYN".
  • Šipka směřuje ze serveru na notebook s popiskem "ACK SYN".
  • Šipka směřuje z notebooku na server s popiskem "ACK".

Zahájení TLS

Klient musí serveru oznámit, že si namísto standardního nezabezpečeného připojení přeje připojení TLS. Odesílá proto zprávu, ve které popisuje, kterou verzi protokolu TLS a techniky šifrování chce použít.
Schéma dvou počítačů se šipkami mezi nimi. Počítač na levé straně je notebook zobrazující přihlašovací obrazovkou pro khanacademy.org. Počítač vpravo je server označený IP adresou pro khanacademy.org. Jedna šipka směřuje z notebooku na server s políčkem nad ní, které obsahuje "ClientHello, ProtocolVersion: TLS 1.3, CipherSuites: TLS_RSA_WITH_RC4_128_SHA".

Potvrzení protokolu serverem

Pokud server nepodporuje požadované technologie klienta, přeruší připojení. Může k tomu dojít, pokud se moderní klient snaží komunikovat se starším serverem.
Pokud server podporuje požadovanou verzi protokolu TLS a další možnosti, bude reagovat potvrzením a digitálním certifikátem, který obsahuje jeho veřejný klíč.
Schéma dvou počítačů se šipkami mezi nimi. Počítač na levé straně je notebook zobrazující přihlašovací obrazovkou pro khanacademy.org. Počítač vpravo je server označený IP adresou pro khanacademy.org. Jedna šipka směřuje ze serveru do notebooku s políčkem nad ní, které obsahuje "ServerHello, ProtocolVersion: TLS 1.3, CipherSuite: TLS_RSA_WITH_RC4_128_SHA, Certificate, ServerHelloDone".

Ověření certifikátu

Digitální certifikát serveru je způsob, jak může server říct: "Ano, opravdu jsem tím, kým si myslíš, že jsem". Pokud si klient nemyslí, že je certifikát legitimní, přeruší připojení, protože nechce posílat soukromá data podvodníkovi.
V opačném případě, pokud klient certifikát ověří, pokračuje na další krok.
Ověřovací schéma klienta. Notebook má okno s myšlenkovou bublinou, která říká "Certificate = khanacademy.org?".

Vytvoření sdíleného klíče

Klient nyní zná veřejný klíč serveru, takže může teoreticky používat šifrování dat pomocí veřejného klíče, které může server dešifrovat pomocí příslušného soukromého klíče.
Šifrování veřejného klíče ale zabere mnohem více času než symetrické šifrování, protože se používají složitější aritmetické operace. Pokud je to možné, počítače pro ušetření času raději používají symetrické šifrování.
Naštěstí to možné je! Počítače mohou nejprve použít šifrování veřejného klíče pro soukromé vygenerování sdíleného klíče, a pak mohou v budoucích zprávách použít symetrické šifrování s tímto klíčem.
Klient proces zahájí odesláním zprávy na server s pre-master klíčem šifrovaným veřejným klíčem serveru. Klient si vypočítá sdílený klíč na základě tohoto pre-master klíče (je to bezpečnější než poslat skutečný sdílený klíč přímo) a zapamatuje si sdílený klíč lokálně.
Klient také zašle zprávu "Dokončeno", jejíž obsah bude šifrován sdíleným klíčem.
Schéma dvou počítačů se šipkami mezi nimi. Počítač na levé straně je notebook zobrazující přihlašovací obrazovkou pro khanacademy.org. Počítač vpravo je server označený IP adresou pro khanacademy.org. Jedna šipka směřuje z notebooku na server s políčkem nad ní, které obsahuje "ClientKeyExchange (PreMasterSecret: c3ac534fd919a0e92b966795e), ChangeCipherSpec, Finished (21c124d28a548559f0f8abd4b)".

Potvrzení sdíleného klíče serverem

Server může nyní vypočítat sdílený klíč na základě pre-master klíče a pokusit se pomocí tohoto klíče dešifrovat zprávu "Dokončeno". Pokud selže, přeruší připojení.
Pokud může server úspěšně dešifrovat zprávu klienta pomocí sdíleného klíče, odešle potvrzení a svou vlastní zprávu "Dokončeno" se zašifrovaným obsahem.
Schéma dvou počítačů se šipkami mezi nimi. Počítač na levé straně je notebook zobrazující přihlašovací obrazovkou pro khanacademy.org. Počítač vpravo je server označený IP adresou pro khanacademy.org. Jedna šipka směřuje ze serveru na notebook s políčkem nad ní, které obsahuje "ChangeCipherSpec, Finished (c49fe482d338760807c3c278f)".

Odesílání zabezpečených dat

Nakonec klient bezpečně odesílá soukromá data na server pomocí symetrického šifrování a sdíleného klíče.
Schéma dvou počítačů se šipkami mezi nimi. Počítač na levé straně je notebook zobrazující přihlašovací obrazovkou pro khanacademy.org. Počítač vpravo je server označený IP adresou pro khanacademy.org. Jedna šipka směřuje z notebooku na server s políčkem nad ní, které obsahuje řetězec šifrovaných dat.
Často potřebuje tentýž klient posílat data na server několikrát, jako když uživatel vyplňuje formuláře na více stránkách webové stránky. V takovém případě mohou počítače použít k vytvoření bezpečné relace zkrácený proces.
Zkontroluj si, že tomu rozumíš
Jak můžeš vidět, oba počítače musí pro nastavení bezpečné komunikace s TLS projít mnoha kroky.
Doplň níže uvedený seznam kroků:
  1. Klient a server provedou TCP handshake
  2. Klient odesílá data šifrovaná sdíleným klíčem

TLS je všude

TLS se používá pro mnoho forem bezpečné komunikace na internetu, jako je bezpečné odesílání e-mailů a bezpečné nahrávání souborů. Nejvíce je však znám pro použití v zabezpečeném prohlížení webových stránek (HTTPS).
TLS poskytuje bezpečnostní vrstvu nad rámec TCP/IP a to díky použití jak šifrování veřejného klíče tak i symetrického šifrování, přičemž zabezpečení dat cestujících na internetu se stává pořád více nezbytné.

🙋🏽🙋🏻‍♀️🙋🏿‍♂️Máš k tomuto tématu nějaké dotazy? Rádi ti je zodpovíme — zeptej se v sekci pro dotazy níže!

Chceš se zapojit do diskuze?

Zatím žádné příspěvky.
Umíš anglicky? Kliknutím zobrazíš diskuzi anglické verze Khan Academy.