3Kryptografia s verejným kľúčom

Kryptografia s verejným kľúčom bola vyvinutá, aby vyriešila otázku bezpečného prenosu tajného kľúča pri symetrickom šifrovaní. Tento problém sa podarilo vyriešiť použitím dvoch kľúčov namiesto jedného. V tomto procese jeden kľúč slúži na šifrovanie a druhý na dešifrovanie.

Systém je známy ako kryptografia s verejným kľúčom alebo asymetrická kryptografia. Dva kľúče sú známe ako pár kľúčov. V asymetrickej kryptografii je jeden z kľúčov voľne šíriteľný (verejný kľúč). Preto sa táto metóda šifrovania nazýva kryptografia s verejným kľúčom. Druhý kľúč sa nazýva súkromný alebo tajný kľúč. Podľa názvu je zrejmé, že tento kľúč už nie je voľne šíriteľný, ale naopak vlastník ho udržuje v utajení. Vďaka tomu, že medzi kľúčmi jedného páru je určitý matematický vzťah, to čo sa zašifruje verejným kľúčom sa dá dešifrovať len prislúchajúcim súkromným kľúčom a naopak. Je dôležité poukázať na fakt, že odvodiť súkromný kľúč od verejného kľúča je veľmi obtiažne.

Základným nedostatkom kryptografie s verejným kľúčom je, že ak bude mať útočník dostatok času a dostatočný výpočtový výkon, dokáže odvodiť súkromný kľúč od verejného a následne dešifrovať správu. Preto sa volia kľúče o dostatočnej dĺžke (zvyčajne 1024 alebo 2048 bitov). Čím sú použité kľúče dlhšie (dĺžkou sa myslí počet bitov), tým je šifrovací algoritmus odolnejšie voči útokom.

Algoritmy kryptografie s verejným kľúčom sú postavené na matematických problémoch, ktoré v súčasnosti nemajú dostupné riešenie. Pre používateľa je jednoduché vytvoriť pár kľúčov (verejný a súkromný) a použiť ich na šifrovanie a dešifrovanie. Spomínaná obtiažnosť matematických operácií sa ukáže pri pokuse odvodiť súkromný kľúč pri znalosti len príslušného verejného kľúča. Bezpečnosť kryptografie s verejným kľúčom je dosiahnutá týmto spôsobom a sila algoritmu spočíva v uvedenej obtiažnosti. Verejný kľúč teda môže byť zverejnený bez akéhokoľvek bezpečnostného rizika. Bezpečnosť závisí len na utajení súkromného kľúča. Na rozdiel od symetrických šifier, v asymetrickej kryptografii nie je potrebný prvotný bezpečný prenos kľúča medzi komunikujúcimi stranami pred zahájením samotnej komunikácie.

Algoritmy kryptografie s verejným kľúčom sa používajú hlavne na šifrovanie s využitím verejného kľúča a na digitálny podpis. Šifrovanie s využitím verejného kľúča znamená šifrovanie správy za prítomnosti verejného kľúča pričom len osoba, ktorá vlastní príslušný súkromný kľúč má možnosť správu dešifrovať a prečítať. Digitálny podpis je správa, ktorá sa podpíše súkromným kľúčom odosielateľa, pričom môže byť verifikovaná hocikým, kto má prístup k verejnému kľúču odosielateľa. Obidve z týchto aplikácií predstavujú príklady dôvernosti a autorizácie dát s využitím kryptografie s verejným kľúčom.

Asymetrické šifry sú v porovnaní so symetrickými pomalšie. Asymetrické šifry sa často používajú na distribúciu tajného kľúča. Tento tajný kľúč sa následne použije na šifrovanie používateľských dát.

Manažment kľúčov je omnoho jednoduchší v kryptografii s verejným kľúčom v porovnaní so symetrickými šiframi. Existuje však chybná predstava, že manažment kľúčov pomocou kryptografie s verejným kľúčom je jednoduchý. Navyše niektorí používatelia si nesprávne myslia, že kryptografia s verejným kľúčom je bezpečnejšia v porovnaní s kryptografiou s tajným kľúčom. V skutočnosti bezpečnosť ktoréhokoľvek systému závisí od dĺžky kľúča a potrebnej výpočtovej zložitosti vynaloženej na prelomenie šifry.

Najznámejší algoritmus kryptografie s verejným kľúčom je RSA.