ALTE DOCUMENTE
|
||||||||||
Secret key vs. public key cryptography: (kryptografie s tajným klíčem, vs. kryptografie s veřejným klíčem): dva základní přístupy k ochraně informací prostřednictvím jejich sifrování, lisící se v povaze a významu klíčů, parametrizujících sifrovací algoritmus. Metody s tajným klíčem pouzívají stejný klíč pro zasifrování i zpětné desifrování, a tento klíč musí vlastnit obě (resp. vsechny) komunikující strany. Naopak nikdo jiný tento klíč nesmí znát (proto: "tajný klíč"). Kryptografické metody s veřejným klíčem pouzívají ve skutečnosti dvojice klíčů, které jsou vztazené k jednotlivým účastníkům komunikace: privátní klíč si kazdý účastník ponechává jen a jen pro sebe, zatímco svůj veřejný klíč zpřístupňuje vsem ostatním. Ve 15315t192p 345;ejný a privátní klíč jsou přitom vzájemně komplementární: co je uzamknuto jedním z nich, můze být odemknuto pouze druhým z nich.
Moderní kryptografie nabízí více mozných přístupů i celých strategií ochrany informací před různými variantami jejich ohrození. Tradičním přístupem (který jsme ostatně mlčky předpokládali v minulém vydání této rubriky) je pouzití dobře známého (tj. plně zveřejněného) postupu převodu zdrojového textu na sifrovaný text (tzv. veřejně známého sifrovacího algoritmu), parametrizovaného dobře utajeným (tj. nezveřejňovaným) klíčem, kterému se ne nadarmo říká tajný klíč (anglicky: secret key). Vse přitom tězí z faktu, ze ani se znalostí sifrovacího algoritmu (a dokonce ani se znalostí zdrojového textu) není mozné si domyslet, odvodit či dopočítat tajný klíč. Přesněji: je sice známo jak by se takový tajný klíč měl hledat, ale současně se ví, ze jeho faktické nalezení by trvalo neúnosně dlouho.
Důlezité je také uvědomit si, ze takovýto tajný klíč je pouze jeden - v tom smyslu, ze se pouzívá jak pro samotné zasifrování (encyption) zdrojového textu, tak i pro zpětné desifrování jiz zasifrovaného textu (decryption). Proto se také příslusné sifrovací techniky někdy označují jako symetrické (pouzívající stejný klíč na obou "stranách"). To je na jedné straně jistou výhodou, zejména tam kde data nikam necestují, a jejich sifrování a desifrování provádí jeden a tentýz subjekt (tedy například při archivaci zasifrovaných dat na zálozní média). Současně je ale existence jediného tajného klíče velkou nevýhodou v situaci, kdy si zasifrovaná data předávají mezi sebou dva různé subjekty - k tomu, aby jejich komunikace měla rozumný smysl, musí oba vlastnit jeden a tentýz tajný klíč, neboli sdílet spolu jedno společné tajemství. Samotné vlastnictví tajného klíče by přitom jestě nemuselo být az tak velkým problémem. Tím je spíse přenos tajného klíče, resp. distribuce tajných klíčů obecně: k tomu, aby se mohlo odněkud někam přenést něco důlezitého (vlastní zpráva), a nedostalo se to do nepovolaných rukou, musí se nejprve přenést či jinak dopravit něco jiného, neméně důlezitého (tajný klíč). Tento logický paradox, připomínající známé dilema o prvotnosti vejce či slepice, je přitom doslova vrozen vsem technikám pracujícím s tajným klíčem, které se jej nemohou z principiálních důvodů zbavit. Musí se s ním vyrovnat nějakým jiným způsobem, například distribucí klíčů jinou (ne-elektronickou) cestou. Vzdy se tím ale zvysují potenciální rizika - ať jiz riziko prozrazení tajného klíče, kvůli kterému pak jakákoli ochrana přichází vniveč, či například riziko předání klíče někomu nepovolanému, kdo pak můze vystupovat jménem skutečně oprávněného příjemce apod.
Snahy o odstranění právě popsaného paradoxu daly vzniknout následující zajímavé myslence: slo by nějak zařídit, aby klíč nemusel nikam cestovat (resp. mohl zůstat jen na místě kde byl vytvořen)? S tím ze pokud by v souvislosti s mozností jeho pouzití přeci jen bylo třeba něco přenést, byla by to jen taková informace, která můze být veřejná, a její distribuce by tudíz nebyla zádným principiálním problémem?
V roce 1976 dva vědci na Stanfordově univerzitě přisli na to, jak to zařídit: museli k tomu ale rozdělit původně jediný tajný klíč na dva samostatné klíče, a kazdému účastníkovi zabezpečené komunikaci přidělit jednu takovouto dvojici klíčů (jako jeho vlastní klíče, vztahující se k jeho osobě - zatímco původní tajný klíč byl vztazen spíse k informaci jako takové, nez k účastníkovi komunikace). Jeden z dvojice klíčů, označovaný jako privátní klíč (anglicky: private key) představuje "tajnou" část zabezpečujících informací, a má tu důlezitou vlastnost, ze vlastník tohoto privátního klíče jej nemusí nikomu sdělovat (zejména jej nemusí nikomu posílat). Druhý klíč, označovaný jako veřejný (anglicky: public) pak je skutečně tím, co naznačuje jeho název - je tou částí informace slouzící potřebám zabezpečení, kterou není třeba nijak utajovat, ale je naopak záhodno ji co mozná nejvíce "roztroubit do světa". Dalsím velmi důlezitým momentem je skutečnost, ze znalost veřejného klíče nevypovídá nic uzitečného o tom, jak vypadá privátní (neveřejný) klíč: případný "nepřítel", který by chtěl najít privátní klíč někoho jiného, bude mít přesně stejně práce s jeho nalezením bez ohledu na to, zda má veřejný klíč dotyčné osoby nebo nikoli.
Pro správné pochopení toho, jak zabezpečení pomocí veřejných a privátních klíčů můze fungovat, je vhodné si představit ze oba klíče jsou vůči sobě komplementární (doplňkové, fungující jako kus a protikus): co je "uzamknuto" jedním z těchto vzájemně komplementárních klíčů, můze být odemknuto právě a pouze druhým z nich. V tomto smyslu je také jejich pouzití označováno jako tzv. asymetrické sifrování.
Nyní si jiz můzeme snadno vysvětlit mozné efekty pouzití takovýchto klíčů - předpokládejme neveřejnou komunikaci mezi dvěma osobami, kterým budeme pro jednoduchost říkat Václav a Milos1. Kazdý z nich nechť má svůj privátní klíč, který si nechává jen a jen pro sebe, a dále veřejný klíč, který je naopak kazdému znám. Dále předpokládejme, ze Václav chce poslat neveřejnou zprávu Milosovi: pokud ji Václav zakóduje veřejným klíčem Milose, má jistotu, ze půjde "odemknout" pouze Milosovým privátním klíčem, a tudíz jen samotnému Milosovi. Tím se dosáhne potřebné "privátnosti" zprávy, kterou si nemůze přečíst nikdo jiný nez vlastník Milosova privátního klíče. Současně s tím se zajistí i to, ze zpráva se dostane jen do rukou toho, komu je určena (tj. Milosovi). Nebude tím ale zajistěno "ověření identity odesilatele", tj. Milos nebude mít záruku, ze zpráva skutečně pochází od Václava - protoze Milosův veřejný klíč si mohl přečíst a pouzít kdokoli, nejen pouze Václav. Zcela jinak tomu bude v případě, kdy se Václav jako odesilatel rozhodne "uzamknout" zprávu pomocí svého vlastního privátního klíče, a poslat ji Milosovi. Milos jako příjemce bude muset "odemknout" přijatou zprávu pomocí Václavova veřejného klíče (který je mu, tak jako kazdému jinému, dobře znám). Tím Milos získá jistotu o tom, ze autorem zprávy je skutečně Václav (protoze ji mohl "zamknout" pouze vlastník Václavova privátního klíče, tj. pouze Václav sám). Naopak Václav nebude mít záruku, ze jeho zprávu si přečetl pouze Milos a ne nikdo jiný - protoze Václavův veřejný klíč si mohl zjistit kdokoli jiný, a s jeho pomocí zprávu "odemknout". V důsledku toho není tímto způsobem zaručena ani "privátnost" samotné zprávy (ale pouze autenticita jejího skutečného odesilatele).
Pokud bychom ale obě popsané varianty vhodně zkombinovali, dosáhli bychom téměř ideálního efektu: jediným mozným (a dokonce prokazatelným) odesilatelem bude Václav, jediným mozným příjemcem bude Milos, a nikdo jiný nebude mít sanci se obsah zprávy dozvědět. Proč se tedy vůbec jestě uvazuje o nějakých jiných alternativách?
Důvody jsou ryze praktické - to, co jsme si popisovali, je jen velmi základní představa. V praxi například není zrovna jednoduché nalézt (resp. vypočítat) dvojici veřejný + privátní klíč (tak, aby vse skutečně fungovalo způsobem, který jsme si právě naznačili). Hlavně je ale praktické pouzívání kryptografických technik zalozených na veřejných a privátních klíčích značně náročné, zejména na výpočetní kapacitu (přinejmensím ve srovnání s technikami, které pouzívají tajný klíč). Právě to je hlavní důvod, proč techniky s veřejným klíčem dosud nepřevládly. V praxi se dnes rýsuje jako nejefektivnějsí symbióza obou technik: techniky zalozené na veřejných a privátních klíčích se pouzijí jen v úvodní části zabezpečené komunikace, pro potřeby distribuce tajných klíčů. Jakmile pak jsou tyto tajné klíče bezpečně na místě svého určení, dalsí průběh komunikace je uz zabezpečován méně náročnými technikami zalozenými na pouzití tajných klíčů. Ke konkrétním příkladům se jestě dostaneme.
V anglosaské literatuře se pro stejné
účely obvykle pouzívají anglická jména z počátku abecedy,
například
|