ИССЛЕДОВАНИЕ ШИФРА ХИЛЛА И ЕГО ПРИМЕНЕНИЕ ДЛЯ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ В СРЕДЕ MAPLE
Уфимский университет науки и технологий», Нефтекамский филиал
студент 3 курса экономико-математического факультета
Аннотация
В статье рассматривается шифр Хилла — криптографический алгоритм, основанный на использовании линейной алгебры и модульной арифметики. Выполняется моделирование процессов шифрования и расшифрования текстовой информации в программной среде Maple. Рассматриваются методы преобразования текста в числовые векторы, применение матриц-ключей и вычисление обратных матриц. Особое внимание уделяется проверке обратимости матрицы и особенностям матричного шифрования. Актуальность работы обусловлена необходимостью изучения математических методов защиты информации и принципов работы криптографических алгоритмов. Новизна работы заключается в практической реализации шифра Хилла средствами Maple и анализе работы полиграммного шифрования.
Ключевые слова: Maple, защита информации, информационная безопасность, криптография, линейная алгебра, матрица, модульная арифметика, расшифрование, шифр Хилла, шифрование текста
Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ
Библиографическая ссылка на статью:
Яппаров Д.Р. Исследование шифра Хилла и его применение для защиты текстовой информации в среде Maple // Современные научные исследования и инновации. 2026. № 7 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2026/07/104956 (дата обращения: 11.07.2026).
Научный руководитель: Вильданов Алмаз Нафкатович
кандидат физико-математических наук, доцент
Федеральное государственное бюджетное образовательное учреждение высшего образования «Уфимский университет науки и технологий», Нефтекамский филиал
В настоящее время информационные технологии используются практически во всех сферах деятельности человека. Электронные документы, базы данных, банковские системы, облачные сервисы и интернет-коммуникации требуют надежной защиты информации от несанкционированного доступа и изменения. В связи с этим вопросы информационной безопасности становятся особенно актуальными.
Одним из основных методов защиты информации является криптография. Криптография представляет собой область науки, изучающую способы сокрытия информации и методы обеспечения конфиденциальности данных. Основной задачей криптографии является предотвращение возможности чтения или изменения информации посторонними лицами. Современные криптографические системы используются в банковских приложениях, электронных подписях, системах аутентификации, цифровых сертификатах и защищённых сетевых соединениях [3].
Несмотря на существование современных криптографических алгоритмов, большое значение имеет изучение классических методов шифрования. Классические алгоритмы позволяют лучше понять принципы работы современных систем защиты информации и математические основы криптографии. Одним из наиболее известных классических алгоритмов является шифр Хилла [1].
Шифр Хилла был разработан американским математиком Лестером Хиллом в 1929 году. В отличие от простых шифров замены, где каждому символу соответствует другой символ, шифр Хилла выполняет преобразование сразу нескольких символов текста одновременно. Благодаря этому алгоритм относится к полиграммным шифрам подстановки.
Основу шифра Хилла составляют методы линейной алгебры. Для выполнения шифрования используются матрицы и числовые векторы. Исходное сообщение разбивается на группы символов одинаковой длины, после чего каждый блок преобразуется в числовой вектор и умножается на специальную матрицу-ключ. Полученные значения вычисляются по модулю размера алфавита и затем переводятся обратно в текстовый вид.
Особенность данного алгоритма заключается в том, что изменение одного символа влияет сразу на несколько символов зашифрованного текста. Это делает шифр более сложным по сравнению с обычными моноалфавитными шифрами и повышает устойчивость к простым методам криптоанализа.
Для моделирования работы алгоритма использовалась программная среда Maple. Данная система предназначена для выполнения математических вычислений и обладает широкими возможностями работы с линейной алгеброй, матрицами и символьными выражениями [2].
Использование Maple позволяет автоматизировать выполнение математических операций и упростить исследование криптографических алгоритмов. Благодаря встроенным функциям вычисления определителей, обратных матриц и модульных операций процесс реализации шифра становится более наглядным и удобным.
Для работы с матрицами подключается библиотека линейной алгебры:
with(LinearAlgebra):
Данная библиотека содержит функции для выполнения операций над матрицами и векторами. С её помощью можно выполнять умножение матриц, вычислять определители и находить обратные матрицы.
Одним из важнейших элементов алгоритма является матрица-ключ:
K := Matrix([
[N,11,2],
[4,23,7],
[24,8,s]
]);
Матрица-ключ используется для преобразования исходного текста в зашифрованный вид. Размер матрицы определяет количество символов, обрабатываемых одновременно. В рассматриваемом случае используется матрица размером 3×3, поэтому текст разбивается на блоки по три символа.
Для корректной работы алгоритма матрица должна быть обратимой. Это означает, что её определитель не должен быть равен нулю и должен быть взаимно простым с модулем шифрования. Если данное условие не выполняется, расшифрование текста становится невозможным.
При использовании русского алфавита все вычисления выполняются по модулю 33, поскольку русский алфавит содержит 33 буквы [4]. Использование модульной арифметики позволяет ограничить диапазон получаемых значений и обеспечить корректное преобразование чисел в символы.
Перед шифрованием текст разбивается на блоки одинаковой длины:
text := “БЕЛЫЙСЛОН”;
blocks := [seq(text[i..i+2], i=1..length(text), 3)];
Каждый блок текста затем преобразуется в числовой вектор. Компьютер не способен выполнять математические операции непосредственно над буквами, поэтому каждому символу алфавита ставится в соответствие определённое число.
После преобразования текста выполняется операция шифрования:
for b in blocks do
M := Matrix(map(ch -> LetterToNumber(ch), b));
C := K . M mod 33;
print(NumberToLetter(C));
end do;
В приведённом коде функция LetterToNumber преобразует символы в числа. Затем формируется вектор, который умножается на матрицу-ключ. После выполнения умножения вычисляется остаток по модулю 33.
Результатом работы программы является зашифрованный текст, который невозможно прочитать без знания ключевой матрицы.
Для восстановления исходного сообщения используется обратная матрица:
MI := MatrixInverse(K);
Функция MatrixInverse вычисляет обратную матрицу, необходимую для выполнения расшифрования. Если матрица не является обратимой, восстановление текста становится невозможным.
Процесс расшифрования выполняется аналогично шифрованию, однако вместо исходной матрицы используется обратная матрица. Полученные значения переводятся обратно в символы алфавита, после чего восстанавливается исходный текст.
После завершения расшифрования выполняется проверка корректности восстановления сообщения:
if Equal(MI, N1) and Equal(MI2, N2) and Equal(MI3, N3) then
print(“Все три блока расшифрованы успешно”);
else
print(“Ошибка: хотя бы один блок расшифрован неверно”);
end if;
Данный фрагмент программы сравнивает исходные и расшифрованные данные. Если значения совпадают, программа сообщает об успешном выполнении расшифрования.
Одним из преимуществ шифра Хилла является использование математических методов линейной алгебры. Благодаря применению матриц шифрование становится более сложным по сравнению с обычными шифрами замены. Кроме того, изменение одного символа текста приводит к изменению всего блока зашифрованного сообщения.
Также достоинством алгоритма является возможность обработки нескольких символов одновременно. Это повышает эффективность шифрования и делает структуру зашифрованного текста менее предсказуемой.
Однако шифр Хилла обладает и рядом недостатков. Основной проблемой является сравнительно низкая криптографическая стойкость. При наличии достаточного количества пар открытого и зашифрованного текста злоумышленник может восстановить матрицу-ключ с помощью методов линейной алгебры. Именно поэтому данный алгоритм практически не используется в современных системах защиты информации [3].
Тем не менее шифр Хилла имеет большое образовательное значение. Изучение данного алгоритма позволяет лучше понять принципы работы криптографических систем, особенности модульной арифметики и применение линейной алгебры в информационной безопасности.
Кроме того, практическая реализация алгоритма в среде Maple способствует развитию навыков программирования и математического моделирования. Работа с криптографическими алгоритмами позволяет изучить методы обработки текстовой информации и особенности выполнения математических вычислений.
С точки зрения информационной безопасности шифр Хилла демонстрирует базовые методы защиты информации. Алгоритм показывает, каким образом математические операции могут использоваться для сокрытия данных и обеспечения конфиденциальности сообщений.
Изучение классических криптографических алгоритмов играет важную роль в подготовке специалистов по информационной безопасности. Понимание принципов работы простых алгоритмов позволяет легче изучать современные криптографические системы и методы защиты данных.
Также использование Maple позволяет исследовать различные варианты матриц-ключей и анализировать влияние параметров алгоритма на результат шифрования. Благодаря этому появляется возможность проводить математические эксперименты и изучать особенности работы криптографических методов.
Таким образом, исследование шифра Хилла позволяет изучить основы криптографии, линейной алгебры и модульной арифметики. Реализация алгоритма в среде Maple демонстрирует особенности матричного шифрования и методы обработки текстовой информации.
Практическое применение математических методов способствует более глубокому пониманию современных технологий защиты информации и принципов функционирования криптографических систем. Несмотря на то, что шифр Хилла не используется в современных системах защиты данных, его изучение имеет большое значение для понимания математических основ криптографии и методов шифрования информации.
Библиографический список
- Hill cipher [Электронный ресурс] / Wikipedia. – Электрон. текстовые дан. – Режим доступа: https://en.wikipedia.org/wiki/Hill_cipher, свободный. – Загл. с экрана.
- Maple Documentation [Электронный ресурс] / Maplesoft. – Электрон. текстовые дан. – Режим доступа: https://www.maplesoft.com/documentation/, свободный. – Загл. с экрана.
- Шнайер Б. Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке Си: учебное пособие. – М.: Триумф, 2012. – 816 с. – ISBN 978-5-89392-055-5.
- Панасенко С.П. Криптографические методы защиты информации: учебное пособие. – СПб.: БХВ-Петербург, 2009. – 448 с. – ISBN 978-5-9775-0318-1.
Все статьи автора «Яппаров Дильнар Рафисович»
© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте.