Vyšlo na www.mediaserver.cz dne 12. srpna 1997
Vytištěno z adresy: http://www.earchiv.cz/axxxk160/a708k161.php3

Digital Certificate

Digital Certificate - digitální certifikát: obecné označení pro údaje, týkající se určitého subjektu a stvrzené jiným subjektem, který se zaručuje za jejich pravost (tzv. certifikační autoritou). Nejčastěji je v certifikátu obsažen veřejný klíč vlastníka certifikátu, který má být veřejně přístupný (ale mohou zde být obsaženy i další údaje). Údaje v certifikátu jsou chráněny pomocí asymetrických šifrovacích technik - jsou zašifrovány privátním klíčem vydavatele certifikátu (certifikační autority), a mohou být dešifrovány s použitím veřejného klíče certifikační autority (který je veřejně známý). Význam a věrohodnost certifikátu jsou závislé jak na věrohodnosti samotné certifikační autority, tak i na způsobu, jakým tato autorita získává a ověřuje údaje, které svým certifikátem stvrzuje.

Život nás učí, že i ve světě počítačů bývají skutečně těžké a obtížně řešitelné problémy spíše organizačního , etického a "všeobecně-politického" rázu, než rázu technického - v mnoha případech není až tak náročné najít možné technické řešení, či dokonce několik technických řešení, která připadají v úvahu. Skutečným problémem bývá spíše jejich praktické prosazení do života, sjednocení zainteresovaných stran na volbě jednoho konkrétního řešení, a v neposlední míře i zajištění všech potřebných souvislostí, mezi které může patřit například nezbytná legislativní podpora, potřebná osvěta, zaškolení uživatelů apod.

Nejinak je tomu i ve světě "elektronické bezpečnosti", kde také existuje celá řada technik, algoritmů a postupů. Jejich praktické nasazení a prosazení do každodenního života však bude skutečně pořádným oříškem, o jehož nesmírné složitosti si teprve začínáme dělat skutečnou představu. Jen si to zkusme představit na konkrétním příkladu asymetrických šifrovacích technik (asymetrické kryptografie), která předpokládá existenci privátních (utajovaných) klíčů, a klíčů veřejných. Vtip, šikovnost a výhodnost těchto technik, používaných například i pro potřeby digitálního podepisování (viz minulé vydání této rubriky) zde staví na tom, že veřejné klíče jsou skutečně veřejné, a že je možné je doslova "rozvěsit" všude, rozesílat na všechny strany, přikládat jako přílohu k odesílaným zprávám apod. Dobře, pak je ale třeba počítat i s tím, že někdo se zlými úmysly bude rozdávat či rozvěsí na nejrůznější veřejná místa své veřejné klíče jménem někoho jiného, resp. že bude o sobě tvrdit, že je někým jiným, než kým ve skutečnosti je. Čemu pak bude možné věřit?

Zkusme si poněkud podrobněji rozebrat skutečnou podstatu problému. Většina kryptografických technik funguje jako určité "prodlužovadlo důvěry" - v tom smyslu, že když někdo vkládá dostatečnou důvěru v jistý subjekt A, existující kryptografické techniky umožňující "prodloužit" tuto důvěru i na subjekt B, a to s poměrně velkou mírou bezpečnosti. Otázkou ovšem je "kde začít", a jak získat důvěru ve vhodný výchozí subjekt? Co jsou platné sebedokonalejší techniky, které začnou u někoho, kdo šikovně podvádí?

Právě naznačený problém se samozřejmě týká i situací, kdy nejrůznější subjekty potřebují říci co jsou zač, neboli prokazovat svou identitu - ať již pro potřeby digitální podepisování, či obecněji pro potřeby digitálních transakcí. Jak to tedy udělat například s umisťováním veřejných klíčů na veřejná místa, a jak zabránit tomu, aby tam někdo dal svůj klíč jménem někoho jiného? Kdo zaručí, že veřejně vystavený veřejný klíč je skutečně pravý, a že skutečně patří tomu kdo je vydáván za jeho vlastníka? Myšlenka principiálního řešení je vcelku jednoduchá - za pravost zveřejňovaných údajů se zaručí někdo jiný, resp. někdo jiný na ně "dá svůj palec". Konkrétní naplnění této myšlenky pak vhodným způsobem využívá schopnost kryptografických technik "prodlužovat důvěru" - nevím-li zda určitý veřejný klíč skutečně patří subjektu B, ale existuje-li jiný subjekt A, který považuji za důvěryhodný a tvrdí-li tento subjekt A, že zmíněný klíč skutečně patří subjektu B, pak si z toho mohu učinit následující závěr: mohu věřit v pravost klíče subjektu B.

