Úvod
Kryptografie veřejného klíče (PKC), také známá jako asymetrická kryptografie, je rámec, který používá soukromý i veřejný klíč, na rozdíl od jediného klíče používaného v symetrické kryptografii. Použití párů klíčů dává PKC jedinečnou sadu charakteristik a schopností, které lze využít k řešení problémů, které jsou vlastní jiným kryptografickým technikám. Tato forma kryptografie se stala důležitým prvkem moderní počítačové bezpečnosti a také kritickou složkou rostoucího ekosystému kryptoměn.
Jak funguje kryptografie s veřejným klíčem?
Ve schématu PKC je veřejný klíč používán odesílatelem k šifrování informací, zatímco soukromý klíč je používán příjemcem k jejich dešifrování. Protože se tyto dva klíče od sebe liší, lze veřejný klíč bezpečně sdílet, aniž by byla ohrožena bezpečnost soukromého klíče. Každý pár asymetrických klíčů je jedinečný, což zajišťuje, že zprávu zašifrovanou pomocí veřejného klíče může číst pouze osoba, která vlastní odpovídající soukromý klíč.
Protože algoritmy asymetrického šifrování generují páry klíčů, které jsou matematicky propojené, jsou délky jejich klíčů mnohem delší než ty, které se používají v symetrické kryptografii. Tato delší délka – obvykle mezi 1 024 a 2 048 bity – extrémně ztěžuje výpočet soukromého klíče z jeho veřejného protějšku. Jeden z nejběžnějších algoritmů pro asymetrické šifrování, který se dnes používá, je známý jako RSA.
Ve schématu RSA jsou klíče generovány pomocí modulu, ke kterému se dospěje vynásobením dvou čísel (často dvou velkých prvočísel). V základním vyjádření modul generuje dva klíče (jeden veřejný, který lze sdílet, a jeden soukromý, který by měl být uchováván v tajnosti). Algoritmus RSA byl poprvé popsán v roce 1977 Rivestem, Shamirem a Adlemanem (potažmo RSA) a zůstává hlavní součástí kryptografických systémů s veřejným klíčem.
PKC jako šifrovací nástroj
Kryptografie veřejného klíče řeší jeden z dlouhodobých problémů symetrických algoritmů, kterým je komunikace klíče, který se používá jak pro šifrování, tak pro dešifrování. Při odesílání tohoto klíče přes nezabezpečené připojení hrozí jeho odhalení třetím stranám, které si pak mohou přečíst všechny zprávy zašifrované sdíleným klíčem. Ačkoli existují kryptografické techniky (jako je protokol pro výměnu klíčů Diffie-Hellman-Merkle), které tento problém řeší, jsou stále náchylné k útokům. Naproti tomu v kryptografii s veřejným klíčem lze klíč použitý pro šifrování bezpečně sdílet přes jakékoli připojení. Výsledkem je, že asymetrické algoritmy nabízejí vyšší úroveň ochrany ve srovnání se symetrickými.
Generování digitálních podpisů
Další aplikací asymetrických kryptografických algoritmů je ověřování dat pomocí digitálních podpisů. V zásadě řečeno, digitální podpis je hash vytvořený pomocí dat ve zprávě. Když je tato zpráva odeslána, může příjemce zkontrolovat podpis pomocí veřejného klíče odesílatele. Tímto způsobem mohou ověřit zdroj zprávy a zajistit, že s ní nebylo manipulováno. V některých případech jsou digitální podpisy a šifrování použity společně, což znamená, že samotný hash může být zašifrován jako součást zprávy. Je však třeba poznamenat, že ne všechna schémata digitálního podpisu používají techniky šifrování.
Omezení
Ačkoli jej lze použít ke zvýšení zabezpečení počítače a ověření integrity zpráv, má PKC určitá omezení. Vzhledem ke složitým matematickým operacím, které se účastní šifrování a dešifrování, mohou být asymetrické algoritmy poměrně pomalé, když jsou nuceny pracovat s velkým množstvím dat. Tento typ kryptografie také silně závisí na předpokladu, že soukromý klíč zůstane tajný. Pokud dojde k náhodnému sdílení nebo odhalení soukromého klíče, bude ohrožena bezpečnost všech zpráv, které byly zašifrovány příslušným veřejným klíčem. Je také možné, že uživatelé náhodně ztratí své soukromé klíče, v takovém případě jim znemožní přístup k zašifrovaným datům.
Aplikace kryptografie veřejného klíče
Tento typ kryptografie používá mnoho moderních počítačových systémů k zajištění bezpečnosti citlivých informací. E-maily lze například šifrovat pomocí technik šifrování s veřejným klíčem, aby byl jejich obsah důvěrný.
Protokol Secure Socket Layer (SSL), který umožňuje bezpečné připojení k webovým stránkám, také využívá asymetrickou kryptografii. Systémy PKC byly dokonce zkoumány jako prostředek k zajištění bezpečného prostředí elektronického hlasování, které by potenciálně umožnilo voličům účastnit se voleb z jejich domácích počítačů.
PKC má také prominentní místo v blockchainu a technologii kryptoměn. Při založení nové kryptoměnové peněženky se vygeneruje dvojice klíčů (veřejný a soukromý klíč). Adresa peněženky je generována pomocí veřejného klíče a lze ji bezpečně sdílet s ostatními. Soukromý klíč se na druhé straně používá pro vytváření digitálních podpisů a ověřování transakcí, a proto musí být držen v tajnosti.
Jakmile je transakce ověřena potvrzením hashe obsaženého v digitálním podpisu, lze tuto transakci přidat do knihy blockchainu. Tento systém ověřování digitálního podpisu zajišťuje, že finanční prostředky může přesunout pouze osoba, která má soukromý klíč spojený s odpovídající kryptoměnovou peněženkou.
Je třeba poznamenat, že asymetrická kryptografie používaná v kryptoměnových aplikacích se liší od těch, které se používají pro účely počítačové bezpečnosti. Například bitcoiny a Ethereum používají k ověřování transakcí specifický algoritmus, známý jako algoritmus digitálního podpisu Elliptic Curve (ECDSA). ECDSA také vytváří digitální podpisy bez použití šifrování. To znamená, že blockchain nepotřebuje šifrování, na rozdíl od mnoha lidí, kteří tomu věří.
Závěrečné myšlenky
Od počítačové bezpečnosti po ověřování transakcí kryptoměn hraje kryptografie s veřejným klíčem důležitou roli v zabezpečení moderních digitálních systémů. Použitím spárovaných veřejných a soukromých klíčů řeší asymetrické kryptografické algoritmy základní bezpečnostní problémy, které představují symetrické šifry. Přestože se PKC používá již mnoho let, pravidelně se pro něj vyvíjejí nová použití a aplikace, zejména v oblasti blockchainu a kryptoměn.

