Základy HTTPS (HTTP přes SSL)

Teoretické informace o šifrovaném a důvěryhodném přístupu k WWW stránkám, certifikát a soukromý klíč, certifikační autority.

Datum: 30.03.2012


V tomto článku naleznete základní teorii o HTTPS a souvisejícíc pojmech. Cílem není poskytnout úplné informace a laiky tuto technologii naučit, pouze přinést všeobecný přehled.

Pro nastavení HTTPS u webhostingu čtěte HTTPS u webhostingu.

Šifrování a důvěryhodnost

Šifrovaná komunikace znamená, že veškerá data přenášená mezi serverem a klientem (naším serverem a vaším WWW prohlížečem) jsou šifrované, komunikaci sice může po cestě někdo odposlechnout, ale dešifrovat ji nedokáže, a tak nijak nezjistí jaké stránky si prohlížíte a jaká data odesíláte formulářem. Při nešifrované komunikaci se nedoporučuje přes WWW formuláře odesílat osobní data, mohou být teoreticky zachycena cizí osobou a zneužita (zejména hesla, čísla kreditních karet atd.).

Důvěryhodná komunikace znamená, že klient si ověří totožnost serveru, a má tedy jistotu, že si WWW stránky stahuje z toho pravého serveru a že mu útočník nepodstrčil stránky falešné.

Šifrování nezaručuje důvěryhodnost, jsou to 2 různé věci, ale SSL může zajistit obojí.

Co je SSL a HTTPS

SSL (Secure Socket Layer) je obecně technologie, která se v počítačových sítích používá pro šifrovanou a důvěryhodnou komunikaci. Lze použít u každého aplikačního protokolu - u POP3 (POP3 + SSL = POP3S), u SMTP (SMTP + SSL = SMTPS) atd.

Pro použití SSL potřebujeme 2 věci:

  • Soukromý klíč - je to šifrovací/dešifrovací klíč, který drží majitel v tajnosti, resp. umístí ho na WWW server.
  • Certifikát - veřejný klíč pro šifrování/dešifrování, který obsahuje informace o totožnosti jeho majitele (jeho serveru) a je podepsán nějakou certifikační autoritou.

Certifikát je vždy (v případě WWW stránek) vázán na nějaký doménový název (případně může být určen pro více doménových názvů).

Běžné certifikáty jsou jen pro jeden konkrétní název (např. www.example.cz) - pak je komunikace důvěryhodná, pokud se certifikát použije na WWW stránkách, kde doména webu přesně odpovídá názvu v certifikátu. Pokud se tyto názvy neshodují, pak je komunikace nedůvěryhodná.

Tzv. hvězdičkové certifikáty (wildcard) jsou ve tvaru *.example.cz, mohou tedy být použity pro WWW stránky na libovolné subdoméně, tedy např. www.example.cz, eshop.example.com atd. a pro všechny tyto případy je komunikace důvěryhodná. Ale již to neplatí pro domény 4. řádu (např. muj.eshop.example.cz).

Pro přístup na WWW stránky přes SSL se používají URL adresy s https na začátku, tedy např. https://www.example.cz/. Při nešifrovaném přístupu začíná adresa pouze http, např. http://www.example.cz/.

Pokud se název certifikátu shoduje s doménou WWW stránek, pak je tedy komunikace důvěryhodná. Pokud se to neshoduje, pak je nedůvěryhodná a prohlížeč vás při vstupu na takové stránky přes HTTPS upozorní na možné bezpečnostní riziko (protože vám nedokáže garantovat, že  se nepřipojujete k serveru podstrčenému útočníkem).

Jak získám certifikát a soukromý klíč?

Pokud u našeho webhostingu využijete SSL se sdíleným certifikátem, nemusíte se o nic starat, použije se náš certifikát a soukromý klíč. Ale má to určitá omezení a komunikace nebude důvěryhodná. Více ve článku HTTPS u webhostingu.

Pokud chcete mít přístup na vaše WWW stránky šifrovaný a současně důvěryhodný (tedy nechcete, aby se vašim zákazníkům zobrazovala bezpečnostní varování v prohlížečích a aby měli jistotu, že je komunikace důvěrná), pak potřebujete získat pro vaši doménu vlastní certifikát nebo můžete využít certifikát Let's Encrypt.

Certifikáty vystavují tzv. certifikační autority, což jsou organizace, které jsou všeobecně důvěryhodné a kterým důvěřují tvůrci operačních systémů a WWW prohlížečů. Tyto certifikační autority vám vystaví certifikát na základě ověření vaší "totožnosti", což v případě WWW stránek znamená, že si nějakým způsobem ověří, že jste opravdu majitel domény, ke které certifikát žádáte. Cizí osobě, která nemá s doménou nic společného, samozřejmě certifikát nedají.

Vystavení certifikátu je samozřejmě zpoplatněno řádově ve stovkách až tisících Kč, platnost certifikátu bývá 1 či více roků, nikdy však není platný trvale. Před uplynutím doby jeho platnosti je nutné jej obměnit za nový.

Záleží na každé certifikační autoritě jak ověření totožnosti provádí. Nejjednodušší způsob je, že zašlou nějaké heslo na e-mail majitele domény - to je nejzákladnější úroveň ověření. Pokud chcete mít důvěryhodnější certifikát, je obvykle potřeba přijít osobně s průkazem totožnosti, výpisem z obchodního rejstříku, příp. své doklady naskenovat a někam poslat atd. V certifikátech totiž je uveden nejen doménový název, ale také totožnost osoby/firmy, které byl certifikát vystaven.

Naše společnost nenabízí a nezprostředkovává vystavování certifikátů (mino certifikátu Let's Encrypt). Pokud chcete jiný certifikát než Let's Encrypt, tak se musíte obrátit na některou s certifikačních autorit a nám až dodáte výsledný certifikát a soukromý klíč.

České certifikační autority bohužel nebývají pro WWW prohlížeče důvěryhodné, spíše se využívají pro certifikáty k elektronickým podpisům pro komunikaci se státní správou. Pro WWW stránky je vhodné použít některou ze zahraničních, např.:

Existuje také množství českých zprostředkovatelů, kteří vám se získáním certifikátů pomohou, protože to nemusí být vždy jednoduchá a snadno pochopitelná záležitost.

Diskuze k článku (2)

CSR a private keyLuboš06.12.13 16:29
  Re: CSR a private keyPavel Bláha11.10.15 07:42

Přihlášení zákazníka

Nemáte ještě zákaznický účet? Registrace

Copyright © WEDOS, 2017

Facebook RSS