You are on page 1of 17

Algorytm AES

Podstawy matematyczne -
przypomnienie
 Informacje zapisywane w ciele CG(2^8) liczby N od 0 do 255
 Operacja XOR (Alternatywa wykluczająca)
 Mnożenie w CG(2^8)
Ogólny zarys
Przygotowanie zmiennych
-Zamiana tekstu jawnego i klucza
na system szesnastkowy
-Ułożenie tekstu i klucza w macierz
-np. CBEsuperkierunek
-surowy klucz (klucz 0)
Tworzenie klucza
 RotWord(rotation)-zmiana kolejności znaków w kluczu (brana jest ostatnia
kolumna)
Tworzenie klucza
 SubBytes(wymiana bajtów) Dla 19 zamiana na D4
 Traktujemy liczbę jako współrzędne, to co wskażą współrzędne wymieniamy
 Dla 19 zamiana na D4
Tworzenie klucza
 RCON(round constant) – stała dodawana do każdego klucza
 W zależności od numeru klucza, wykorzystujemy inną wartość
Tworzenie
klucza
• Za każdym razem tworzymy
klucz w ten sam sposób
• kluczy tworzymy 10
Przygotowanie tekstu jawnego
Rundy szyfrowania

 Runda Początkowa
 Runda Główna
 Runda Końcowa
 Dla klucza 128bit – 10 rund (bez rundy początkowej)
Początkowa
Runda
Główna runda
Końcowa
runda
Operacja
ShiftRows
• Pierwszy rząd nie przesuwa się
• Drugi o jedno w lewo
• Itd…
Operacja MixColumns

• Mnożymy osobno każdą kolumnę


przez wcześniej zdefiniowaną
macierz

You might also like