Szyfr Hilla online – koder/dekoder
Kalkulator szyfru Hilla online: szyfruj i odszyfruj pary liter macierzą 2 × 2 modulo 26. Zobacz przykład i macierz odwrotną.
Co algebra liniowa robi w kryptografii?
Co to jest szyfr Hilla?
Szyfr Hilla przekształca całe grupy liter naraz za pomocą mnożenia macierzowego. W wersji z narzędzia litery idą parami: każda para staje się wektorem dwóch liczb, który mnożymy przez macierz klucza 2 × 2 i redukujemy modulo 26.
Jak liczy się parę liter?
Litery zamieniamy na liczby od 0 do 25, a następnie liczymy dwie sumy: pierwszą literę wyniku daje a×x + b×y, drugą c×x + d×y, gdzie a, b, c, d to kolejne liczby macierzy. Obie sumy bierzemy modulo 26 i zamieniamy z powrotem na litery. Nieparzysty tekst narzędzie uzupełnia literą X.
Przykład dla macierzy [3,3;2,5]
Wiadomość „REBUS” z domyślną macierzą daje „LC LY TV”. Nieparzysta liczba liter zostaje uzupełniona iksem, więc szyfrowana jest para SX, a wynik pojawia się w parach. Odszyfrowanie zwraca „RE BU SX” — dopełniające X trzeba na końcu odrzucić samodzielnie.
Wartości liczbowe liter
Górny wiersz to litera, a dolny jej wartość używana w obliczeniach. A odpowiada zeru, więc po pomnożeniu i redukcji modulo 26 wynik wraca do alfabetu tą samą tabelą.
| Litera | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Wartość | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
Jak odszyfrować tekst?
Odszyfrowanie mnoży pary liter przez macierz odwrotną modulo 26. Dla macierzy [3,3;2,5] odwrotnością jest [15,17;20,9] — narzędzie wylicza ją samo po wybraniu trybu odszyfrowywania. Wystarczy podać tę samą macierz co przy szyfrowaniu.
Dlaczego nie każda macierz jest kluczem?
Macierz musi być odwracalna modulo 26, czyli jej wyznacznik nie może mieć wspólnego dzielnika z 26. Wyznacznik macierzy [3,3;2,5] wynosi 9, a największy wspólny dzielnik 9 i 26 to 1 — klucz jest poprawny. Gdy wyznacznik dzieli się przez 2 lub 13, odszyfrowanie staje się niemożliwe i narzędzie nie zwróci wyniku.
Jak złamać szyfr Hilla?
Szyfr jest liniowy, więc znajomość kilku par tekst jawny–szyfrogram pozwala ułożyć układ równań i wyliczyć macierz. Przy bloku dwuliterowym mogą wystarczyć dwie znane pary, o ile odpowiadające im wektory tekstu jawnego tworzą macierz odwracalną modulo 26; w przeciwnym razie potrzeba kolejnych par. Przy braku takiego materiału pomaga analiza częstości dwuznaków. Sama liniowość jest tu największą słabością.
Co Hill ukrywa lepiej niż proste podstawienie?
Ponieważ o wyniku decyduje cała para, ta sama litera na różnych pozycjach daje różne litery szyfrogramu, a częstości pojedynczych liter przestają zdradzać tekst. Zamiast nich widoczne stają się częstości par, dlatego szyfr broni się lepiej niż Cezar, lecz wciąż nie nadaje się do ochrony poufnych danych.
Zobacz też: Szyfr Cezara · Szyfr Vigenère’a
Historia szyfru Hilla
Lester S. Hill opublikował swoją metodę w 1929 roku na łamach „The American Mathematical Monthly”. Był to jeden z pierwszych szyfrów poligraficznych zbudowanych świadomie na algebrze liniowej i pokazał, że kryptografia może korzystać z regularnych narzędzi matematyki. Hill skonstruował nawet mechaniczne urządzenie do wykonywania tych przekształceń.