Copyright © 1997 RNDr. Libor Dostalek
Třídy CA
Hrubé dělení CA je na třídy:
-
CA třídy 1 jsou CA, které ručí pouze za jednoznačnost certifikátu. Registrační
autoritou takové CA je možné zjednodušit na pouhý program (robot) - např.
CGI-skript WWW-serveru. Uživatel (žadatel) vyplní formulář WWW-serveru
a protokolem HTTPS jej odešle (stačí autentizace serveru - server
je anonymní).
Např. klient Netscape umí zpracovat tág <keygen> generující dvojici
soukromý/veřejný klíč a z formuláře tak vygenrovat žádost o certifikát
formátu SPK a odeslat ji WWW-serveru. Registrační autorita
(CGI-skript) pak žádost např. bezpečným mailem odešle k vyřízení CA.
-
CA třídy 2 navíc kontroluje totožnost uživatele. Tj. je vybudována síť
registračních autorit (kanceláří) kam osobně dochází uživatelé se svými
žádostmi. RA ověří totožnost uživatele a odesílá žádost k vyřízení CA.
CA třídy 2 uchovává svůj soukromý klíč v bezpečném hardware.
-
CA třídy 3 kontrolují totožnost žadatele (podobně jako CA třídy 2), ale
navíc certifikáty vydané touto CA jsou určeny výhradně pro konkrétní aplikaci
- pro nic jiného se nepoužívají. Např. burza si nechá vydat certifikáty
pro své členy, kteří pomocí nich budou mít přístup k burzovní aplikaci,
ale už je nebudou používat např. pro bezpečný mail.
Na druhou stranu výhoda CA třídy 3 spočívá v tom, že jí vydávané certifikáty
nemusí být podle doporučení X.509, ale mohou mít takový formát, který vyhovuje
aplikaci. Mezi takové exotické formáty patří např. formát certifikátu podle
EDI.
CA třídy 3 uchovává svůj soukromý klíč v bezpečném hardware.
-
Někdy se též hovoří o CA třídy 0, což však není CA, ale pouze key server.
Key server nejčastěji udržuje strukturu (může být i elektronicky podepsána
soukromým klíčem key serveru):
-
Řetězec, který rozlišuje jednotlivé klíče uživatele.
-
Mailovou adresu uživatele.
-
Veřejný klíč uživatele.
Key servery mohou poskytovat i adresářové služby. Key servery používají
s oblibou uživatelé programu PGP, tj. programu, který využívá veřejný klíč
jako takový, nikoliv certifikát.
Dva mýty
-
"CA třídy 1 je hračka vhodná nanejvýš pro vývojáře." To je
časté tvrzení, ale je na úrovni tvrzení: "V době automobilů je nesmysl
používat jízdní kola". CA třídy 1 je velice vhodná např. pro bezpečný mail.
Ono totiž nechat si vydat certifikát třídy 2 nebo 3 není nic příjemného
- to musíte někam jet (na RA) s občanským průkazem a pak Vám řeknou, že
si na fotografii vůbec nejste podobný.
Certifikát třídy 1 znamená, že si totožnost prověřuji sám (CA ručí pouze
za jednoznačnost).
Jestliže napíši elektronicky podepsaný mail libovolného textu
např. protokolu S/MIME někomu, kdo mne zná, tak s mailem automaticky posílám
(šířím) i svůj certifikát (resp. řetězec certifikátů až k root CA). Příjemce
mi zavolá telefonem a řekne mi: "pamatuješ co jsme zažili tenkrát ..."
a já odpovím "... a ta kočka měla modré oči a ty 10 piv a 5 rumů ..." podle
toho pozná, že opravdu mluví se mnou (hacker by to těžko věděl), tj. ověří
mou totožnost. Pak řekne: "...jo a tak mimochodem dostal jsem tvůj dopis.
Ty sis nechal vydat certifikát číslo 1234567890?". Já odpovím: "Ano a má
fingerprint D9:6F:56:3E:E0:EC:35:70:94:BB:DF:05:75:D6:32:0E". A on zná
můj veřejný klíč (má prověřen můj certifikát), který může využít k šifrování
odpovědi pro mne.
Jelikož CA třídy 1 vydává certifikáty automaticky a neověřuje totožnost
žadatele,
tak se otevírá prostor i pro autory detektivek. Šéf bandy lupičů si nechá
na CA třídy 1 vydat certifikát pod jménem Pepa Hodný. Rozešle svým podřízeným
přes remailer nejprve elektronicky podepsané přání k Novému roku, tím rozšíří
svůj certifikát. Dobře vychovaní podřízení zapoměli novoroční pozdrav poslat,
tak popřejí telefonicky, čímž si ověří, že si Šéf opravdu nechal
vydat certifikát. Pro šifrování svých hlášení o výši lupu pak v klidu mohou
použít tento certifikát - ví, že maily nikdo nepřečte.(Remailer je soustava
poštovních serverů znemožňující příjemci i hackerovi či policii zjistit,
kdo mail odeslal).
-
"Jedině CA třídy 3 je vhodná pro komerční aplikace na Internetu."
Naopak CA třídy 3 je vhodná pouze pro jednotlivé konkrétní aplikace. Výhodou
Internetu je naopak celosvětová univerálnost. Pro jednu aplikaci se však
ani nevyplatí vytvářet síť RA.
Uživatelé CA
Pro CA je uživatel každý, komu vydává certifikát uživatelem. Jenomže certifikát
může být vydáván pro různé účely. Nejhrubší dělení certifikátů je na:
-
Klientské certifikáty, tj. certifikáty koncových uživatelů, tj. uživatelů,
kteří budou používat bezpečný mail, budou coby klienti přistupovat protokolem
HTTPS na WWW-servery atp.
-
Serverové certifikáty, např. certifikáty WWW-serverů, na které se bude
přistupovat protokolem HTTPS, certifikáty adresářových serverů, na které
se bude přistupovat protokolem Secure LDAP atp.
-
Certifikáty CA, na které jsou kladeny nejvyšší nároky. Nesmějí se ve Vesmíru
vyskytovat dvě CA stejného jména (pole subject) atd.
Pouze klientské certifikáty mohou být vystavovány CA třídy 1.
Zneužitím uživatelského certifikátu (tj. soukromého klíče) může být
poškozen uživatel, zneužitím certifikátu serveru mohou být poškozeni všichni
uživatelé serveru a zneužitím certifikátu CA ... to nechci ani domýšlet.
Serverové certifikáty a certifikáty CA mohou být vystavovány i zeměpisně
vzálenou CA, protože je jich neskonale méně než certifikátů klientských,
takže ani není na překážku, když správce serveru musí urazit větší
vzdálenost.
Bezpečný hardware
Pro CA je bytostně důležitá ochrana zejména soukromého klíče.
Soukromý klíč zpravidla bývá v hardware šifrován symetrickou šifrou,
kde klíčem může být PIN, otisky prstů, oční pozadí atd. Chráněny bývají
kromě soukromých klíčů i mnohé další údaje.
Ochranu je možné provést:
-
Chráněná data jsou symetricky šifrována na disku a není použito žádného
speciálního hardware, šifrovacím klíčem je např. PIN.
-
Chráněná data jsou symetricky šifrována, ale jsou uložena na smart kartě,
kterou je možné z počítače vyjmout a uložit např. do trezoru. Pro tyto
účely stačí karta s magnetickým proužkem (není nutná čipová karta). Toto
lze improvizovat i pomocí diskety.
-
Chráněná data jsou uložena v čipové kartě, která umí sama symetrické šifrování.
-
Chráněná data jsou uložena v čipové kartě, tj. smart kartě s procesorem.
Soukromý klíč nikdy neopouští kartu, tj. nepřesouvá se do registrů počítače.
Počítač naopak posílá data do karty, která je šifruje (resp. dešifruje)
a vrací šifrována (resp. dešifrována). Jelikož soukromý klíč neopouští
kartu, tak karta musí umět i vygenerovat dvojici veřejný/soukromý klíč.
-
Chráněná data jsou uložena v černé skříňce, která v podstatě obsahuje celý
počítač často i s pevným diskem. Takováto černá skříňka má větší kapacitu
pro uschovávání dat a bývá výkonější než čipová karta. S výkoným počítačem
může být propojena stíněnou LAN určenou výhradně pro propojení těchto dvou
počítačů.
-
Černá skříňka je opatřena navíc výbušninou (minou) a mechanizmem, který
aktivuje výbušninu, kdykoliv by někdo chtěl skříňku rozebrat a získat tak
chráněná data.
Bezpečný hardware se často kombinuje se zabezpečeným přístupem k hardware
jako takovému. Místnost, kde je hardware situován je s řízeným přístupem,
tj. propouštěny jsou pouze osoby se specifikovanými otisky prstů nebo očním
pozadím. Pro start systému se doporučuje aby příslušní správci systému
byly prověřeni pomocí přístupových čipových karet a aby byla nutná přítomnost
alespoň dvou správců současně.
Přístup k aplikacím využívajícím bezpečný hardware (soukromý šifrovací
klíč), tj. např. vydávání certifikátů, může být vázaný na přítomnost alespoň
dvou operátorů CA (opět po prověření čipovými přístupovými kartami).
Závěr: Každá CA by měla používat nějaký bezpečný hardware.
Zatímco pro CA třídy 1 by měla stačit čipová karta, tak CA třídy 2 a 3
by měly být chráněny "zaminovanou černou skříňkou".
Schéma CA
CA může být zapojena nejrůznějšími způsoby. Jako příklad uvádímen následující
obrázek:
Toto schému je nutno chápat jako ilustrativní. Např. CA s mimořádně
vysokou bezpečností nemůže mít ani firewall FW1, tj. CA je zcela odpojena
od jakékoliv sítě. Žádosti podepsané RA se přinášejí a certifikáty odnáší
na magneticých médiích, protože jediné zcela bezpečné propojení dvou sítí
je sítě nepropojovat.
Firewall FW1 slouží k odizolování CA od vnitřní sítě. Firewall FW2 k
ochraně vnitřní sítě.
Intranet
Dnes je moderní budovat vše, co je v Internetu, také v intranetu. Otázkou
je, zda-li vybudování interní podnikové CA se v českých poměrech vyplatí.
Máme o tom jisté pochybnosti. Jaké tedy navrhujeme řešení?
Docela rozumným řešením pro intranet se zdá být toto: zorganizovat si
podnikovou registrační autoritu a žádosti si nechat podepisovat nějakou
existující certifikační autoritou (např. CA-PVT). Důvodem je fakt, že CA
je jednak zařízení náročné na hardware, ale zejména finančně náročnou záležitostí,
co se týče obsluhy CA. Je náročné obsluhu zaškolit i provozovat. Navíc
veřejné CA s tím počítají a dodávají i software pro podnikové RA.
Jenže vždyť existují komerční produkty jako Netscape Certificate server?
Ano, ale jejich použití v našich podmínkách je omezeno 2 problémy:
-
Tč. tyto produkty neumí pracovat s bezpečným hardware (má být v dohledné
době odstaněno), takže takový produkt je vhodný pro provozování CA třídy
1, případně CA třídy 2, ale to jen pro klientské certifikáty.
-
Export takovéhoto software je k nám omezen, takže mohou být vydávány pouze
certifikáty s omezenou délkou klíče (512 bitů pro RSA) a doba platnosti
takových certifikátů je také omezena.
Kromě komerčních produktů existují i volně šiřitelné CA. Volně šiřitelné
CA mají nevýhodu v tom, že za ně nikdo neručí. Tyto CA bývají ale šířeny
z jiných zemí než USA a Kanady, takže nebývají omezovány délkou šifrovacího
klíče či dobou platnosti certifikátu. Příkladem takového produktu je CA
dostupná s rodinou software známého WWW-serveru Apache.
Jak nahrajeme programem Netscape Navigátor certifikát?
Nejjednodušší metodou je mít certifikát v MIME-formátu, Netscape navigátor
zpracovává dva typy (Content-Type) MIME-formátů certifikátů:
-
Content-Type: application/x-x509-ca-cert
Klient tento typ dat přímo interpretuje jako certifikát CA a nahraje
jej do tabulky certifikátů CA.
-
Content-Type: application/x-x509-user-cert
Klient tento typ dat přímo interpretuje ja uživatelský certifikát a
nahraje jej do tabulky uživatelských certifikátů.
Závěr
Nyní doporučuji pokračovat ve studiu dokumentů uveřejněných na http://www.ica.cz
a vystavit si na této CA certifikát, tím získáte důležité zkušenosti.