Symetrické kryptosystémy

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 12. března 2017; kontroly vyžadují 24 úprav .

Symetrické kryptosystémy (také symetrické šifrování , symetrické šifry ) ( anglicky  symmetric-key algorithm ) je metoda šifrování, při které se pro šifrování a dešifrování používá stejný šifrovací klíč . Před vynálezem schématu asymetrického šifrováníjediný způsob, který existoval, bylo symetrické šifrování. Klíč algoritmu musí být uchováván v tajnosti oběma stranami, musí být přijata opatření k ochraně přístupu ke kanálu, podél celé cesty kryptogramu, nebo stranami interakce prostřednictvím krypto objektů, zpráv, pokud je tento interakční kanál označen „Ne pro použití třetími stranami“. Šifrovací algoritmus si strany zvolí před výměnou zpráv.

Základní informace

Algoritmy šifrování dat jsou široce používány v počítačové technologii v systémech pro skrývání důvěrných a komerčních informací před zneužitím třetími stranami. Hlavním principem v nich je podmínka, aby vysílač a přijímač předem znali šifrovací algoritmus , stejně jako klíč ke zprávě, bez kterého je informace pouze souborem znaků, které nedávají smysl.

Klasickými příklady takových algoritmů jsou symetrické kryptografické algoritmy uvedené níže:

Jednoduchá permutace

Jednoduchá permutace bez klíče je jednou z nejjednodušších metod šifrování. Zpráva se zapisuje do tabulky po sloupcích. Po napsání otevřeného textu do sloupců se čte řádek po řádku, aby se vytvořil šifrový text. Pro použití této šifry se musí odesílatel a příjemce dohodnout na sdíleném klíči ve formě velikosti tabulky. Kombinace písmen do skupin není obsažena v šifrovém klíči a slouží pouze pro usnadnění psaní nesmyslného textu.

Jednoduchá permutace klíčem

Praktičtější metoda šifrování zvaná permutace s jedním klíčem je velmi podobná té předchozí. Liší se pouze tím, že sloupce tabulky jsou přeskupeny podle klíčového slova, fráze nebo sady čísel o délce řádku tabulky.

Dvojitá permutace

Pro větší utajení můžete znovu zašifrovat zprávu, která již byla zašifrována. Tato metoda je známá jako dvojitá permutace. K tomu je velikost druhé tabulky zvolena tak, aby se délky jejích řádků a sloupců lišily od délek v první tabulce. Nejlepší je, když jsou coprime. Kromě toho lze v první tabulce přeskupit sloupce a ve druhé řádky. Nakonec můžete stůl vyplnit klikatě, hadem, spirálou nebo jiným způsobem. Takové způsoby vyplnění tabulky, pokud nezvyšují sílu šifry, činí proces dešifrování mnohem zábavnějším.

Permutace "Magický čtverec"

Magické čtverce se nazývají čtvercové tabulky s postupnými přirozenými čísly od 1 vepsanými v jejich buňkách, které sčítají každý sloupec, každý řádek a každou úhlopříčku stejné číslo. Takové čtverce byly široce používány pro zadávání zašifrovaného textu podle číslování v nich uvedeného. Pokud pak vypíšete obsah tabulky řádek po řádku, získáte šifrování přeskupením písmen. Na první pohled se zdá, že magických čtverců je velmi málo. Jejich počet se však s rostoucí velikostí čtverce velmi rychle zvyšuje. Existuje tedy pouze jeden magický čtverec 3 x 3, pokud neberete v úvahu jeho rotace. Magických políček 4 x 4 je již 880 a počet magických políček 5 x 5 je asi 250 000. Proto by velké magické čtverce mohly být dobrým základem pro spolehlivý šifrovací systém té doby, protože ruční výčet všech klíčových možností pro tato šifra byla nemyslitelná.

Čísla od 1 do 16 byla vepsána do čtverce 4 x 4. Jeho kouzlo spočívalo v tom, že součet čísel v řádcích, sloupcích a plných úhlopříčkách byl roven stejnému číslu - 34. Tyto čtverce se poprvé objevily v Číně, kde jim byly připisovány nějaké "magická síla".

16 3 2 13
5 deset jedenáct osm
9 6 7 12
čtyři patnáct čtrnáct jeden