V praxi se právě naznačená myšlenka realizuje ve formě tzv. certifikátů - certifikát není nic jiného, než údaje týkající se určitého subjektu (typicky např. jeho veřejný klíč), "zabalené" a podepsané jiným subjektem, který se zaručuje za jejich pravost. Konkrétně to znamená, že vydavatel certifikátu příslušné údaje podepíše svým vlastním digitálním podpisem, čímž je současně zaručena i jejich integrita (původnost obsahu).

Pomocí certifikátů se tedy přenáší otázka důvěry z mnoha různých subjektů na jediný subjekt - ten subjekt, který vydal certifikát, a je tudíž proto označován jako tzv. certifikační autorita (certification authority). Velmi podstatný je zde i kvantitativní aspekt celé věci: bylo by značně nepraktické muset posuzovat otázku důvěryhodnosti mnoha různých zdrojů informací. Místo toho je snazší posílit důvěryhodnost několika málo certifikačních autorit, které pak mohou vydávat své certifikáty stvrzující důvěryhodnost informací pocházejících z mnoha dalších zdrojů.

Celá myšlenka certifikátů a certifikačních autorit však má několik háčků: jak si má například certifikační autorita ověřovat pravdivost údajů, na která následně "dá svůj palec"? S tím samozřejmě stojí a padá praktická věrohodnost certifikátů - v praxi se tato otázka může řešit například tak, že existují různé stupně či úrovně certifikátů. Například společnost VeriSign vydává tři třídy certifikátů, přičemž certifikát první třídy získá kdokoli s vlastní elektronickou adresou, pro certifikát druhé třídy je zapotřebí ověření identity uživatele ve vhodné databázi, a pro certifikát třetí třídy je nutné notářské ověření identity. Obecně ale tento aspekt certifikátů není zdaleka dořešený, a v každém případě je nutné posuzovat věrohodnost certifikátů i s uvážením toho, jaké údaje vlastně stvrzují (certifikují).

Další otevřenou otázkou kolem certifikátů a certifikačních autorit je věrohodnost samotných certifikačních autorit. Některé asi mohou být "samocertifikační", v tom smyslu že jejich věrohodnost bude dána apriorně, jejich samotnou existencí (resp. věrohodností subjektu, který certifikační autoritu zřizuje). Takovýchto samocertifikujících autorit však bude moci existovat jen velmi málo, aby jejich důvěryhodnost nebyla devalvována - například jen jedna certifikační autorita v každém státě (zaštítěna státem jako takovým), nebo třeba jen jedna celosvětová certifikační autorita (zaštítěná například od OSN). Všechny ostatní certifikační autority by pak měly nějakým způsobem odvozovat svou věrohodnost od jiných certifikačních autorit. Je ovšem otázkou, jakým způsobem by se tak mělo dít - měla by vzniknout přísně hierarchická struktura certifikačních autorit, tedy jakými "strom důvěry" (hierarchy of trust)? A kdo by ji měl budovat? Horkým kandidátem jsou samozřejmě banky a finanční instituce, které k tomu mají obrovskou motivaci. Nebo by měla být věrohodnost systému certifikačních autorit podepřena vztahy obecnějšího, a ne pouze přísně hierarchického charakteru - měl by tedy existovat obecnější "graf důvěry", či přímo "pavučina důvěry" (web of trust)?.

Jasná je zatím pouze jedna věc: že certifikačních autorit bude muset být více. Nejen kvůli organizační zvládnutelnosti a počtu certifikátů, které bude potřeba vydávat, ale kvůli potřebě, aby existovaly různé druhy certifikátů, šité na míru specifickým účelům - například konkrétní firma bude chtít vydávat certifikáty pro své zaměstnance, a v nich vyjadřovat například to, co je příslušný zaměstnanec oprávněn dělat (o jak vysokých nákupech smí rozhodovat, jaký druh smluv může podepisovat, jaké závazky za firmu může přijímat atd.). Zde se přitom využívá skutečnosti, že digitální certifikáty jsou obecně vzato datovými strukturami, a jako takové mohou obsahovat i nejrůznější další údaje, než jen položky typu veřejných klíčů.


Další zdroje informací:
Přehledové články o problematice certifikátů a certifikačních autorit lze nalézt např. zde a zde. Materiály tutoriálového charakteru pak zde a zde a zde.
Z domovských stránek firem, které se zabývají certifikací, lze zmínit např. stránky firmy VeriSign, IBM, Netscape či Tandem .