Mírně odhaduji, ale mám podezření, že v prohlížeči se používá generateCRMFRequest
a importUserCertificate
v kombinaci. Přehled procesu je uveden v zastaralé dokumentaci Javascript_crypto pro Firefox.
Podobné věci lze dosáhnout pomocí aplikace Internet Explorer. Nedíval jsem se, ale myslím, že Safari má také určitou úroveň podpory.
Toto jsou zcela nestandardní rozšíření a podle tohoto příspěvku na fóru CA/Browser nikoli budoucnost.
Klíč je generován lokálně, je však těžké říci, zda je klíč také odeslán certifikační autoritě k „archivaci“ jako v generováníCRMFRequest. Vzhledem k tomu, že javascript má přístup k vygenerovanému klíči, mohl by jej případně odeslat přes internet.
Závěrečná informace, existuje obecný nástroj, jak to udělat v Linuxu? Není mi známo. Určitě můžete projít procesem:
openssl genrsa ... -out private.key
openssl req -new ... -inkey private.key -out certplease.csr
odeslání souboru certplease.csr CA. Od nich byste získali zpět jimi podepsaný certifikát PKCS#7 (a případně další certifikáty v řetězci, pokud by byly potřeba).
Nevěřím však, že v Linuxu existuje standardní úložiště soukromých klíčů založené na uživateli – spíše každé desktopové prostředí má trochu jiné.
To je fascinující otázka.
Nejprve několik úvah o .cer
soubor, který získáte:Podívejte se na seznam standardů PKCS; PKCS#7 je pouze kontejner pro přenos podepsaných/šifrovaných dat, který nám neříká nic o tom, jaká data mohou být. Pokud byla data uvnitř formátu PKCS#12, je zcela možné, že soukromý klíč byl svázán s nimi. Myslím, že důležitá otázka zní:museli jste zadat heslo jako součást importu .cer
?
Symantec Managed PKI
V příručce Symantec™ Managed PKI ServiceDeployment Options je několik rad (ale žádné odpovědi).
Jasně popisujete
2.1.1 Registrace nativního prohlížeče
Registrace nativního prohlížeče nevyžaduje instalaci žádného softwaru do počítače koncového uživatele a funguje v cloudu i hybridních scénářích.
Ačkoli to spíše postrádá podrobnosti o tom, kde je klíč generován.
Server vám vygeneruje soukromý klíč a připojí ho do .cer
soubor by byl konzistentní s větami jako je tato:
... Tato možnost je důležitá z hlediska zajištění toho, aby certifikáty s vysokým zabezpečením, jako je čipová karta nebo USB token, skončily v příslušném obchodě.
Vzhledem k tomu, že certifikáty jsou ze své podstaty veřejné, má fráze „certifikáty s vysokou bezpečností“ smysl jedině tehdy, když je k nim přibalen soukromý klíč.
Uvádějí také mnoho odkazů na služby registrace / správy klíčů Microsoft Active Directory. Ale to nevysvětluje váš případ Linuxu.
Upravit: Duh. Něco jiného, co je možné, je, že prohlížeč má přístup ke kryptografickým funkcím operačního systému (například Microsoft CAPI) a javascript na stránce registrace přiměje OS k vytvoření soukromého klíče a vygenerování žádosti o certifikát včetně důkazu o vlastnictví ten klíč.