XSL útok ( angl. eXtended Sparse Linearization , algebraic attack) je metoda kryptografické analýzy založená na algebraických vlastnostech šifry . Metoda zahrnuje řešení speciální soustavy rovnic .
Tuto metodu navrhli v roce 2001 Nicolas T. Courtois a Josef Pieprzyk.
XSL útoky byly dříve považovány za nemožné, ale 26. května 2006 Courtois demonstroval možnost XSL útoku proti jedinému modelu šifry podobné struktuře jako šifra AES [1] .
Jak řekl jeden z tvůrců Rijndaelovy šifry v soukromé korespondenci: "XSL není útok, je to jen sen." "Tento sen se může změnit v noční můru," odpověděl Nicolas Courtois [2] .
Pokud XSL útoky opravdu fungují, prolomí všechny aktuálně existující šifry. Pouze čistá náhoda může zachránit šifru před prolomením. Na druhou stranu je docela dobře možné (a z našeho pohledu nejspíše), že XSL útoky nejsou v praxi použitelné, nebo jsou aplikovatelné jen na malý počet vysoce strukturovaných šifer.
— Nils Ferguson , Bruce Schneier Practical Cryptography [3]
V roce 2001 Niels Ferguson , Richard Schroeppel a D. Whiting publikovali článek [4] , ve kterém byli schopni znázornit Rijndaelovu šifru jako algebraický vzorec pomocí reprezentací lineárních částí šifry a nelineárních S-boxů v ve formě rovnic vyššího řádu. Došli k závěru, že všechny symetrické blokové šifry lze redukovat na vícerozměrnou rovnici v nějakém konečném poli . Také přemýšleli, zda by znalost algebraické formy pomohla prolomit šifru . Pokud funkce vyjadřující S-boxy nebere v úvahu argumenty s mocninou -1, pak se šifra stane afinní a lze ji snadno prolomit jinými způsoby, které nevyžadují linearizaci . Pokud tyto argumenty přirovnáme k , pak se rovnice ukáže jako polynomiálně složitá.
V těchto letech se objevilo mnoho útoků na veřejné klíče: útok na systém Matsumoto-Imai [5] , útok na HFE [6] . Tyto útoky skončily úspěchem ihned po zjištění faktu (teoretického či experimentálního) o existenci dalších rovnic mnoha proměnných, které nejsou zřejmé a vývojáři původní šifry je neposkytli [7] .
Adi Shamir v roce 1998 ukázal, že kvadratické rovnice mnoha proměnných (MQ) jsou NP-úplný problém [8] . Jeho složitost výrazně klesá, když jsou rovnice předefinovány [7] . V první studii Nicolas Courtois a Jozef Pepshik ukazují, že výsledné MQ jsou řídké a mají pravidelnou strukturu [7] .
2. prosince 2002 na veletrhu ASIACRYPT-2002 Nicolas Courtois a Jozef Pepshik prezentovali článek „Kryptanalýza blokových šifer s předefinovanými soustavami rovnic“, kde poprvé představili dvě varianty metody útoku XSL [9] . Závěrem této práce je, že bezpečnost AES se opírá pouze o nemožnost v současné době vyřešit soustavu rovnic popisujících algebraickou strukturu šifry.
Zobecněním třídy SP-šifer, které se skládají z S-boxů a permutačních funkcí bitů, Courtois a Pepchik určili novou třídu SA-šifer, která se skládá z S-boxů a afinních funkcí [10] . Podle studie Adi Shamira a Alexe Biryukova útoky na SA šifry nezávisí na vlastnostech konkrétního S-boxu [11] . Poté byla v článku představena XSL šifra třídy SA, která popisuje strukturu typické blokové šifry, pro kterou lze metodu aplikovat.
Struktura šifrování se skládá z kol:
S-boxy šifer Rijndael a Serpent mohou být reprezentovány jako nějaká funkce mnoha vysokostupňových proměnných [12] , Courtoisova metoda snižuje stupeň funkce na nějaké číslo , kde se obvykle volí 2, rozšířením argumentační prostor. Zvláště zajímavý je počet takových funkcí . Jestliže , takové rovnice dostatečně popisují S-blok. Pokud , pak říkáme, že systém je předefinován.
Existují dva typy útoků XSL. První (obecná) pracuje na šifrách XSL, bez ohledu na algoritmus rozvrhu klíčů (viz rozvrh klíčů ). Algoritmus pak vyžaduje tolik šifrových textů, kolik je S-boxů uvnitř šifry. Druhá verze XSL útoku bere v úvahu, že je znám algoritmus pro plánování klíčů, a proto vyžaduje pouze jeden šifrovaný text [13] .
Každé kolo S-bloku je zapsáno jako rovnice:
kde jsou vstupní bity -tého S-boxu, jsou výstupní bity -tého S-boxu.
Dále je vybrán parametr kritického útoku . Během útoku bude rovnice každého S-boxu vynásobena všemi možnými monomiály podmnožiny zbývajících S-boxů. Navíc při změně počtu kol šifry by se parametr neměl příliš zvyšovat, jak ukázaly experimenty Courtoise a Pepshika [14] .
Dále, abychom našli systém, pro který existuje jedinečné řešení, je napsána nová rovnice:
Účelem všech těchto transformací je přivést soustavu rovnic k lineárnímu předurčenému systému, ve kterém nejsou žádné zjevné lineárně závislé rovnice.
Metoda algebraických útoků se jevila jako slibná pro kryptoanalýzu, protože teoreticky nevyžadovala velké množství šifrových textů a nabízela prolomení nejpoužívanějšího šifrovacího standardu (AES). Za posledních pět let bylo publikováno mnoho výzkumů o výkonu XSL útoků.
Takže v práci Carlose Cida (Carlos Cid) a G. Laurena (Ga¨etan Leurent) byla analyzována druhá verze XSL útoku z původního článku - kompaktní XSL - na AES-128 [15] . Článek analyzoval příklady, kdy tento algoritmus kolabuje v tzv. T-bloku, který se používá k rozšíření prostoru proměnných. Vědci však dospěli k závěru, že přístup XSL je prvním pokusem najít zranitelnost ve strukturální části šifry AES.
Například práce Chu-Wee Lim a Khoongming Khoo [16] zkoumá pokus prolomit aplikaci BES (Big Encryption System) na AES. Toto rozšíření převádí všechny výpočty do pole , což by mělo snížit počet operací. Teoretické výpočty však ukázaly, že se zvyšuje složitost algoritmu pro šifru BES. Obtížnost pro varianty BES:
Bylo zjištěno, že útok XSL není účinný proti šifrám BES.