Co je kryptografie s veřejným klíčem?
Domů
Články
Co je kryptografie s veřejným klíčem?

Co je kryptografie s veřejným klíčem?

Pokročilí
Zveřejněno Jan 31, 2019Aktualizováno Nov 8, 2022
5m

Úvod

Kryptografie s veřejným klíčem, známá také jako asymetrická kryptografie, je rámec, který na rozdíl od jediného klíče používaného v symetrické kryptografii používá soukromý i veřejný klíč. Použití párů klíčů dává kryptografii s veřejným klíčem jedinečný soubor vlastností a možností, které lze využívat k řešení problémů spojených s jinými kryptografickými technikami. Tato forma kryptografie se stala důležitým prvkem moderní počítačové bezpečnosti a také důležitou součástí rostoucího ekosystému kryptoměn.


Jak kryptografie s veřejným klíčem funguje?

Ve schématu kryptografie s veřejným klíčem používá odesílatel k zašifrování informace veřejný klíč, zatímco příjemce používá k jejímu dešifrování soukromý klíč. Vzhledem k tomu, že jsou tyto dva klíče odlišné, je možné veřejný klíč bezpečně sdílet, aniž by to jakkoli ohrozilo bezpečnost soukromého klíče. Každý pár asymetrických klíčů je jedinečný, takže zprávu zašifrovanou pomocí veřejného klíče si může přečíst pouze osoba, která vlastní odpovídající soukromý klíč.

A protože asymetrické šifrovací algoritmy vytvářejí páry klíčů, které jsou matematicky propojené, jejich délka je mnohem větší než u symetrické kryptografie. Tato větší délka – obvykle 1 024 až 2 048 bitů – velmi ztěžuje výpočet soukromého klíče z jeho veřejného protějšku. Jedním z nejrozšířenějších algoritmů pro asymetrické šifrování, který se dnes používá, je algoritmus RSA. 

Ve schématu RSA se klíče generují pomocí modulu, který se získává vynásobením dvou čísel (častokrát dvou velkých prvočísel). Zjednodušeně řečeno tento modul vygeneruje dva klíče (jeden veřejný, který je možné sdílet, a jeden soukromý, který by měl zůstat utajen). Algoritmus RSA poprvé popsali v roce 1977 informatici Rivest, Šamir a Adleman (proto RSA) a dodnes je hlavní součástí kryptografických systémů s veřejným klíčem.


Kryptografie s veřejným klíčem jako šifrovací nástroj

Kryptografie s veřejným klíčem řeší jeden z dlouhodobých problémů symetrických algoritmů. Tím je předání klíče, který se používá jak pro šifrování, tak i pro dešifrování. Odesláním tohoto klíče prostřednictvím nezabezpečeného připojení hrozí jeho vyzrazení třetím stranám, které si pak mohou přečíst všechny zprávy zašifrované tímto sdíleným klíčem. I když existují kryptografické techniky (např. Diffieho-Hellmanova-Merklova výměna klíčů), které tento problém řeší, pořád jsou zranitelné vůči útokům. Naproti tomu kryptografie s veřejným klíčem umožňuje klíč použitý k šifrování bezpečně sdílet prostřednictvím libovolného připojení. Asymetrické algoritmy proto mají ve srovnání se symetrickými algoritmy vyšší úroveň ochrany.


Generování digitálních podpisů

Dalším využitím asymetrických kryptografických algoritmů je ověřování pravosti dat digitálními podpisy. Digitální podpis je v podstatě hash vytvořený z dat ve zprávě. Při odesílání zprávy může příjemce podpis zkontrolovat pomocí veřejného klíče odesílatele. Tímto způsobem může ověřit nejen zdroj zprávy, ale i to, že s ní nebylo manipulováno. V některých případech se digitální podpisy a šifrování používají zároveň, takže samotný hash může být zašifrován jako součást zprávy. Upozorňujeme ale, že ne všechna schémata digitálního podpisu používají šifrovací techniky.


Omezení

Přestože kryptografii s veřejným klíčem můžete použít ke zvýšení počítačové bezpečnosti a ověření integrity zpráv, má určitá omezení. Vzhledem ke složitým matematickým operacím při šifrování a dešifrování mohou být asymetrické algoritmy při práci s velkým množstvím dat poměrně pomalé. Tento typ kryptografie také do značné míry závisí na předpokladu, že soukromý klíč zůstane utajen. Pokud soukromý klíč omylem prozradíte, je ohrožena bezpečnost všech zpráv, které byly odpovídajícím veřejným klíčem zašifrovány. Také se může stát, že uživatelé soukromý klíč nechtěně ztratí, a v takovém případě pro ně bude přístup k zašifrovaným datům nemožný.


Možnosti využití kryptografie s veřejným klíčem

Tento typ kryptografie se používá v mnoha moderních počítačových systémech k zabezpečení citlivých informací. Pomocí kryptografických technik s veřejným klíčem můžete zašifrovat například e-maily, aby jejich obsah zůstal důvěrný. 

Protokol SSL (Secure Sockets Layer), který umožňuje bezpečné připojení k webovým stránkám, také používá asymetrickou kryptografii. Systémy kryptografie s veřejným klíčem byly dokonce zkoumány jako prostředek k zabezpečení elektronického hlasovacího prostředí, které by potenciálně umožnilo voličům účastnit se voleb z domácích počítačů.

Kryptografie s veřejným klíčem se také významně podílí na technologii blockchainu a kryptoměn. Při zakládání nové kryptoměnové peněženky se generuje dvojice klíčů (veřejný a soukromý klíč). Adresa peněženky se generuje pomocí veřejného klíče, takže ji můžete bezpečně sdílet s ostatními. Soukromý klíč se naopak používá k vytváření digitálních podpisů a ověřování transakcí, a proto musí být utajen. 

Jakmile je transakce ověřena potvrzením hashe obsaženého v digitálním podpisu, může být přidána do blockchainové účetní knihy. Tento systém ověření digitálního podpisu zajišťuje, že finanční prostředky může přesouvat pouze osoba, která má soukromý klíč spojený s příslušnou kryptoměnovou peněženkou. 

Je třeba poznamenat, že asymetrická kryptografie používaná v kryptoměnových aplikacích se od kryptografie používané pro účely počítačové bezpečnosti liší. Bitcoin a Ethereum například používají k ověřování transakcí specifický algoritmus známý jako ECDSA (Elliptic Curve Digital Signature Algorithm – protokol digitálního podpisu s využitím eliptických křivek). ECDSA navíc vytváří digitální podpisy bez použití šifrování. To znamená, že na rozdíl od toho, co si mnozí mylně myslí, blockchain nepotřebuje šifrování.


Závěrem

Kryptografie s veřejným klíčem hraje důležitou roli v zabezpečení moderních digitálních systémů – od zabezpečení počítačů až po ověřování kryptoměnových transakcí. Asymetrické kryptografické algoritmy řeší pomocí páru veřejného a soukromého klíče základní bezpečnostní problémy symetrického šifrování. I když se kryptografie s veřejným klíčem používá už mnoho let, pravidelně se pro ni objevují nové možnosti využití, zejména v oblasti blockchainu a kryptoměn.