V současné době se kryptografické systémy dělí na dvě hlavní oblasti výzkumu: symetrickou a asymetrickou kryptografii. Symetrická kryptografie je často chápána jako symetrické šifrování samotné, zatímco asymetrická kryptografie zahrnuje dvě hlavní použití: asymetrické šifrování a digitální podpisy.

Můžeme tedy definovat následující skupiny:

  • Symetrická klíčová kryptografie

    • Symetrické šifrování

  • Asymetrická kryptografie (nebo kryptografie s veřejným klíčem)

    • Asymetrické šifrování (nebo šifrování veřejným klíčem)

    • Digitální podpisy (lze vytvořit na základě šifrování nebo bez něj)

Tento článek se bude zabývat symetrickými a asymetrickými šifrovacími algoritmy.


Symetrické vs. asymetrické šifrování

Šifrovací algoritmy se často dělí do dvou kategorií: symetrické a asymetrické šifrování. Zásadní rozdíl mezi těmito dvěma šifrovacími metodami je v tom, že symetrický šifrovací algoritmus používá jeden klíč, zatímco asymetrické šifrování používá dva různé klíče, které však spolu souvisí. Toto vysvětlení rozdílu, i když se zdá jednoduché, vysvětluje funkční rozdíly mezi dvěma formami šifrovacích metod a způsoby jejich použití.


Co jsou šifrovací klíče?

V kryptografii generují šifrovací algoritmy klíče jako sérii bitů, které se používají k šifrování a dešifrování určité informace. Způsob použití těchto klíčů vysvětluje rozdíl mezi symetrickým a asymetrickým šifrováním.

V symetrických šifrovacích algoritmech se používá stejný klíč pro šifrovací a dešifrovací funkce, zatímco v asymetrickém šifrovacím algoritmu se naopak pro šifrování a dešifrování používají dva různé klíče. V asymetrických systémech je klíč používaný pro šifrování známý jako veřejný klíč a lze jej sdílet s ostatními. A klíč použitý k dešifrování je soukromý a musí být uchováván v tajnosti.

Pokud například Káťa pošle Maximovi zprávu chráněnou symetrickým šifrováním, aby mohl zprávu dešifrovat, musí s ním Káťa sdílet stejný klíč, který použila k jejímu zašifrování. To znamená, že pokud útočník klíč zachytí, může získat přístup k zašifrovaným informacím.

Pokud však Katya místo toho použije asymetrické schéma, zašifruje zprávu Maximovým veřejným klíčem a Maxim ji bude moci dešifrovat svým soukromým klíčem. Asymetrické šifrování tedy poskytuje vyšší úroveň zabezpečení, protože i když někdo zachytí jejich zprávy a najde Maximův veřejný klíč, nebude schopen zprávy dešifrovat.


Délka klíčů

Další funkční rozdíl mezi symetrickým a asymetrickým šifrováním souvisí s délkou klíče. Délka se měří v bitech a přímo souvisí s úrovní zabezpečení poskytované každým kryptografickým algoritmem.

V symetrických schématech jsou klíče vybírány náhodně a jejich délka je obvykle nastavena na 128 nebo 256 bitů, v závislosti na požadované úrovni zabezpečení. Ale v asymetrickém šifrování musí existovat matematický vztah mezi veřejnými a soukromými klíči, to znamená, že mezi nimi existuje matematická zákonitost. Vzhledem k tomu, že útočníci mohou potenciálně použít tento vzor k prolomení šifry, k zajištění ekvivalentní úrovně zabezpečení musí být asymetrické klíče mnohem delší než symetrické klíče. Rozdíl v délce klíče je tak výrazný, že 128bitový symetrický klíč a 2048bitový asymetrický klíč budou mít přibližně stejnou úroveň zabezpečení.

Výhody a nevýhody

