SERIÁL: ELEKTRONICKÉ PODEPISOVÁNÍ V PRAXI

Technické aspekty elektronického podepisování

Autor textu: Petr Dolejší, Michal Hanzal | Datum publikace: 19. 8. 2021 | Autor grafiky: SEFIRA, fotobanka

Elektronický podpis se v posledních letech postupně dostal i na stránky běžných deníků. Přitom mnoho z nás nemá jasno, co se přesně při elektronickém podepisování vlastně děje, jaké kroky musí proběhnout. Z nejčistšího technického pohledu je účel elektronického podpisu prostý. Kryptograficky „tvrdé“ zajištění, že podepsaná data mohou pocházet od jednoho jediného zdroje a to konkrétně vlastníka použitého soukromého klíče.

Role kryptografie v elektronickém podepisování

Elektronický podpis založený na asymetrické kryptografii stojí na matematickém modelu dvojice klíčů, veřejného a soukromého. Pomocí soukromého klíče elektronický podpis vzniká, veřejný klíč umožní ověření jeho platnosti.

Označení klíčů jako soukromého a veřejného není samoúčelné, protože tyto klíče mají jasně definované vlastnosti:

  • data zašifrované jedním klíčem je možné dešifrovat pouze za použití druhého klíče,
  • z veřejného klíče není možné snadno odvodit hodnotu soukromého klíče. Lze jej proto sdílet s protistranou za účelem ověření pravosti podpisu – např. pomocí certifikátu,
  • délka klíče se volí taková, aby nebylo snadné prolomit soukromý klíč hrubou silou.

Výše uvedeným podmínkám vyhovují například klíče na bázi velkých prvočísel s délkou klíčů alespoň 2048 bitů. Alternativně se v poslední době objevují nové algoritmy založené na eliptických křivkách označované ECDSA, které jsou méně výpočetně náročné a hodí se např. pro použití v různých mobilních zařízeních či aplikacích IoT.

Další články ze seriálu

Vytvoření elektronického podpisu

Z pohledu uživatele je podepsání dokumentu, tedy vytvoření elektronického podpisu na bázi certifikátu, jen pár kliknutí a zadání PIN kódu. Na pozadí se toho však děje výrazně více.

  1. vytvoření otisku dokumentu o pevné délce (např. 512 bitů pro libovolně velký dokument) vhodnou jednosměrnou HASH funkcí (např. SHA512). Prostřednictvím otisku lze zkontrolovat integritu dokumentu (je prakticky nemožné najít 2 dokumenty, které mají stejný otisk);
  2. zašifrování otisku soukromým klíčem;
  3. výsledná zašifrovaná data se spolu s informací o držiteli soukromého klíče (certifikát obsahující veřejný klíč a další popisné informace) vloží ve vhodném technickém formátu do dokumentu, čímž vznikne elektronický podpis.

Volitelně lze doplnit elektronický podpis o ověřitelný časový údaj ve formě časového razítka. Toto všechno automaticky zajistí použitá podpisová aplikace jako je např. běžný Adobe Acrobat Reader.

Ověření platnosti podpisu

Správnost podpisu lze následně ověřit veřejným klíčem (či, jak bylo zmíněno výše, certifikátem, který jej obsahuje) a vlastním podepsaným dokumentem následovně:

  1. Spočítání kontrolního otisku dokumentu stejnou HASH funkcí (je uvedeno ve vlastnostech podpisu);
  2. Dešifrování dat z elektronického podpisu veřejným klíčem a získání původního šifrovaného otisku;
  3. Porovnání takto získaných otisků.
    • Pokud souhlasí, lze se spolehnout na to, že tento dokument byl podepsán držitelem (pozor, ne nutně vlastníkem!) soukromého klíče, ke kterému přísluší použitý veřejný klíč.
    • Pokud nesouhlasí, buď bylo s dokumentem po jeho podpisu manipulováno (v bodě 1 je otisk z jiného dokumentu), nebo byl podepsán jiným soukromým klíčem než tím, který odpovídá použitému veřejnému klíči.

Výše uvedený postup je technickým ověřením, zda se jedná o potenciálně platný podpis. Druhý aspekt, který je třeba prověřit, je identita podepisujícího. Základní informaci nám poskytnou údaje uvedené v příslušném certifikátu. O tom, jaké máme certifikáty, kdo je vydává a jaké podpisy na základě certifikátů mohou vzniknout, si povíme v dalším díle.

Chci vědět víc o certifikátech a PKI

Články s podobnou tématikou

2021-09-20T11:53:39+02:00
Přejít nahoru