HTTPS (HyperText Transfer Protocol Secure) je kryptografický protokol, který zajišťuje bezpečný přenos dat mezi klientem a serverem na internetu. K vytvoření zabezpečeného komunikačního kanálu používá SSL (Secure Sockets Layer) nebo jeho následnou verzi TLS (Transport Layer Security).
Proces HTTPS se skládá z několika fází. Začíná klientem, který odešle požadavek na server prostřednictvím zabezpečeného připojení HTTPS. V reakci na to server odešle svůj certifikát, který obsahuje veřejný klíč pro šifrování dat.
Zákazník obdrží certifikát a ověří jeho pravost. Je to důležitý krok k zabránění útokům prostředníka, když se útočník pokusí zachytit nebo vyměnit certifikát. Pokud je ověření úspěšné, klient vygeneruje relační klíč, který bude použit k dalšímu šifrování dat.
Dále je nainstalován zabezpečený komunikační kanál pomocí protokolu TLS / SSL. To zahrnuje sladění možností šifrování, ověřování serveru a klienta a výměnu klíčů pro symetrické šifrování. Klíče se používají k šifrování a dešifrování dat přenášených mezi klientem a serverem.
Jakmile je zabezpečené připojení nastaveno, klient a server mohou prostřednictvím něj začít sdílet data. Všechna přenášená data jsou šifrována pomocí symetrického šifrování, které zajišťuje jejich soukromí. Navíc lze serveru důvěřovat díky ověření jeho certifikátu a klient může být ověřen serverem.
HTTPS hraje důležitou roli při zajišťování bezpečnosti přenosu dat na internetu. Chrání informace před zachycením, změnou nebo paděláním, což je zvláště důležité při přenosu citlivých informací, jako jsou hesla, platební údaje a osobní údaje. Navíc poskytuje uživateli jistotu, že je na autentickém webu, nikoli na falešném.
Hodnota protokolu https
Protokol https (HTTP Secure) je rozšíření hlavního protokolu přenosu dat HTTP (Hypertext Transfer Protocol) se zabezpečením a šifrováním. Používá protokol SSL/TLS (Secure Socket Layer/Transport Layer Security) k ochraně přenosu dat mezi klientem a serverem.
Na rozdíl od protokolu http, který přenáší otevřená data, poskytuje https soukromí a integritu informací a autentizaci serveru, se kterým je připojení připojeno.
Když uživatel požádá o přístup k zabezpečenému webu pomocí protokolu https, jeho webový prohlížeč a server vytvoří zabezpečené připojení pomocí protokolu SSL/TLS. Během tohoto procesu dochází k autentizaci serveru a výměně digitálních certifikátů, které ověřují pravost serveru a klienta.
Dále jsou data přenášená mezi klientem a serverem šifrována pomocí šifrovacích algoritmů, aby se zabránilo jejich zachycení a pochopení třetími stranami. To zaručuje důvěrnost přenášených informací. Současně je také zajištěna kontrola integrity dat, aby bylo možné detekovat a zabránit jakýmkoli změnám nebo výměně přenášených dat.
Protokol https je široce používán k ochraně citlivých informací, jako jsou hesla, čísla kreditních karet a další osobní údaje. Používá se v online obchodech, bankovních systémech, elektronických platebních systémech a dalších službách, kde hraje důležitou roli bezpečnost a soukromí dat.
| Výhody protokolu https |
|---|
| 1. Soukromí dat |
| 2. Integrita dat |
| 3. Autentizace serveru |
| 4. Ochrana proti padělání |
| 5. Důvěra uživatelů |
Kryptografie
Protokol HTTPS používá sadu asymetrických a symetrických kryptografických algoritmů. Asymetrické algoritmy umožňují výměnu šifrovacích klíčů bez předchozího souhlasu, což snižuje riziko jejich úniku. Symetrické algoritmy používají společný tajný klíč, který se používá k šifrování a dešifrování dat.
Proces šifrování SSL začíná vytvořením zabezpečeného spojení mezi klientem a serverem. Při instalaci připojení server odešle svůj certifikát klientovi, který obsahuje veřejný klíč serveru a digitální podpis vydaný důvěryhodným ověřovacím centrem (CA).
Klient po obdržení certifikátu ověřuje jeho pravost porovnáním s kořenovými certifikáty nainstalovanými v jeho zařízení. Pokud je certifikát platný, klient vygeneruje náhodný symetrický klíč, zašifruje jej pomocí veřejného klíče serveru a zašifrovaný klíč odešle na server.
Po obdržení šifrovaného symetrického klíče jej server dešifruje pomocí vlastního soukromého klíče. Klient a server nyní mohou použít společný symetrický klíč k šifrování a dešifrování dat přenášených mezi nimi. To zajišťuje důvěrnost a integritu informací během přenosu.
Kryptografie je nedílnou součástí protokolu HTTPS, který zajišťuje bezpečnost a ochranu dat na internetu.
Základní pojmy asymetrické kryptografie
Veřejný klíč je klíč, který může být volně distribuován a použit k šifrování informací před přenosem. Tento klíč je nezbytný pro ochranu soukromí a integritu dat odesílaných po síti. Veřejný klíč se používá k šifrování dat a může být distribuován širokému publiku bez větších omezení.
Soukromý klíč je klíč, který je držen v tajnosti a používá se k dešifrování dat zašifrovaných veřejným klíčem. Takový klíč musí být znám pouze legálnímu příjemci informací, aby bylo zajištěno jeho soukromí. Soukromý klíč by neměl být přístupný třetím stranám, takže jeho použití by mělo být omezeno.
Při použití asymetrické kryptografie je proces šifrování a dešifrování informací následující: odesílatel používá k šifrování informací veřejný klíč příjemce a příjemce, který vlastní soukromý klíč, dešifruje přijatá data. Asymetrická kryptografie tak poskytuje ochranu dat v procesu jejich přenosu.
SSL certifikáty
Certifikáty SSL jsou vydávány certifikačními autoritami (Certificate Authorities-CA), které provádějí ověření totožnosti a důvěryhodnosti údajů poskytnutých vlastníkem webu. Když se klient připojí k zabezpečenému webu, server odešle svůj certifikát SSL.
Klientský prohlížeč pak tento certifikát zkontroluje: ověřuje jeho pravost, platnost a shodu s doménou webu. Pokud je certifikát platný, prohlížeč považuje připojení za bezpečné a bude s webem pokračovat.
Certifikáty SSL používají kryptografické klíče k šifrování dat. To umožňuje chránit informace přenášené mezi klientem a serverem před neoprávněným přístupem nebo zachycením. Data jsou přenášena v zašifrované podobě a lze je dešifrovat pouze pomocí platného certifikátu a příslušného soukromého klíče, který je pouze u serveru.
V důsledku použití certifikátů SSL se přenos dat přes HTTPS stává spolehlivým a chráněným před útoky, jako je Odposlouchávání, padělání nebo změna dat.
Úloha SSL certifikátů v zabezpečení protokolu https
Certifikáty SSL jsou digitální dokumenty, které ověřují autenticitu webových stránek a zajišťují šifrování dat při jejich přenosu mezi uživatelským prohlížečem a webovým serverem. To je zvláště důležité, pokud jde o přenos citlivých informací, jako jsou přihlašovací údaje, hesla, data kreditních karet a další osobní údaje.
Důvěryhodnost SSL certifikátů se provádí pomocí certifikačních center (Certificate Authorities - CA), která vydávají SSL certifikáty. CA je nezávislá strana, která potvrzuje pravost a soulad webu s určitými požadavky. Za tímto účelem CA provádí kontrolu identity vlastníka domény a optického kabelu (pro certifikáty EV SSL). Po úspěšném ověření vydává CA certifikát, který potvrzuje, že webová stránka skutečně patří majiteli uvedenému v certifikátu.
Jedním z klíčových prvků certifikátu SSL je veřejný šifrovací klíč. Když uživatel naváže s certifikátem SSL zabezpečené připojení k webu, jeho prohlížeč získá veřejný klíč a web soukromý klíč. Soukromý klíč se používá k dešifrování informací, které web přijímá, a veřejný klíč se používá k šifrování informací, které web odesílá. To zajišťuje soukromí dat, protože pouze vlastník soukromého klíče může dešifrovat přenášené informace.
Výhody SSL certifikátů:
- Ochrana soukromí uživatelů.
- Ochrana proti padělání a falšování údajů.
- Zvýšení důvěry uživatelů k webu.
- Zlepšení hodnocení ve vyhledávačích (v případě použití certifikátu SSL se standardem HTTPS).
Typy SSL certifikátů:
- Doménové certifikáty SSL-chrání pouze jednu doménu nebo subdoménu.
- Pokročilé ověřené (EV) SSL certifikáty-poskytují vyšší úroveň ověření a zelený řetězec adresy.
- Wildcard SSL certifikáty-chrání více subdomén jedné domény.
- Multifunkční SSL certifikáty-chrání několik různých domén.
Obecně platí, že SSL certifikáty jsou hlavním bezpečnostním nástrojem při používání protokolu HTTPS. Zajišťují autenticitu webu, chrání soukromí přenášených dat a zvyšují důvěru uživatelů. Mít certifikát SSL na webu je důležitou součástí jeho bezpečnosti a ochrany informací uživatelů.
Potřesení rukou TLS
1. Začátek podání ruky: Klient odešle serveru zprávu, která obsahuje informace o tom, jaké šifrovací algoritmy a možnosti zabezpečení klient podporuje.
2. Reakce serveru: Server vybere nejvhodnější algoritmy a možnosti zabezpečení ze seznamu klienta a odešle klientovi certifikát (digitální podpis), který potvrdí jeho pravost.
3. Ověření certifikátu: Klient ověří certifikát serveru a ověří jeho pravost. Pokud je certifikát platný a lze navázat důvěryhodné připojení, klient jej přijme.
4. Výměna klíčů: Klient generuje náhodný tajný klíč (session key), který bude použit k šifrování dat v rámci aktuální relace. Šifrovací klíč je předán serveru zabezpečenému veřejným klíčem.
5. Ukončení podání ruky: Mezi klientem a serverem je vytvořeno zabezpečené spojení a oba členové připojení mohou zahájit přenos dat, která budou zašifrována a chráněna před neoprávněným přístupem.
TLS handshake tak zajišťuje autentizaci serveru, soukromí a integritu přenášených dat. Tento proces je důležitý pro ochranu informací a bezpečnost při přenosu dat po síti.
Podrobný popis procesu potřesení rukou TLS
Další jsou hlavní kroky TLS potřesení rukou:
- Začátek připojení: Klient a server spouštějí proces podání ruky odesláním speciálních balíčků - " ClientHello "(od klienta) a" ServerHello " (od serveru).
- Výběr parametrů: Klient a server si vyměňují informace o podporovaných kryptografických algoritmech a verzích TLS. Tento krok zahrnuje výběr symetrického klíče, který bude použit k šifrování dat během relace.
- Autentizace serveru: Server předkládá klientovi svůj digitální certifikát, který obsahuje veřejný klíč serveru a informace, aby klient mohl ověřit jeho pravost. Klient ověřuje pravost certifikátu pomocí řetězce certifikátů umístěných v jeho prohlížeči nebo operačním systému.
- Generování klíčů: Klient a server používají výměnu asymetrických klíčů ke generování společného tajného klíče. Tento klíč bude použit k šifrování a dešifrování dat během relace.
- Zabezpečený přenos klíče: Tajný klíč je šifrován veřejným klíčem serveru a odeslán klientovi. Klient používá svůj osobní klíč k dešifrování tajného klíče.
- Ukončení podání ruky: Po úspěšném dokončení všech předchozích fází klient a server potvrzují, že jsou plně připraveni na bezpečný přenos dat. Nyní mohou začít šifrovat a přenášet data přes zabezpečené připojení.
V důsledku procesu podání ruky TLS, klient a server vytvářejí bezpečné připojení, které zajišťuje soukromí,integritu a autenticitu dat. To umožňuje uživatelům bezpečně sdílet informace a snižuje riziko neoprávněného přístupu a útoků na data.