Zdravím, chtěl bych si jen ověřit teorii - pokud si otevřu v prohlížeči webovou stránku zabezpečenou SSL, např. facebook.com, tak si prohlížeč ověří zda je certifikát serveru podepsán certifikační auritou (kterou schvaluje prohlížeč). Potom si oba dva navzájem vyměníme veřejné RSA klíče a začneme komunikovat. Prohlížeč standartně žádný certifikát neodesílá a klíče si generuje pro každou stránku zvlášť. Oproti tomu server má certifikát, klíč má podepsaný, tudíž je pokaždé stejný (viz. nastavení v Apache).
Je to tak?
Díky za odpovědi
Klient veřejný klíč neposílá ani nemá (pokud nepoužívá certifikát, viz dále). Celé spojení se šifruje symetrickou šifrou, protože to je mnohem rychlejší. Klíč pro ni se nejčastěji generuje pomocí Diffie-Hellman (přenos od klienta se šifruje veřejným klíčem serveru), ale lze i to, že klient vygeneruje celý klíč, podepíše ho veřejným klíčem serveru a pošle ho serveru (to má ale tu nevýhodu, že to není bezpečné do budoucna).
Prohlížeč může také odeslat certifikát serveru, pokud si to server vyžádá (a prohlížeč má certifikát nastaven), čímž autentizuje uživatele. Umožňují to používat třeba Datové schránky.