Šifrovanie symetrickým kľúčom vs šifrovanie verejným kľúčom
Kryptografia je štúdium ukrývania informácií a používa sa pri komunikácii cez nedôveryhodné médium, ako je internet, kde je potrebné informácie chrániť pred inými tretími stranami. Moderná kryptografia sa zameriava na vývoj kryptografických algoritmov, ktoré dokážu zašifrovať dáta tak, aby ich protivník kvôli výpočtovej náročnosti len ťažko prelomil (preto ich nebolo možné prelomiť praktickými prostriedkami). Šifrovanie používa na šifrovanie údajov algoritmus nazývaný šifra, ktorý je možné dešifrovať iba pomocou špeciálneho kľúča. Zašifrovaná informácia je známa ako šifrový text a proces získavania pôvodnej informácie (čistého textu) zo zašifrovaného textu je známy ako dešifrovanie. Dve z bežne používaných metód šifrovania sú šifrovanie symetrickým kľúčom a šifrovanie verejným kľúčom. Symetrická kryptografia kľúča zahŕňa metódy šifrovania, kde odosielateľ aj príjemca zdieľajú rovnaký kľúč, ktorý sa používa na šifrovanie údajov. V kryptografii s verejným kľúčom sa používajú dva rôzne, ale matematicky súvisiace kľúče.
Čo je šifrovanie symetrickým kľúčom?
Pri šifrovaní symetrickým kľúčom (známym aj ako tajný kľúč, jeden kľúč, zdieľaný kľúč, jeden kľúč alebo šifrovanie súkromného kľúča) odosielateľ aj príjemca zdieľajú rovnaký kľúč, ktorý sa používa na šifrovanie aj dešifrovanie údajov. V skutočnosti môžu byť tieto dva kľúče identické alebo triviálne súvisiace (t. j. na prechod medzi nimi je potrebná veľmi jednoduchá transformácia). V reálnom živote je tajomstvo zdieľané dvoma alebo viacerými stranami, ktoré možno použiť na udržiavanie súkromného spojenia na komunikáciu. AES (Advanced Encryption Standard) je veľmi populárny algoritmus, ktorý patrí do rodiny šifrovacích algoritmov so symetrickým kľúčom.
Čo je šifrovanie verejným kľúčom?
Pri šifrovaní verejného kľúča sa používajú dva rôzne, ale matematicky súvisiace kľúče. Šifrovanie verejného kľúča šifruje údaje pomocou verejného kľúča príjemcu a nemožno ho dešifrovať bez použitia zodpovedajúceho súkromného kľúča. Inými slovami, jeden kľúč potrebujete na uzamknutie (zašifrovanie otvoreného textu) a ďalší kľúč na odomknutie (dešifrovanie cypertextu). Dôležité je, že jeden kľúč nemožno použiť namiesto druhého. V závislosti od zverejneného kľúča možno šifrovanie verejným kľúčom použiť na dva účely. Ak je uzamykací kľúč zverejnený, potom tento systém môže použiť ktokoľvek na odoslanie súkromnej komunikácie držiteľovi odomykacieho kľúča. Ak je to naopak, systém umožňuje overenie dokumentov uzamknutých majiteľom. Šifrovanie verejným kľúčom je algoritmus asymetrického kľúča. Ale len niektoré algoritmy asymetrického kľúča majú tú špeciálnu vlastnosť, že nedokážu odhaliť jeden kľúč so znalosťou druhého. Takže algoritmy asymetrického kľúča s touto špeciálnou vlastnosťou sa nazývajú šifrovacie algoritmy s verejným kľúčom.
Aký je rozdiel medzi šifrovaním symetrickým kľúčom a šifrovaním verejným kľúčom?
Hlavným rozdielom medzi šifrovaním symetrickým kľúčom a šifrovaním verejným kľúčom je skutočnosť, že šifrovanie symetrickým kľúčom používa rovnaký (súkromný, tajný) kľúč na šifrovanie/dešifrovanie, zatiaľ čo šifrovanie s verejným kľúčom používa verejný aj súkromný kľúč. Obe strany by mali poznať kľúč pri šifrovaní symetrickým kľúčom, zatiaľ čo pri šifrovaní verejným kľúčom takáto požiadavka neexistuje. Iba jeden z kľúčov je známy obom stranám pri šifrovaní verejného kľúča. Pretože to odstraňuje potrebu zdieľať váš súkromný kľúč (ako pri šifrovaní symetrickým kľúčom) a riziko jeho zneužitia, šifrovanie verejného kľúča možno v tomto ohľade považovať za bezpečnejšie.
Hlavnou nevýhodou šifrovania verejným kľúčom je však to, že je mnohokrát pomalšie ako šifrovanie symetrickým kľúčom. Takže šifrovanie symetrickým kľúčom môže byť lepšie na šifrovanie veľkého množstva údajov. Okrem toho musia šifrovacie algoritmy s verejným kľúčom používať porovnateľne silnejší kľúč ako šifrovanie symetrickým kľúčom, aby dosiahli rovnakú silu (z jednoduchého dôvodu, že jeden kľúč je zverejnený v kryptografii s verejným kľúčom).