Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

AES Advanced Encryption System. 1997-ben az NIST (National Institute of standards) pályázatot írt ki az AES- re Határidő: 1998. június 15. 15 pályázat.

Hasonló előadás


Az előadások a következő témára: "AES Advanced Encryption System. 1997-ben az NIST (National Institute of standards) pályázatot írt ki az AES- re Határidő: 1998. június 15. 15 pályázat."— Előadás másolata:

1 AES Advanced Encryption System

2 1997-ben az NIST (National Institute of standards) pályázatot írt ki az AES- re Határidő: június pályázat érkezett Az első kört 5 javaslat élte túl: MARS, RC6, Rijndael, Serpent, Twofish október 2.: A 128 bites Rijndael lesz az AES.

3 Az AES a kiírás szerint egy nyilvánosan közzétett díjmentes világszerte terjesztett a következő évszázadban a kormányzati dokumentumok védelmére alkalmas titkosító algoritmus kell legyen

4 Minimális kritériumok: Szimmetrikus kriptorendszert valósítson meg Blokkódoló legyen Kezelje a , és a bites blokkhossz-kulcshossz kombinációt

5 További elvárások: Legyen legalább olyan biztonságos mint a TDES Legyen sokkal gyorsabb mint a TDES A tervezőnek le kell mondania a szerzői jogokról

6 Matematikai előismeretek A Rijndael erősen kihasználja a test tulajdonságait A test elemeit 7-ed fokú {0,1} együtthatós polinomokként ábrázoljuk, az összeadás a polinomok összeadásának felel meg, míg a szorzás a polinomok szorzásának modulo egy irreducibilis polinom. A kiválasztott polinom az

7 Összeadás:

8 Szorzás

9 Inverz számítása Mivel Ezért azaz

10 feletti polinomok Négy byte tekinthető mint feletti harmadfokú polinom. Az és polinomok szorzata ahol

11 Sajnos ez már nem ábrázolható 4 byte-on ezért az eredményt vesszük modulo Így a szorzásunk eredménye a alakban adható meg, ahol mivel

12 Ez írható mátrixos alakban Mivel az polinom reducibilis felett, ezért egy rögzített polinommal való szorzás modulo nem feltétlenül invertálható művelet, de a Rijndael-ben olyan polinomot választottak, melynek van inverze.

13 Szorzás x-szel A polinom alakú lesz, amit modulo véve adódik, azaz

14 A Rijndael leírása Tervezők: Joan Daemen Vincent Rijmen A tervezés során figyelembe vett fő szempontok: Ellenállás az ismert támadásokkal szemben Gyorsaság és tömör kódolhatóság a platformok minél szélesebb körén Egyszerű kivitel

15 A Rijndael blokkhossza: 128, 192, 256 bit A Rijndael kulcshossza: 128, 192, 256 bit Mindegyik blokkhossz mindegyik kulcshosszal használható A Rijdael nem Feistel struktúrájú blokktitkosító, mivel azokban az egyes menetek során a bitek legnagyobbrészt csak összekeverednek, de nem változnak meg a bitek.

16 A Rijndael menet-transzformációja ezzel szemben három invertálható rétegből áll –lineáris keverő réteg (ez teríti szét az információt a blokk teljes hosszában) –nem-lineáris réteg (egy S-boksz, azaz a lineáristól minél távolabb álló transzformáció) –kulcshozzáadó réteg (a menetkulcsot egyszerű XOR-ozása az aktuális állapothoz)

17 Részletes leírás Az állapot (state) a titkosítás köztes eredménye Legyen Nb a blokkhossz 32-ed része Legyen Nk a kulcshossz 32-ed része Ekkor az állapotot ábrázolhatjuk egy 4 sorból és Nb oszlopból álló táblázatként, ahol a táblázat minden eleme egy byte

18 Az állapot Nb=6 esetén és a kulcs Nk=4 esetén

