MMB titkosítás

MMB titkosítás ( angol  moduláris szorzás alapú blokk titkosítás  - moduláris blokk titkosítás szorzás használatával) - blokk titkosítási algoritmus , amely a véges csoportban történő szorzás műveletén alapul .

Általános információk

A véges csoportos szorzóblokk titkosítás (MMB) egy blokk-rejtjel , amelyet Joan Dymen fejlesztett ki 1993-ban az IDEA titkosítás továbbfejlesztéseként . Ennek a rejtjelnek a fő újítása a ciklikus szorzás használata a Z 2 n −1 csoportban . A rejtjel készítői azt javasolták, hogy n=32 legyen, így a szorzás a Z 4294967295 csoportban történne . Azt is érdemes megjegyezni, hogy azoknak a szavaknak a hossza, amelyekkel a műveleteket végrehajtjuk, n, azaz ebben az esetben 32. Ennek a rejtjelnek a létrehozásakor a fő cél egy olyan rejtjel létrehozása, amely ellenáll a differenciális kriptoanalízisnek . A kulcsütemezés hibáit Eli Biham fedezte fel , ami azzal a ténnyel együtt, hogy a titkosítás nem volt biztonságos a lineáris kriptoanalízissel szemben , más rejtjelek, például a 3-utas rejtjel használatához vezetett.

A rejtjel leírása

A rejtjel nemlinearitása a modulo 2 32 −1 szorzás műveletéből adódik (a rejtjel nevéből következik). A rejtjel hat körből áll. Az inicializálási vektor és az utolsó lépés nem használatos ebben a titkosításban. A kulcs és blokk mérete MMB-ben 128 bit. A blokk és a kulcs 4 32 bites szóra van felosztva, amelyek mindegyike x 0 , x 1 , x 2 , x 3 és k 0 , k 1 , k 2 , k 3 . Minden körben 4 transzformációt hajtanak végre ezeken a szavakon: σ[k j ], γ, η és θ ezeken a szavakon. A σ[k j ], η és θ műveletek involúciók .

Transzformáció σ[k j ]

σ[k j ]: Ez a transzformáció kulcsot ad a szöveghez. XOR műveletet hajt végre a kulcsrész és az üzenet között a következőképpen: σ[k j ](x 0 , x 1 , x 2 , x 3 ) = (x 0 ⊕ k j 0 , x 1 ⊕ k j 1 , x 2 ⊕ k j 2 , x 3 ⊕ k j 3 ), ahol ⊕ a kizáró-vagy műveletet, j pedig a kerek számot jelöli. Ezt az átalakítást 7 alkalommal hajtják végre, körönként egyszer és az utolsó kör után még egyszer.

Transzformáció γ

A γ transzformáció megszorozza a modulo 2 számot 32 −1. Ez a szorzási művelet az egyetlen nemlineáris művelet ebben a titkosításban. Minden körben minden 32 bites szót megszorozunk egy rögzített konstanssal úgy, hogy y i szorzásának eredménye :

x i , ha x i = 2 32 - 1 x i ⊗ G i , ha x i ≠ 2 32 - 1

G 1 = 2⊗G 0 , G 2 = 8⊗G 0 , G 3 = 128⊗G 0 . Így a γ művelet eredménye az (y 0 , y 1 , y 2 , y 3 ) = γ(x 0 , x 1 , x 2 , x 3 ) vektor.

A γ inverz művelete a rejtjelezett szöveg modulo szorzása G i −1 -gyel a következőképpen: x i =

y i ha y i = 2 32 - 1 y i ⊗ G i −1 , ha y i ≠ 2 32 - 1

Minden γ bemeneti szóra a 0 → 0 triviális leképezést 1 valószínűséggel hajtjuk végre. További érdekes tulajdonság, hogy az FFFFFFFFx → FFFFFFFFx leképezést γ-ig szintén 1 valószínűséggel hajtjuk végre.

η transzformáció

Az η transzformáció a blokk bal és jobb szélső szójától függ. Ha egy szóban a bal szélső karakter 1, akkor az XOR végrehajtása a szó és az előre meghatározott δ állandó között történik. Így: η(x 0 , x 1 , x 2 , x 3 ) = (x 0 ⊕(lsb(x 0 ) • δ), x 1 , x 2 , x 3 ⊕ (lsb(x 3 ) • δ) )

θ transzformáció

