S-Box

S-Box ( substituční box ), anglický termín pro substituční tabulku používaný v symetrickém šifrovacím algoritmu . S-Box přispívá k „zmatku“ (termín používaný Claudem Shannonem ) tím, že činí původní informace nesrozumitelnými. S-boxy umožňují prolomit linearitu šifrovací struktury a jejich počet se liší podle algoritmů. DES má například osm tabulek prvků 16x4.

Substituční tabulka obecně bere proměnnou m bitů jako vstup a produkuje výstup n bitů, vstupy a výstupy nemusí mít nutně stejnou velikost. Tabulky jsou často definovány předem, ale někdy se stane, že jsou generovány algoritmem (například v Blowfish ). Hodnoty přítomné v S-boxech musí být zvoleny tak, aby se zabránilo útokům , a to různými prostředky, jako je použití zakřivených funkcí . V případě DES bylo prokázáno, že tabulky byly navrženy tak, aby odolaly diferenciální kryptoanalýze (technika, která bude publikována až o mnoho let později).

Příklad

Zde je S-Box (S 5 ) převzatý z DES algoritmu . 4bitový výstup se získává ze 6bitového vstupu. Rozdělíme těchto 6 bitů na dvě části: dva bity na koncích a zbývající čtyři bity (ve středu). Dva bity označují řádek a prostřední bity označují odpovídající sloupec. Například se záznamem „011011“ rozdělíme na „ 0 1101 1 “. To dává pro řádek „01“ a pro sloupec „1101“. Výstup tabulky je pak „1001“.

S 5 4 bity ve středu vstupu
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Externí bity 00 0010 1100 0100 0001 0111 1010 1011 0110 1000 0101 0011 1111 1101 0000 1110 1001
01 1110 1011 0010 1100 0100 0111 1101 0001 0101 0000 1111 1010 0011 1001 1000 0110
10 0100 0010 0001 1011 1010 1101 0111 1000 1111 1001 1100 0101 0110 0011 0000 1110
11 1011 1000 1100 0111 0001 1110 0010 1101 0110 1111 0000 1001 1010 0100 0101 0011

Podívejte se také

Související články

externí odkazy