Šifrování veřejným klíčem je základem moderní webové bezpečnosti. Středem tohoto systému je Secure Sockets Layer (SSL). Tato technologie byla vyvinuta společností Netscape, aby umožnila bezpečnou komunikaci mezi prohlížeči a webovými servery. Původně však nebylo zamýšleno pro použití jako jediné, trvalé řešení.
Dnes je termín SSL považován za zastaralý. Aktuální aktuální standard je Transport Layer Security (TLS).
Nemusíte být programátor, abyste si všimli rozdílu ve vašem každodenním surfování po webu. Je to přímo v adresním řádku. Všimněte si „s“ v https.
http jste viděli dříve. Nyní vidíte https.
V blízkosti bude obvykle malá ikona visacího zámku. Někdy je ve stavovém řádku v dolní části okna a někdy je v poli URL. Význam je stejný: vaše data jsou šifrována. Pokud se přihlašujete k bankovnímu účtu nebo používáte PayPal, měli byste vidět tento visací zámek. Vaše platební údaje by neměly být přenášeny jako prostý text.
“TLS a SSL při ověřování silně spoléhají na certifikační autority.”
Ale jak přesně prohlížeč pozná, že je stránka bezpečná? Není to magie. Jedná se o proces handshake s Certifikační autoritou (CA).
Když požádáte o chráněnou stránku, proces se spustí. Prohlížeč připojí písmeno „s“ k „http“ a poté před načtením stránky zkontroluje tři konkrétní podmínky:
- Trust : Je certifikát vydán organizací, které prohlížeč důvěřuje?
- Platnost : Je certifikát aktuálně aktivní nebo jeho platnost vypršela?
- Shoda : Patří certifikát skutečně webu, který navštěvujete?
Pokud alespoň jedna z těchto kontrol selže, prohlížeč vydá varování a nedovolí vám pokračovat v prohlížení, aniž byste této skutečnosti věnovali pozornost. Díky tomuto systému si můžete být jisti, že důvěrné informace jsou přenášeny bezpečně. Protokol se vyvíjel, ale jeho hlavní účel zůstává stejný: chránit vaše data před zachycením.
Podání ruky, které chrání vaše data
Zde dochází ke skutečné ochraně.
Prohlížeč vezme veřejný klíč, který obdržíte, a použije jej k zašifrování náhodně vygenerovaného symetrického klíče. Je to docela jednoduché.
Ale tady je ten háček. Šifrování veřejným klíčem je výpočetně náročné. Vyžaduje velký výkon procesoru. Provádění takových operací pro každý jednotlivý datový paket by váš prohlížeč přestal fungovat. Proto to systémy nedělají.
Místo toho používají hybridní přístup.
Představte si bezpečný tunel. Veřejný klíč je jen zvonek. Chybí mu úvodní zpráva. Poté přepnete na symetrické šifrování pro zbytek komunikace. Je to rychlejší. Je to jednodušší. Toto je standardní způsob, jak dva počítače zahájí zabezpečenou relaci.
Jeden počítač vytvoří symetrický klíč. Zabalí to pomocí šifrování veřejným klíčem. Odešle to druhé straně. Druhá strana jej odemkne. Nyní mají obě strany stejný tajný kód.
Od tohoto okamžiku komunikují pomocí symetrického šifrování.
A tady je část, která většině uživatelů chybí. Klíč není uložen dlouho.
Po ukončení relace je klíč zničen. Je vyhozen. Zmizí.
Pokud zahájíte novou relaci, vytvoří se nový symetrický klíč. Celý proces se opakuje.
“Když relace skončí, každý počítač zahodí symetrický klíč použitý pro danou relaci.”
Tomu se říká dopředné utajení. Nebo alespoň jeho základní verze. To znamená, že i když hacker ukradne jeden klíč, je k ničemu jinému. Každá relace je izolovaná. Každá relace má svůj vlastní jedinečný zámek.
Proč je to důležité?
Protože to omezuje škody. Pokud je vaše připojení HTTPS zachyceno, útočník obdrží data pouze z této jedné relace. Nezíská vaši historii hesel. Nedostává vaše staré e-maily. Nedostává klíč od celého království.
Klíč je dočasný. Sezení je pomíjivé. Ochrana je nepřetržitá.
Je to tanec tvoření a ničení. Klíče se rodí. Data proudí. Klíče umírají.
A ani si toho nevšimnete.
























