Thursday, June 19, 2008

Kryptografické algoritmy dělíme na:
• Symetrické – u kterých je možné šifrovací klíč odvodit z dešifrovacího a opačně. Symetrické algoritmy se dělí na
o Proudové algoritmy (stream algorithms), které „šifrují“ zprávu po jednotlivých znacích a bývají označeny termínem proudové šifry (stream cipher). Výhody proudových šifer jsou vysoká rychlost enkrypční/dekrypční transformace (šifrování/dešifrování znaku nezávisí od ostatních znaků zprávy) a malé šíření chyb (každý znak je kódován samostatně). Mezi nevýhody proudových šifer patří nízká úroveň difuze (zašifrovaná zpráva vykazuje stejné frekvenční a statistické charakteristiky jako původní (nešifrovaná) zpráva, což ulehčuje kryptoanalýzu) a malá odolnost vůči úmyslným falsifikacím (je-li šifra prolomená – zprávy mohou být modifikovány bez toho, aby jejich adresát modifikaci rozeznal).
o Blokové algoritmy (block algorithms) – „šifrují“ původní zprávu v blocích. Označují se termínem blokové šifry (block cipher). Blokové šifry transformují skupinu (blok) znaků na jinou skupinu (jiný blok) znaků. Typickým příkladem blokových šifer je sloupcová transpozice zprávy (text zprávy je napsán v řádcích, ale vysílá se po sloupcích). K výhodám blokových šifer patří vysoká úroveň difuze (vysílané bloky vykazují odlišné frekvenční a statistické charakteristiky jako původní zpráva) a imunita vůči narušení (není možné přidat žádný symbol do bloku, neboť by se změnila délka bloku a dešifrováním by se odhalila modifikace). Mezi nevýhody blokových šifer patří zpoždění (k dešifrování může dojít až tehdy, kdy je přijat celý blok) a šíření chyb (chyba jednoho znaku se promítá do celého bloku).
• Nesymetrické algoritmy – používají jiný šifrovací klíč a jiný dešifrovací klíč, dešifrovací klíč není možné odvodit ze šifrovacího klíče. Nesymetrické algoritmy se využívají v systémech s veřejným klíčem, kde šifrovací klíč je obecně znám a dešifrovací klíč je tajný.