Šifrování magickým čtvercem bylo provedeno následovně. Chcete například zašifrovat frázi: „Dneska přijdu. Písmena této fráze jsou vepsána postupně do čtverce podle čísel v nich napsaných: pozice písmene ve větě odpovídá pořadové číslu. Do prázdných buněk se umístí tečka.

16. 3 a 2 r 13 d
5 h 10 11 g 8
9 C 6 w 7a 12 asi
4e 15 14 n 1 P

Poté je šifrový text zapsán do řetězce (čtení se provádí zleva doprava, řádek po řádku):
.irdzegyuSzhaoyanP

Po dešifrování se text vejde do čtverce a prostý text se čte v „magickém čtverci“ posloupnosti čísel. Program by měl vygenerovat "magické čtverce" a vybrat požadovaný pomocí klíče. Čtverec je větší než 3x3.

Historie

Požadavky

Úplná ztráta všech statistických pravidelností původní zprávy je důležitým požadavkem pro symetrickou šifru. K tomu musí mít šifra „ lavinový efekt “ – musí dojít k silné změně v bloku šifry s 1bitovou změnou vstupních dat (ideálně hodnoty 1/2 bitu blok šifry by se měl změnit).

Důležitým požadavkem je také absence linearity (tedy podmínky f(a) xor f(b) == f(a xor b)), jinak je usnadněna aplikace diferenciální kryptoanalýzy na šifru.

Obecné schéma

V současné době jsou symetrické šifry:

Většina symetrických šifer používá komplexní kombinaci velkého množství substitucí a permutací. Mnoho takových šifer se provádí v několika (někdy až 80) průchodech, přičemž se v každém průchodu používá „klíč“. Sada "klíčů" pro všechny průchody se nazývá "plán klíčů". Zpravidla se vytváří z klíče prováděním určitých operací na něm, včetně permutací a substitucí.

Typickým způsobem, jak konstruovat symetrické šifrovací algoritmy, je síť Feistel . Algoritmus vytváří schéma šifrování založené na funkci F(D, K), kde D je část dat poloviční velikosti šifrovacího bloku a K je „klíč“ pro tento průchod. Funkce nemusí být invertibilní – její inverzní funkce nemusí být známa. Výhodami sítě Feistel je téměř úplná shoda dešifrování se šifrováním (jediný rozdíl je obrácené pořadí „průchozích klíčů“ v rozvrhu), což značně zjednodušuje hardwarovou implementaci.

Operace permutace míchá bity zprávy podle určitého zákona. V hardwarových implementacích je triviálně implementován jako zapletení vodičů. Právě permutační operace umožňují dosáhnout „lavinový efekt“. Permutační operace je lineární - f(a) xor f(b) == f(a xor b)

Substituční operace se provádějí jako nahrazení hodnoty určité části zprávy (často 4, 6 nebo 8 bitů) standardním, pevně zakódovaným jiným číslem v algoritmu odkazem na pole konstant. Operace substituce zavádí do algoritmu nelinearitu.

Síla algoritmu, zejména proti diferenciální kryptoanalýze, často závisí na volbě hodnot v substitučních tabulkách (S-boxech). Minimálně se považuje za nežádoucí pevné prvky S(x) = x, stejně jako absence vlivu některého bitu vstupního bytu na některý bit výsledku – tedy případy, kdy je výsledný bit stejné pro všechny dvojice vstupních slov, které se liší pouze tímto bitem.

Parametry algoritmu

Existuje mnoho (alespoň dva tucty) symetrických šifrovacích algoritmů , jejichž základní parametry jsou:

Typy symetrických šifer

blokové šifry proudové šifry

Srovnání s asymetrickými kryptosystémy

Výhody

Nevýhody

Pro kompenzaci nedostatků symetrického šifrování se v současné době široce používá kombinované (hybridní) šifrovací schéma , kde se klíč relace přenáší pomocí asymetrického šifrování, které strany používají k výměně dat pomocí symetrického šifrování.

Významnou nevýhodou symetrických šifer je nemožnost jejich použití v mechanismech pro generování elektronických digitálních podpisů a certifikátů, protože klíč zná každá strana.

Literatura

Odkazy