A θ transzformáció a szavak keverését hajtja végre. A keverés úgy történik, hogy az egyik szóban bekövetkezett bármilyen változás hatással legyen a kimenetben lévő többi szóra is. Így: θ(x 0 , x 1 , x 2 , x 3 ) = (x 0 ⊕ x 1 ⊕ x 3 , x 0 ⊕ x 1 ⊕ x 2 , x 1 ⊕ x 2 ⊕ x 3 , x 0 ⊕ x 2 ⊕ x 3 ).

Ennek eredményeként a blokk következő transzformációját hajtjuk végre a j körön: ρ[k j ](X) =θ(η(γ(σ[k j ](X)))) és az MMB teljes leírása belefér a következő sor: σ[k 6 ] (ρ[k 5 ](ρ[k 4 ](ρ[k 3 ](ρ[k 2 ](ρ[k 1 ](ρ[k 0 ](P))) ))))

Kulcsütemezés

Az MMB eredeti verziója egy egyszerű kulcsütemezési algoritmust használt, amely a kulcsszót egy pozícióval balra mozgatta (pl. (k0, k1, k2, k3) a 0. körben és (k1, k2, k3, k0) az első körben) . Ez a kulcsfontosságú ütemezés ciklikus, és 4 körönként ismétlődik. A szimmetrikus tulajdonságok észlelésének elkerülése érdekében az MMB legújabb verziójában az eltoláson kívül minden kulcsszó hozzáadódik egy konstanshoz, amelynek értéke a fordulótól függ. Így a j körhöz tartozó i kulcsszó: k j i = k i+j mod 4 ⊕ (2^j• B), ahol B egy állandó.

Támadások MMB ellen

Differenciális kriptoanalízis

Az MMB készítői azt állították, hogy ez a rejtjel ellenáll a differenciális kriptográfiai elemzésnek, de számos példa van arra, hogy ezzel a kriptográfiai módszerrel sikeresen feltörték az MMB-t. Az MMB fő körfüggvény a Z 2 n −1 csoport szorzófüggvénye . Így a titkosítás elleni sikeres támadás érdekében a kriptoanalizátornak minimálisra kell csökkentenie az aktívan használt szorzások számát, hogy javítsa a különbségi jellemzők minőségét. A támadás eredményeként 2118 rejtjelezett szöveg, 295,91 MMB titkosítási művelet és 264 64 bites blokk szükséges a rejtjel feltöréséhez.

A differenciális kriptográfiai elemzésen alapuló támadások egyikét linkelt kulcsú támadásnak nevezik . Tomer Ashour és Orr Dunkelman izraeli kriptoanalitikusok kimutatták, hogy linkelt kulcsú támadást használva 2 19 rejtjelezett szöveg alapján a kulcs 128 bitjéből 32 megtalálható 2 19,22 műveletben. Egy másik egyszerű támadás (1R támadás) használatával a kulcs további 32 bitje található. A fennmaradó biteket egyszerű felsorolással találjuk meg. Ennek eredményeként ez a támadás 2 db 35.2 -es műveletet, 220 titkosított szöveget és 2 db 20.3 -as szövegblokkot igényel a memóriában.

Integrált kriptoanalízis

Elvégeztük a négyfordulós MMB integrált kriptoanalízisét. A sikeres támadáshoz 234 titkosított szöveg, 2126,32 MMB titkosítási művelet és 264 szövegblokk szükséges a memóriában.

Lineáris kriptoanalízis

Ismert egyszerű szöveges támadás A három körös közelítéssel sikeresen meg lehet támadni az MMB-t (128 bites kulcsot szerezni) 2114,56 nyílt szöveggel és 2126 háromfordulós titkosítási művelettel.

Rejtjeles támadás Ha a nyílt szöveg ASCII formátumú, akkor csak a legjelentősebb bitekre van szükség a titkosított szöveges támadáshoz. A lineáris arány ebben az esetben 2 -45,30 lesz , és egy kétkörös MMB elleni sikeres támadáshoz 293,60 titkosított szövegre van szükség.

Így számos differenciális kriptográfiai elemzésen alapuló támadás sikeresebb, mint a lineáris kriptográfiai elemzésen vagy az integrált kriptográfiai elemzésen alapuló támadás, annak ellenére, hogy az alkotók eredeti szándéka a differenciális kriptográfiai elemzésnek ellenálló rejtjel kifejlesztése volt.

Irodalom

Linkek