Slovník: Elektronický podpis

Dnes vám pořádně a se vším všudy vysvětlím podstatu elektronického podpisu a jeho funkce ve veřejných databázích. Použiju příkladnou trojici postav – Freda, Lo a Alžbětu.

1    Asymetrické šifry

Jak obecně fungují asymetrické šifry? Nejprve vygenerujeme matematicky svázaný pár soukromého a veřejného klíče. Klíč veřejný je vypočítán jednosměrnou funkcí a tzv. seed (číselný bod, od kterého se odrazí generátor pseudonáhodných čísel) zajišťuje nedeterministické vytvoření klíče soukromého.

Pseudonáhodná čísla nemůžeme zařadit mezi náhodná, protože se v jednom bodě začne opakovat jejich předešlá sekvence (posloupnost), což je pro bezpečnost kryptografie nežádoucí kvůli možnosti útoku frekvenční analýzou, kdy podle četnosti určitých částí kódu útočník rozklíčuje písmena, která představují.

Soukromý klíč nikdy nepřijde do kontaktu s nezabezpečeným prostředím, což je největší výhoda symetrické kryptografie.

Nedeterministický se v kryptografii používá pro procesy, které nejdou zpětně odvodit. Např. pokud budu generovat náhodná čísla podle „zrnění“ na CRT televizoru (staré bedny s vypouklými obrazovkami), nikdo nedokáže předpovědět, jaká budou, i kdyby měl všechny informace o aktuálním stavu veškeré hmoty ve vesmíru. Maximálně dokáže určit pravděpodobnost.

Existuje několik asymetrických šifer, ale mezi základní patří Diffie-Hellmanova výměna klíčů a elektronický podpis – ostatní šifry jsou pouze variacemi stejného principu. My nebudeme zabíhat do nějakých složitých variant a vysvětlíme si základní principy.

1.1 Otevřený zámek

Analogie otevřeného zámku nám poslouží k pochopení dvou hlavních asymetrických šifer. Fred má rád věci ve vlastních rukou, a tak Stevovi pošle schránku s odemčeným zámkem. Pokud Steve po vložení zprávy zámek zacvakne, má Fred jistotu, že cestou nemůže Lo obsah schránky změnit.

Aby mohli komunikovat obousměrně, Steve do schránky kromě zprávy vloží ještě vlastní otevřený zámek. Pak Fred otevře svůj zámek, otevře schránku, vloží dovnitř svou zprávu a svůj odemčený zámek, a poté schránku zamkne Stevovým zámkem.

Nikdo nemusí odesílat soukromé klíče ke svým zámkům, což jsem již v úvodu zmínil jako největší výhodu asymetrické kryptografie. Rozeberme si, co který klíč zastupuje:

  • Veřejný šifrovací klíč – odpovídá odemčenému zámku
  • Soukromý šifrovací klíč – odpovídá klíčům k zámkům
  • Zpráva – uzamčená data

1.2 Bezpečnost

Pokud ale do komunikace Lo zasháhne, má Alžběta se Stevem problém. Lo totiž vymění veřejné klíče (resp. zámky – na to pozor) za své, s nimiž dokáže komunikaci dešifrovat.

Man in the middle attack (MITM) je aktivní útok, při němž útočník nejen komunikaci sleduje, ale také do ní zasáhne.

Podstrčí jim schránky se svými vlastními zámky vně i uvnitř, takže zprávy bude moci odemknout a přečíst.

Proto přispěchá Fred a poradí jim, aby si předali tzv. datový otisk veřejného klíče (vypočítaný jednosměrnou funkcí), a to jiným způsobem tak, aby nikdo nemohl zasáhnout – třeba přes telefon. Pak mohou oba potvrdit, že druhý dostal autentický klíč. Má to ale háček.

Co když ale budou úplně všechny komunikační cesty nebezpečné a odposlouchávané od Lo? Sice je to nepravděpodobné, ale Alžbětě na její zprávě pro Steva hodně záleží.

1.3 Naprosté zveřejnění

Alžběta musí mít jistotu, že Stevův veřejný klíč je skutečně Stevův veřejný klíč. Steve tento problém ještě neumí úplně vyřešit, a tak svůj klíč zveřejní všude, kde se dá. Pokud mu někdo chce poslat zprávu, ať ji laskavě zašifruje tímto klíčem. Nikdo jiný nedokáže takto odeslané zprávy číst, protože nemá soukromý klíč. Podobné, jako kdyby do světa rozházel odemčené zámky.

Samozřejmě musí nějakým způsobem ještě říct, že ty zámky jsou jeho. Pokud to udělá, Alžběta zámek jednoduše vezme a zamkne svoje psaní, které odemkne jedině Steve. V kryptografii zamknutí znamená zašifrování, ale první pojem si vizualizujete určitě lépe.

2    Elektronický podpis

Elektronický podpis jako systém neskrývá obsah zpráv, ale pouze jej autorizuje.

Elektronický podpis je asymetrická šifra pro podepisování dokumentů, naznačená ve článku výše. Na rozdíl od normálního podpisu totiž podpis elektronciký závisí mimo soukromého klíče i na obsahu zprávy, tzn. je pro každou zprávu jiný, čímž se zamezí klasickým podvodům falšovacího typu. Elektronický podpis nemůžete jednoduše vzít a vrazit ho pod jinou zprávu, a proto je silnější. Ověřování probíhá matematicky s použitím podpisu, zprávy a veřejného klíče. Kdybychom to zapsali závorkami, do nichž vepíšeme, co pro funkci použijeme, vznikne:

  • Podepsání (soukromý klíč, zpráva) → podpis
  • Ověření (podpis, zpráva, veřejný klíč) → autentický/neautentický

Připomínám, použili jsme jednosměrné funkce a nikdo za rozumnou dobu nedokáže odvodit z podpisu a zprávy soukromý klíč, aby mohl náš podpis falšovat.

Zda ověřovatel přijme výstup z ověřovacích funkcí (pravý/nepravý), záleží čistě na logice věci, protože je matematicky podloženo, že se ověřovací funkce nikdy nemýlí. To je poměrně důležité si uvědomit – krypto nám pouze dává informaci, zda je podpis falešný, nebo ne. Až pak my lidé naprogramujeme, co se bude dít, jestliže bude pravý.

Elektronickým podpisem obvykle něco potvrzujeme, když by někdo do procesu ověření zasáhl, aby „nevyšel“, i když je podpis autentický, naprosto kdokoliv by mohl dokázat, že ověření neproběhlo korektně. Navíc, protože podpis v dnešní kryptografii většinou potvrzuje transakce, nedává nesprávné ověření smysl. Ale i takové otázky je třeba si pokládat. V závěru první části se podíváme, jak vytvořit „publikum“ pro schvalování podpisu pomocí veřejné účetní knihy.

K čemu ale elektronický podpis bude Alžbětě?

2.1 Digitální certifikát veřejného klíče

Ona mu rozumět nemusí, takže v podstatě k ničemu. Je pro vás, abyste pochopili proces, kterým ověří spojení veřejného šifrovacího klíče s jeho vlastníkem, protože to nám dělalo celou dobu problém. Digitální certifikát veřejného klíče je vlastně ověřená „samolepka“, že tento zámek patří Stevovi.

V praxi probíhá certifikace ve dvou fázích. Představte si, že Alžběta chce podepsat svůj veřejný klíč. Využije k tomu tzv. certifikační autoritu třetí strany, které poskytne veřejný klíč a osobní data, jako email, jméno apod., záleží na certifikační politice.

Certifikační autorita zajišťuje spojení veřejného klíče a jeho vlastníka. Potřebuje k tomu však osobní údaje.

Nyní certifikační autorita ověří, že osobní údaje souhlasí s osobou, za kterou se Alžběta vydává. Nastává nejchoulostivější fáze celého procesu. Jakmile je dokončena, certifikační autorita údaje se jménem a veřejný klíč podepíše (jako jednu zprávu) a výsledek (tzv. certifikát) předá Alžbětě.

Digitální certifikát jsou digitálně podepsaná data veřejného klíče a identifikačních dat uživatele (jméno atd.). Podpis se ověřuje párovým klíčem certifikační autority a výstup je „pravý/falešný“.

Data certifikátu, včetně podpisu, jsou plně viditelná, proto si certifikát představujte raději jako identifikační kartu než zámek. Veřejný klíč autority jako představa skutečného klíče ještě nevadí, ale zámek jako certifikát by vás teď mátl, protože nic nedešifruje – pouze říká, zda je podpis platný.

Steve udělá to samé a oba dostanou veřejný klíč certifikační autority pro ověření jejího podpisu a autenticity certifikátu. Nyní, ať použijí jakoukoliv z asymetrických šifer, kde je potřeba veřejný klíč, bude jejich komunikace bezpečná. Ukážeme si.

Alžběta pošle otevřený zámek podepsaný certifikační autoritou, kterou si Steve ověří podle schématu digitálního podpisu jejím certifikačním veřejným klíčem, umístěným kdekoliv (internet, úřad…). Nyní má Steve jistotu, že Alžbětin veřejný klíč (zámek) je skutečně Alžbětin.

Podepisování Soukromý klíč autority Zpráva: osobní data jako jméno apod. + veřejný klíč Alžběty Podpis dat
Ověřování Podpis dat Zpráva Veřejný klíč autority Podpis platný/neplatný, veřejný klíč pravý/falešný

Steve ho pak vezme a zamkne s ním schránku, kam vloží svůj veřejný klíč, který Alžběta ověří úplně stejně. Nyní si mohou schránku zamykat a odemykat tak, jak jsem popsal ve článku Otevřený zámek a posílat si tajná psaní, která by zákeřná Lo tak moc chtěla rozluštit.

Kde vznikají slabá místa takové komunikace?

  • Když certifikační autorita vydá svoje veřejné klíče pro oba účastníky – přenos po internetu opět podléhá problému naprostého zveřejnění
  • Když certifikační autorita ověřuje informace – mohou být podvržené
  • Když certifikační autorita zpracovává osobní data – obě strany na ni v tu chvíli plně spoléhají

Takže jsme se dostali na začátek. Vždy musíme spoléhat na třetí důvěryhodnou stranu. Nebudu rozebírat, jaká je pravděpodobnost, že asymetrickou kryptografii s digitálními certifikáty někdo podvede.

Shrnutí

Elektronický podpis závisí na podepisovaných datech, a proto ho nelze zfalšovat jinak než odhalením soukromého klíče, který se však vůbec nedostane do přímého kontaktu s prostředím, kde zprávu podepisujeme.

Ověření podpisu probíhá z dat podpisu a korespondujícího veřejného klíče. Aby ověřovatel věděl, kterým veřejným klíčem má ověřit pravost podpisu, je třeba mu ho zveřejnit.

Digitální certifikát je podpis veřejného klíče vydaný třetí stranou – certifikační autoritou – která se zaručuje za to, že veřejný klíč patří konkrétní osobě. V podstatě ale pouze přenáší ten samý problém naprostého zveřejnění.

3   Problém naprostého zveřejnění

Sdílet příspěvek

Napsat komentář

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..