Vyšlo v časopise Computerworld č. 7/2012, dne 6.4.2012, v rámci seriálu Elektronický podpis v praxi
Vytištěno z adresy: http://www.earchiv.cz/b12/b0406001.php3

Není certifikát jako certifikát

Chceme-li zjistit, komu patří konkrétní elektronický podpis, musíme se podívat do certifikátu, na kterém je podpis založen. Ovšem tomu, co v certifikátu najdeme, nemůžeme vždy důvěřovat. Záleží ještě na tom, o jaký druh certifikátu jde.

Pod pojmem "certifikát" si můžeme představit něco jako potvrzení, osvědčení či doklad. Ale o čem? Co takový certifikát dokládá či stvrzuje? A jak konkrétně nám to může pomoci při zjišťování toho, kdo je autorem konkrétního elektronického podpisu či značky? Co je obsahem takového certifikátu?

V prvním přiblížení si certifikát můžeme představit jako obálku, do které někdo vložil lístek s údaji o tom, komu certifikát vystavuje. Pak do této obálky vloží ještě "něco", co je pro dotyčného či dotyčnou charakteristické, a pak obálku zalepí a podepíše. Tedy: pokud bychom byli v klasickém světě papíru a papírových obálek, zalepil by a podepsal obálku. V elektronickém světě vloží vše jako data do vhodného souboru, a ten opatří svým elektronickým podpisem. V praxi spíše elektronickou značkou, protože certifikáty vydávají instituce, tzv. certifikační autority, a nikoli jejich zaměstnanci jako fyzické osoby.

Co je ale ono "něco", co se vkládá do certifikátu spolu s údaji o identitě toho, komu je certifikát vystavován? Pro odpověď si nejprve musíme připomenout, jak vlastně elektronické podpisy (i značky) vznikají: jakýmsi "semletím" podepisovaného dokumentu a soukromého klíče, který je unikátní a charakteristický právě pro podepisující osobu. Ve skutečnosti jde o poměrně složitý výpočet, ale jeho detaily nás v tuto chvíli nemusí trápit. Protože nás v tuto chvíli zajímá něco jiného: jak se přesvědčit o tom, že konkrétní elektronický podpis vytvořil někdo konkrétní? Nestačilo by nám zopakovat celý postup vzniku podpisu, i s jeho soukromým klíčem, a pak porovnat výsledek?

Zázraky asymetrické kryptografie

Pokud by to šlo, stačilo by to. Jenže ono to nejde: má-li být soukromý klíč skutečně soukromý, nesmí ho jeho držitel dávat z ruky. Tím pádem jej ale nemůže dávat ani do svého certifikátu, protože od toho se očekává a požaduje, aby byl naopak plně veřejný. Aby se certifikát mohl rozvěsit (v on-line světě) na každém rohu, a stejně tak se - v rámci jakýchsi pravidel slušnosti a korektního chování - mohl přikládat ke každému podepsaného dokumentu či zprávě.

Naštěstí ale není nutné vkládat soukromý klíč do certifikátu. Existuje totiž lepší řešení: místo soukromého klíče se do certifikátu dá vložit klíč veřejný. Ten je se soukromým klíčem tzv. komplementární, neboli "do páru". Proto se o této dvojici klíčů někdy hovoří také jako o tzv. párových datech. Především ale: díky tomu, jak jsou oba klíče vytvořeny, není možné ze znalosti jednoho z nich odvodit či jinak vypočítat ten druhý. Díky tomu se držitel soukromého klíče nemusí bát poskytnout svůj veřejný klíč skutečně komukoli, kdo o něj bude mít zájem. Ať již samostatně, nebo vložený do (veřejného) certifikátu.

Jenže: k čemu bude někomu jinému veřejný klíč, místo klíče soukromého? Odpověď na tuto otázku je jedním z přínosů tzv. asymetrické kryptografie: to, co se "zamkne" jedním klíčem, lze "odemknout" právě a pouze druhým klíčem. Pokud si tedy pod "zamknutím" představíme podepsání, a to pomocí soukromého klíče, pod "odemknutím" si naopak můžeme představovat ověření platnosti podpisu - a k tomu právě potřebujeme klíč veřejný.

Jen pro úplnost si dodejme, že vytvořit podpis ("uzamknout", a to pomocí soukromého klíče) může jen jedna osoba, a to držitel soukromého klíče. Naopak ověřit platnost podpisu ("odemknout", a to pomocí veřejného klíče) může kdokoli. Protože certifikát, a s ním i veřejný klíč, může být skutečně veřejný.

Komu patří certifikát?

Zpět ale k onomu "lístečku", který je vložen do certifikátu: na něm je napsáno, komu byl certifikát vystaven, a komu současně patří i veřejný klíč. Z toho, jak elektronický podpis funguje, pak vyplývá, že to musí být stejná osoba, které patří i odpovídající soukromý klíč. Přesněji ten soukromý klíč, který je "do páru" s veřejným klíčem, vloženým do certifikátu.

Jenže, a tady nastupuje to zajímavé a důležité: jak moc se můžeme spoléhat na údaje o identitě, uvedené v certifikátu (na pomyslném "lístečku"). Odpovídají pravdě, nebo si je někdo mohl vymyslet? To záleží na tom, kdo certifikát vystavil (resp. vydal), a v jakém režimu.

Existují totiž takové certifikáty, které si kdokoli může vydat sám, a také si do nich napsat, co jen ho napadne. Tedy nejenom své jméno, ale také jméno kohokoli jiného. Pak ale není těžké nahlédnout, že takovémuto certifikátu nemůžeme důvěřovat a spoléhat se na to, co je v něm napsáno. Samozřejmě jej můžeme použít pro různé testování (neboli" "na hraní", pro seznámení se s principy fungování elektronického podpisu), jako tzv. testovací certifikát. Ale rozhodně od něj nemůžeme očekávat právní závaznost: aby elektronický podpis, založený na takovémto certifikátu, mohl být považován za právně závazný a postavený na roveň vlastnoručnímu podpisu. Jedná se pouze o zaručený elektronický podpis - o kterém již z předchozích dílů víme, že sice zaručuje neměnnost (integritu) podepsaného dokumentu, ale vůbec nezaručuje správnost informace o tom, kdo podpis vytvořil.

Kvalifikované certifikáty

Chceme-li mít jistotu o tom, kdo elektronický podpis vytvořil, musíme mít jistotu, že údaje na "lístečku" uvnitř certifikátu jsou pravdivé. Takovouto jistotu nám dává až tzv. kvalifikovaný certifikát. Požadavky na něj jsou totiž zakotveny v zákoně a v zásadě říkají, že při vydávání kvalifikovaných certifikátů se nesmí podvádět. A také že takovéto kvalifikované certifikáty se mohou vydávat pouze reálně existujícím fyzickém osobám. Takže třeba testovací certifikát literární postavy Josefa Švejka může existovat, a můžete si ho klidně vystavit sami. Ale kvalifikovaný certifikát této literární postavy již existovat nemůže.