SC2000 | |
---|---|
Tvůrce | Fujitsu |
Vytvořeno | 2000 _ |
zveřejněno | 2000 _ |
Velikost klíče | 128, 192, 256 bitů |
Velikost bloku | 128 bit |
Počet kol | 6.5 nebo 7.5 |
Typ | Síť Feistel a síť SP |
SC2000 je symetrický blokový kryptografický algoritmus v kryptografii vyvinutý společností Fujitsu a Tokijskou univerzitou v roce 2000 . Algoritmus používá 128bitový blok a klíč o délce 128 až 256 bitů (kompatibilní se standardem AES a podporuje typické délky klíčů - 128/192/256). V roce 2003 byla doporučena výborem CRYPTREC pro použití vládními agenturami v Japonsku , ale v roce 2013 byla přesunuta na seznam „ kandidátů “ na doporučené šifry . [1] Zúčastnil se Nessie contestu , ale nedostal se do druhého kola, přestože prokázal dostatečnou odolnost vůči útokům - důvodem byla jeho příliš složitá struktura a obava z možnosti skrytých zranitelností .
SC2000 je šifra se smíšenou strukturou: využívá prvky Feistelovy sítě a substitučně-permutační sítě .
Algoritmus provede 6,5 (pro 128bitový klíč) nebo 7,5 (pro klíč o délce 192-256 bitů) šifrovacích kol. Každé z kol se skládá z dotazů na vyhledávací tabulku, přidání klíče a bezklíčové dvoukolové sítě Feistel . Používají se tři substituční tabulky: 4x4 bitový S-Box se používá na začátku každého kola , 5x5 bitový a 6x6 bitový S-Box se používá uvnitř sítě Feistel.
Rozšíření klíče v algoritmu SC2000 se provádí ve dvou fázích: na základě tajného symetrického klíče se vygeneruje meziklíč a z meziklíče se pak vypočítá požadovaný počet fragmentů rozšířeného klíče.
Jedno kolo šifry je poměrně složité a skládá se z následujících operací: Vstupní 128bitová hodnota je rozdělena do 4 podbloků po 32 bitech, každý z nich je XORed s 32bitovým fragmentem rozšířeného klíče. Provede se operace T, která rozdělí datový blok na 32 dílčích bloků po 4 bitech.
Každý 4bitový podblok prochází substituční tabulkou S4, která vypadá takto: (2,5,10,12,7,15,1,11,13,6,0,9,4,8,3,14)
Dále je datový blok rozdělen na 32bitové podbloky pomocí operace T', což je opak operace T. Další čtyři fragmenty rozšířeného klíče jsou překryty operací XOR . Hodnoty prvního páru podbloků jsou předány na vstup funkce F. Výsledkem provedení této funkce jsou dvě 32bitové hodnoty, které jsou superponovány operací XOR na prvním dva podbloky. První pár podbloků se prohodí s druhým párem podbloků, poté se opakuje předchozí transformační krok.
Podrobná analýza plného náboje SC2000 ještě nebyla provedena, ale verze s počtem nábojů sníženým na 4,5 je zranitelná při použití diferenciální a lineární kryptoanalýzy .
V roce 2014 byla objevena zranitelnost v algoritmu rozšiřování klíčů, která umožňuje najít pár ekvivalentních 256bitových klíčů (vedoucích k identickému výsledku šifrování) ve 2 39 operacích . [2]
Symetrické kryptosystémy | |
---|---|
Streamové šifry | |
Síť Feistel | |
Síť SP | |
jiný |