Шифр Хилла онлайн – шифратор/дешифратор
Калькулятор шифра Хилла онлайн: шифруйте и расшифровывайте пары букв матрицей 2 × 2. Пример и обратная матрица по модулю 26.
Что линейная алгебра делает в криптографии?
Что такое шифр Хилла?
Шифр Хилла преобразует сразу целые группы букв с помощью умножения матриц. В версии инструмента буквы идут парами: каждая пара становится вектором из двух чисел, который умножают на ключевую матрицу 2 × 2 и приводят по модулю 26.
Как вычисляется пара букв?
Буквы превращают в числа от 0 до 25, затем считают две суммы: первую букву результата даёт a×x + b×y, вторую — c×x + d×y, где a, b, c, d — числа матрицы. Обе суммы берут по модулю 26 и переводят обратно в буквы. Текст нечётной длины инструмент дополняет буквой X.
Пример с матрицей [3,3;2,5]
Сообщение «REBUS» с матрицей по умолчанию даёт «LC LY TV». Нечётное число букв дополняется иксом, поэтому шифруется пара SX, а результат выводится парами. При расшифровке получается «RE BU SX» — дополняющий X приходится убрать вручную.
Числовые значения букв
Верхняя строка — буква, нижняя — значение, используемое в вычислениях. A соответствует нулю, поэтому после умножения и приведения по модулю 26 результат возвращается в алфавит по той же таблице.
| Буква | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Значение | 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 |
Как расшифровать текст?
Расшифровка умножает пары букв на обратную матрицу по модулю 26. Для матрицы [3,3;2,5] обратной является [15,17;20,9] — инструмент вычисляет её сам при переключении в режим расшифровки. Достаточно указать ту же матрицу, что и при шифровании.
Почему не всякая матрица годится в ключи?
Матрица должна быть обратимой по модулю 26, то есть её определитель не может иметь общего делителя с 26. Определитель матрицы [3,3;2,5] равен 9, а наибольший общий делитель 9 и 26 — единица, поэтому ключ подходит. Если определитель делится на 2 или 13, расшифровка невозможна и инструмент не выдаст результата.
Как взломать шифр Хилла?
Шифр линеен, поэтому известные пары «открытый текст — шифротекст» позволяют составить систему уравнений и вычислить матрицу. Для блоков из двух букв двух пар может быть достаточно, если их векторы открытого текста образуют обратимую по модулю 26 матрицу; иначе потребуются дополнительные пары. Без такого материала помогает частотный анализ биграмм. Именно линейность и есть главная слабость метода.
Что Хилл скрывает лучше простой подстановки?
Поскольку результат зависит от всей пары, одна и та же буква в разных позициях даёт разные буквы шифротекста, и частоты отдельных букв перестают выдавать текст. Вместо них проявляются частоты пар, так что шифр держится лучше цезаревского, но всё равно не годится для защиты конфиденциальных данных.
Смотрите также: Шифр Цезаря · Шифр Виженера
История шифра Хилла
Лестер С. Хилл опубликовал свой метод в 1929 году в журнале «The American Mathematical Monthly». Это был один из первых полиграфических шифров, сознательно построенных на линейной алгебре, и он показал, что криптография может опираться на обычные математические инструменты. Хилл даже сконструировал механическое устройство для таких преобразований.