it-swarm-eu.dev

Chápu, jak funguje HTTPS (například gmail)

Chci se zeptat, zda mé níže uvedené porozumění je správné nebo není o HTTPS použitém pro webovou stránku, kterou navštěvujeme.

Jako příklad použiji Gmail:

  1. Můj notebook se pokusí připojit k serveru Gmail a odešle požadavek http
  2. Server Gmail odpoví žádostí o navázání spojení https (odešle požadavek https)
  3. Můj notebook zkontroluje https certifikaci serveru Gmail a souhlasí s použitím https pro připojení
  4. Můj notebook najde veřejný klíč Gmail serveru a použije jej k zašifrování hesla k účtu Gmailu a jeho odeslání na Gmail Server
  5. Gmail Server ověřuje mé heslo pomocí Private Key Gmail Server a potvrzuje mé e-mailové přihlášení
  6. Gmail Server odešle e-mailové informace do mého notebooku tím, že je zašifruje pomocí Public Key
  7. Můj notebook čte zašifrované e-mailové informace dešifrováním pomocí soukromý klíč mého notebooku
  8. Tak dál a tak dále, dokud se můj notebook neodhlásí ze serveru Gmail.

Shrnutí: Toto připojení https zahrnuje 4 klíče. Veřejné/soukromé klíče Gmail serveru (2ks) + Veřejné/soukromé klíče My Notebooku (2ks)

27
Xianlin

Ano, jste na správné cestě! Ale věci skutečně fungují trochu jinak, než jste naznačili.

Konkrétně kroky 4-8 nejsou úplně tak, jak funguje SSL. SSL funguje trochu jinak. Tady je, jak to vlastně funguje (udělám několik malých zjednodušení, ale to by mělo dostat podstatu myšlenky správně):

  • Server Gmail odešle klientovi certifikát . Certifikát obsahuje veřejný klíč serveru Gmail a některé důkazy, že tento veřejný klíč skutečně patří uživateli gmail.com.

  • Váš prohlížeč ověří důkazy v certifikátu, aby potvrdil, že má správný veřejný klíč pro gmail.com.

  • Váš prohlížeč vybere náhodný nový symetrický klíč [~ # ~] k [~ # ~] , který se použije pro připojení k Gmailu. Šifruje [~ # ~] k [~ # ~] pod veřejným klíčem Gmailu.

  • Gmail dešifruje [~ # ~] k [~ # ~] pomocí svého soukromého klíče. Nyní váš prohlížeč i server Gmail vědí [~ # ~] k [~ # ~] , ale nikdo jiný to neví.

  • Kdykoli váš prohlížeč chce něco poslat do Gmailu, zašifruje jej pod [~ # ~] k [~ # ~] ; server Gmail jej po přijetí dešifruje. Kdykoli chce server Gmail něco odeslat do vašeho prohlížeče, zašifruje jej pod [~ # ~] k [~ # ~] .

Kroky 1-3 jsou zhruba správné, i když ne úplně správné, a podrobnosti závisí trochu na tom, jaký prohlížeč používáte a jakou adresu URL zadáte do adresního řádku nebo jak se dostanete do Gmailu na prvním místě - ale co napsal je dostatečně blízko pro pochopení základního konceptu. Dost dobrý pro vládní práci.

Zde je několik dalších čtení:

Jak je možné, že lidé, kteří sledují navázané připojení HTTPS, by nevěděli, jak je dešifrovat?

Jak fungují procesy pro digitální certifikáty, podpisy a ssl?

Účel certifikátů podepsaných a důvěryhodných CA

Proč je předstírání SSL certifikátu obtížné?

Proč HTTPS není výchozí protokol?

Je návštěva webů HTTPS na veřejném hotspotu zabezpečená?

Myslím, že tyto články by vám měly poskytnout vynikající porozumění SSL, jak to funguje a proč je navržen tak, jak je.

Pokud to nestačí, musíte mít více více, zde jsou některé články z Wikipedie:

Jak fungují certifikáty

Jak SSL funguje

Pravděpodobně však mají mnohem více technických detailů, než jste kdy chtěli vědět, a nejsou prvním velkým úvodem do konceptů nebo základních myšlenek.

50
D.W.