Oba typy šifrování mají své výhody a nevýhody. Symetrické šifrovací algoritmy jsou mnohem rychlejší a vyžadují menší výpočetní výkon, ale jejich hlavní nevýhodou je distribuce klíčů. Vzhledem k tomu, že stejný klíč se používá k šifrování a dešifrování informací, musí být sdílen s každým, kdo potřebuje přístup k datům, což samozřejmě vytváří bezpečnostní rizika (to jsme již vysvětlili v příkladu výše).

Asymetrické šifrování řeší problém distribuce klíčů, protože pro šifrování a dešifrování se používají různé klíče: veřejný a soukromý. Asymetrické šifrovací systémy jsou však ve srovnání se symetrickými velmi pomalé a vyžadují mnohem větší výpočetní výkon kvůli mnohem větší délce klíče.


Možnosti použití

Symetrické šifrování

Vzhledem ke své vyšší rychlosti se symetrické šifrování často používá jako způsob ochrany dat v mnoha moderních počítačových systémech. Například standard AES (Advanced Encryption Standard) používá vláda Spojených států k šifrování utajovaných a důvěrných informací. Dalším dříve používaným standardem pro šifrování dat byl DES, který byl vyvinut v 70. letech minulého století jako standard pro symetrické šifrování.


Asymetrické šifrování

Asymetrické šifrování lze použít v systémech, kde mnoho uživatelů může potřebovat zašifrovat a dešifrovat zprávu nebo sadu dat, zejména pokud rychlost a výpočetní výkon nepředstavují hlavní obavy. Jedním z příkladů takového systému je šifrovaný e-mail, ve kterém lze veřejný klíč použít k zašifrování zprávy a soukromý klíč k jejímu dešifrování.


Hybridní systémy

V mnoha případech se symetrické a asymetrické šifrování používá společně. Typickými příklady takových hybridních systémů jsou šifrovací protokoly Secure Sockets Layer (SSL) a protokoly Transport Layer Security (TLS), které byly vyvinuty za účelem zajištění bezpečných interakcí na internetu. Protokoly SSL již nejsou považovány za spolehlivé a měly by být ukončeny. O spolehlivosti protokolů TLS však není pochyb a jsou široce používány ve všech hlavních prohlížečích.


Používá se v kryptoměnách šifrování?

Šifrovací metody se používají v mnoha kryptoměnových peněženkách jako způsob, jak poskytnout zvýšenou úroveň zabezpečení pro koncové uživatele. Šifrovací algoritmy se používají například tehdy, když uživatelé nastaví heslo pro své kryptopeněženky, což znamená, že soubor používaný pro přístup k softwaru je zašifrován.

Protože však bitcoin a další kryptoměny používají páry klíčů veřejného a soukromého sektoru, existuje běžná mylná představa, že blockchainové systémy používají asymetrické šifrovací algoritmy. Nicméně, jak již bylo zmíněno dříve, existují dvě hlavní použití v asymetrické kryptografii (kryptografie s veřejným klíčem): asymetrické šifrování a digitální podpisy.

Proto ne všechny systémy digitálního podpisu používají metody šifrování, i když umožňují použití veřejných a soukromých klíčů. Zprávu lze podepsat digitálním podpisem a bez šifrování. RSA je jedním příkladem algoritmu, který lze použít k podepisování zašifrovaných zpráv, ale v algoritmu digitálního podpisu používaném v bitcoinech (nazývaném ECDSA) se nepoužívá žádné šifrování.


Výsledek

Symetrické i asymetrické šifrování hraje důležitou roli při zajišťování bezpečnosti citlivých informací a interakcí v dnešním světě, který závisí na digitálních službách, nástrojích a mechanismech. Oba mohou být užitečné a každý z nich má své výhody a nevýhody, takže v některých oblastech se používá jeden, v jiných - druhý. Vzhledem k tomu, že kryptografie jako věda se neustále vyvíjí kvůli potřebě chránit před novými a sofistikovanějšími hrozbami, oba kryptografické systémy pravděpodobně zůstanou relevantní pro počítačovou bezpečnost.