Szyfr Hilla
Szyfr Hilla – szyfr należący do grupy polialfabetycznych szyfrów podstawieniowych bazujący na algebrze liniowej.
Operacje
Każdą literę koduje się jako numer. Najczęstszy schemat korzysta z układu: A = 0, B =1, ..., Z=25, jednak nie jest to niezmienna zasada tego szyfru. Blok n jest przedstawiany w postaci wektora o n wymiarach. Następnie jest mnożony przez macierz o wymiarach n × n, modulo 26 (wartość wynika z liczby elementów w układzie). Cała tablica traktowana jest jako klucz. Należy sprawdzić, czy macierz jest odwracalna w (by upewnić się, że deszyfrowanie będzie możliwe).
Szyfrowanie
Niech tekstem jawnym będzie 'ACT', a kluczem jest macierz (lub GYBNQKURP w postaci literowej):
ponieważ 'A' jest 0, 'C' jest 2 a 'T' jest 19, tekst jawny jest wektorem:
Wersja zaszyfrowana jest otrzymywana przez:
co można przedstawić w postaci liter 'POH'. Teraz przypuśćmy, że tekstem jawnym jest 'CAT' czyli:
Tym razem wersja zaszyfrowana przedstawia się jako:
co jest równoznaczne z tekstem 'FIN'. Każda litera została zmieniona. Kryptosystem zapewnia zatem dyfuzję
Deszyfrowanie
By odszyfrować wiadomość, zamieniamy zaszyfrowany tekst na wektor i następnie mnożymy przez odwróconą macierz stanowiącą klucz (istnieją metody wyliczania macierzy odwrotnej; zobacz wyznaczanie macierzy odwrotnej). Przy działaniu w macierz odwrotna z przykładu wynosi:
wykorzystując wiadomość zaszyfrowaną 'POH', otrzymamy:
co daje nam w formie liter 'ACT', czyli tekst jawny.
Zobacz też
- Szyfr Cezara
- Szyfr Vigenère’a
- Szyfr Playfair