6Digitální podpis

Digitální podpisy jsou jedním z nejvýznamnějších prací založených na vývoji kryptografie s veřejným klíčem a poskytují zabezpečení, které by bylo složité implementovat nějakým jiným způsobem. Digitální podpis je elektronický podpis, který slouží k autentifikaci identity člověka, který posílá zprávu nebo člověka podpisujícího dokument s možností zabezpečení integrity obsahu. Digitální podpisy se jednoduše přeposílají a nemůžou být falšované neoprávněnou osobou.

Digitální podpisy jsou založeny na vlastnoručních podpisech, které se používají na určení vlastnických práv nebo na potvrzení daného obsahu zprávy.

Vlastnoruční podpisy musí disponovat následujícími vlastnosti:

- Podpis je bezpečný – podpis by neměl být napodobitelný a případný pokus o falšování podpisu by měl být lehce zjistitelný.
- Podpis ulehčuje autentifikaci – podpis jednoznačně identifikuje majitele, který dokument podepsal bez omezení a vědomě.
- Podpis je nepřenosný – podpis je součástí dokumentu a neoprávněný vlastník není schopen převést podpis na jiný dokument.
- Dokument, který je podepsaný není možné změnit – dokument nemůže být změněn a upraven po jeho podepsání.
- Podpis nesmí být odmítnut – majitel podpisu nemůže popřít schválení podepsaného dokumentu.

Ve skutečnosti žádná z těchto vlastností nemůže být splněná vlastnoručními podpisy. Zároveň by měly všechny tyto vyjmenované vlastnosti splňovat digitální podpisy. Na druhé straně se taktéž mohou vyskytnout různé problémy s praktickou realizací digitálních podpisů. Digitální soubory mohou být lehce kopírované, což může způsobit to, že část dokumentu se přenese do jiného dokumentu. Z toho vyplývá, že podepsaný dokument může být jednoduše měnitelný.

Pro digitální podpis můžeme formulovat tyto požadavky:

- Podpis musí mít formu bitové postupnosti, která závisí na podepisované zprávě.
- Podpis musí obsahovat některé jedinečné informace odesílatele, aby se předešlo falšování a popírání pravosti.
- Realizace digitálního podpisu musí být poměrně jednoduchá.
- Falšování digitálního podpisu musí být výpočetně neproveditelné. Falšováním se vytvoří buď nová zpráva pro existující digitální podpis, nebo falešný digitální podpis pro existující zprávu.
- Praktická úschova kopie digitálního podpisu v paměti.

Digitální podpis může být použit s jakýmkoli druhem zprávy, ať je šifrovaná nebo ne, jednoduše tak, že příjemce si může být jist identitou odesílatele a že zpráva dorazila neporušená.

Existuje několik možných schémat pro digitální podpis. Jedno z nejpoužívanějších je založeno na hash funkci. V tomto případě, hodlá-li uživatel podepsat dokument, musí dodržovat tyto kroky:

1. Výpočet hash kódu dokumentu, který má být podepsán.
2. Odesílatel zašifruje hash kód svým soukromým klíčem, čímž vytvoří digitální podpis (využití asymetrického šifrování).
3. Připojení digitálního podpisu k dokumentu.

Obr. 6.1 Digitální podpis na základě hash funkce

Adresát může následně ověřit pravost tohoto digitálního podpisu pomocí těchto kroků:

1. Výpočet hash kódu dokumentu (kromě digitálního podpisu).
2. Pomocí veřejného klíče odesílatele příjemce dešifruje digitální podpis, čímž získá hash kód vypočtený odesílatelem.
3. Porovnání výsledků získaných ze dvou předcházejících kroků.

Obr. 6.2 Proces verifikace dat digitálním podpisem na základě hash funkce

V případě, že hash kódy získané ve dvou krocích jsou stejné, příjemce bude vědět, že podepsaná data nebyla změněna.