Professional Documents
Culture Documents
Algorytm AES
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