3Kryptografie s veřejným klíčem

Kryptografie s veřejným klíčem byla vyvinuta proto, aby vyřešila otázku bezpečného přenosu tajného klíče při symetrickém šifrování. Tento problém se podařilo vyřešit použitím dvou klíčů místo jednoho. V tomto procesu jeden klíč slouží na šifrování a druhý na dešifrování.

Tento systém je známý jako kryptografie s veřejným klíčem nebo asymetrická kryptografie. Tyto dva klíče jsou známy jako pár klíčů. V asymetrické kryptografii je jeden z klíčů volně šiřitelný (veřejný klíč). Proto se tato metoda šifrování nazývá kryptografie s veřejným klíčem. Druhý klíč se nazývá soukromý nebo tajný klíč. Podle názvu je zřejmé, že tento klíč už není volně šiřitelný, ale naopak, vlastník ho udržuje v utajení. Díky tomu, že mezi klíči jednoho páru je určitý matematický vztah, je možné data, která se zašifrují veřejným klíčem, dešifrovat jen příslušným soukromým klíčem a naopak. Je důležité poukázat na fakt, že odvodit soukromý klíč od veřejného klíče je velmi obtížné.

Základním nedostatkem kryptografie s veřejným klíčem je, že bude-li mít útočník dostatek času a dostatečný výpočetní výkon, dokáže odvodit soukromý klíč od veřejného a následně dešifrovat zprávu. Kvůli tomu se volí klíče o dostatečné délce (obvykle 1024 nebo 2048 bitů). Čím jsou použité klíče delší (délkou se myslí počet bitů), tým je šifrovací algoritmus odolnější vůči útokům.

Algoritmy kryptografie s veřejným klíčem jsou postaveny na matematických problémech, které v současnosti nemají dostupné řešení. Pro uživatele je jednoduché vytvořit pár klíčů (veřejný a soukromý) a použít je na šifrování a dešifrování. Zmiňovaná obtížnost matematických úkonů se ukáže při pokusu odvodit soukromý klíč při znalosti jen příslušného veřejného klíče. Bezpečnost kryptografie s veřejný m klíčem je zajištěna tímto způsobem; síla algoritmu spočívá v uvedené obtížnosti. Veřejný klíč tedy může být zveřejněný bez jakéhokoli bezpečnostního rizika. Bezpečnost závisí jen na utajení soukromého klíče. Na rozdíl od symetrických šifer není v asymetrické kryptografii potřeba prvotní bezpečný přenos klíče mezi komunikujícími stranami před zahájením samotné komunikace.

Algoritmy kryptografie s veřejným klíčem se používají hlavně na šifrování s využitím veřejného klíče a pro zajištění digitálního podpisu. Šifrování s využitím veřejného klíče znamená šifrování zprávy za přítomnosti veřejného klíče, přičemž jen osoba, která vlastní příslušný soukromý klíč má možnost zprávu dešifrovat a přečíst. Digitální podpis je zpráva, která se podepíše soukromým klíčem odesílatele, přičemž může být verifikovaná kýmkoli, kdo má přístup k veřejnému klíči odesílatele. Obě z těchto aplikací představují příklady důvěrnosti a autorizace dat s využitím kryptografie s veřejným klíčem.

Asymetrické šifry jsou v porovnání se symetrickými pomalejší. Často se ale asymetrické šifry používají na distribuci tajného klíče. Tento tajný klíč se následně použije na šifrování uživatelských dat.

Vzhledem k tomu, že v kryptografii s veřejným klíčem je správa klíčů mnohem jednodušší, je tu v porovnání se symetrickými šiframi mylná představa toho, že správa klíčů pomocí kryptografie s veřejným klíčem je jednoduchá. Navíc si někteří uživatelé mylně myslí, že kryptografie s veřejným klíčem je bezpečnější v porovnání s kryptografií s tajným klíčem. Ve skutečnosti závisí bezpečnost kteréhokoli systému na délce klíče a potřebné výpočetní složitosti vynaložené na prolomení šifry.

Nejznámější algoritmus kryptografie s veřejným klíčem je RSA.