19 A kezdeti állapot feltöltése a nyílt szöveggel Az inputot 8 bites byte-ok alkotják, melyek 0- tól (4*Nb-1)-ig vannak sorszámozva Ha ebben a számozásban a byte sorszáma n akkor a táblázatbeli kétdimenziós (i,j) indexe:

20 A menetek száma a blokk- és kulcshossz függvényében

21 A menet-transzformáció Az utolsó menet kicsit különbözik a többitől

22 A ByteSub transzformáció A ByteSub transzformáció egy S-box, ami az állapot egy-egy byte-ján külön-külön hat. Ez egy invertálható transzformáció, mely két részből áll: 1.Először vesszük az inverzet -ban 2.Aztán alkalmazzuk az alábbi affin transzformációt:

23

24 Az S-box kimenete minden byte esetén előre kiszámítható, és táblázatba foglalható A ByteSub inverze is egy ByteSub és ugyanannyi időbe telik elvégezni. A ByteSub és a ShiftRow sorrendje felcserélhető

25 A ShiftRow transzformáció A ShiftRow transzformáció az állapot sorait ciklikusan eltolja. Az i-edik sort C i -vel eltoljuk, ahol C i függ a blokkhossztól. C i = 0.

26 Az alábbi ábra mutatja a ShiftRow hatását az állapot sorain A ShiftRow inverze az (Nb- C i )-vel való ciklikus bal-eltolás.

27 A MixColumn transzformáció A MixColumn során az állapot oszlopait feletti polinomoknak tekintjük és modulo a polinommal szorozzuk, azaz a művelet alakba írható.

28 Az alábbi ábra mutatja a MixColumn hatását az állapot sorain A MixColumn inverze polinomszorzás, egy d(x) polinommal, melyre Ez a d(x) az alábbi polinom:

29 Az AddRoundKey transzformáció Ebben a részben adjuk hozzá a menetkulcsot az állapothoz

30

31

32 Menetkulcs-generálás A szükséges menetkulcsok bitjeinek száma 32*Nb*(Nr+1) Először a titkosító kulcsból egy kiterjesztett kulcsot generálunk, amely Nb*(Nr+1) darab 4 byte-os szóból áll. Jel: W[i] az i-edik szó. Ebből választjuk ki a menetkulcsokat, úgy, hogy az első menetkulcs a kiterjesztett kulcs első Nb darab 4 byte-os szava, a második menetkulcs a második Nb darab, stb.

33 Kulcskiterjesztés A kulcskiterjesztés során a az 32*Nk bit hosszúságú titkosítókulcsból egy 32*Nb*(Nr+1) hosszúságú kiterjesztett kulcsot hozunk létre A kiterjesztett kulcs első Nk szava a titkosítókulcs bitjeit tartalmazza A többit az alábbi módon, rekurzívan definiáljuk

34 Nk ≤ 6 esetén: SubByte() a szó minden byte-jára az S-Boxot alkalmazza A RotByte() a négy szón egy szóval való ciklikus baleltolást hajt végre Rcon(i/Nk) egy menetkonstans, amely Nk-tól függetlenül van definiálva:

35 Nk > 6 esetén:

36 Menetkulcskiválasztás Az i-edik menetkucs a kiterjesztett kulcs W[Nb*i] és W[Nb*(i+1)] közötti része lesz Például Nb=6 és Nk=4 esetén:

37 A titkosító algoritmus Először alkalmazunk egy kulcshozzáadást Majd jön Nr-1 menet Végül egy utolsó menet (amelyik kicsit különbözik a többitől)

38 A Rijndael inverze Ha az összes transzformáció inverzét elvégezzük fordított sorrendben, akkor visszakapjuk az eredeti szöveget. Az inverztranszformáció a Rijndael-lel azonos struktúrájúra hozható, de ezzel nem foglalkozunk.


Letölteni ppt "AES Advanced Encryption System. 1997-ben az NIST (National Institute of standards) pályázatot írt ki az AES- re Határidő: 1998. június 15. 15 pályázat."

Hasonló előadás


Google Hirdetések